MetorialDocs

Integration Providers

Integration providers define the shared provider-level contract for a given integration.

The Integration Provider object

integration_provider.json
{
  "object": "integration.provider",
  "id": "example_id",
  "status": "active",
  "integration_id": "example_integration_id",
  "name": "example_name",
  "description": "example_description",
  "metadata": {},
  "tool_filter": {
    "type": "allow_all",
    "ignore_parent_filters": false
  },
  "provider_id": "example_provider_id",
  "deployment_id": "example_deployment_id",
  "auth_method_id": "example_auth_method_id",
  "auth_credentials_id": "example_auth_credentials_id",
  "config": {
    "object": "provider.config#preview",
    "id": "pcf_7dEfGhJkLmNpQrSt",
    "is_default": false,
    "name": "Production Config",
    "description": "Configuration for production environment",
    "metadata": {},
    "provider_id": "pro_5gHjKlMnPqRsTuVw",
    "created_at": "2025-09-15T10:30:00.000Z",
    "updated_at": "2026-01-10T14:45:00.000Z"
  },
  "callbacks": {
    "object": "integration.provider.callbacks",
    "status": "enabled",
    "callback_id": "cbk_4dEfGhJkLmNpQrSt"
  },
  "created_at": "2026-10-17T09:50:02.622Z",
  "updated_at": "2026-10-17T09:50:02.622Z",
  "archived_at": "2026-10-17T09:50:02.622Z"
}
object"integration.provider"required
idstringrequired
status"active" | "archived" | "deleted"required
integration_idstringrequired
namestringrequired
descriptionstringrequirednullable
metadataRecord<string, any>requirednullable
provider_idstringrequired
deployment_idstringrequired
auth_method_idstringrequirednullable
auth_credentials_idstringrequirednullable
created_atdaterequired
updated_atdaterequired
archived_atdaterequirednullable

Endpoints

List integration providers

GET/integration-providers

Returns a paginated list of integration providers.

Query parameters

searchstringoptional
status"active" | "archived" | "deleted" or "active" | "archived" | "deleted"[]optional
idstring or string[]optional
integration_idstring or string[]optional
provider_idstring or string[]optional
provider_deployment_idstring or string[]optional
provider_auth_method_idstring or string[]optional
provider_auth_credentials_idstring or string[]optional
provider_config_idstring or string[]optional

Example request

curl -X GET "https://api.metorial.com/integration-providers" \
  -H "Authorization: Bearer metorial_sk_io2h4..."

Get integration provider

GET/integration-providers/:integration_provider_id

Retrieves a specific integration provider.

Path parameters

integration_provider_idstringrequired

The unique identifier for the integration_provider

Example request

curl -X GET "https://api.metorial.com/integration-providers/int_Rm4Mnheq2bfEPhBhP7SY" \
  -H "Authorization: Bearer metorial_sk_io2h4..."

Create integration provider

POST/integration-providers

Creates a new integration provider.

Request body

integration_idstringrequired
provider_idstringrequired
provider_deployment_idstringrequired
provider_auth_method_idstringoptionalnullable
provider_auth_credentials_idstringoptionalnullable
provider_config_idstringoptionalnullable
namestringoptional
descriptionstringoptional
metadataRecord<string, any>optional

Example request

curl -X POST "https://api.metorial.com/integration-providers" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer metorial_sk_io2h4..." \
  -d '{
  "integration_id": "example_integration_id",
  "provider_id": "example_provider_id",
  "provider_deployment_id": "example_provider_deployment_id",
  "provider_auth_method_id": "example_provider_auth_method_id",
  "provider_auth_credentials_id": "example_provider_auth_credentials_id",
  "provider_config_id": "example_provider_config_id",
  "name": "example_name",
  "description": "example_description",
  "metadata": {},
  "tool_filters": {
    "type": "tool_keys",
    "keys": [
      "example_keys"
    ]
  },
  "callbacks": {
    "status": "enabled"
  }
}'

Update integration provider

PATCH/integration-providers/:integration_provider_id

Updates a specific integration provider.

Path parameters

integration_provider_idstringrequired

The unique identifier for the integration_provider

Request body

provider_deployment_idstringoptional
provider_auth_method_idstringoptionalnullable
provider_auth_credentials_idstringoptionalnullable
provider_config_idstringoptionalnullable
namestringoptional
descriptionstringoptionalnullable
metadataRecord<string, any>optionalnullable

Example request

curl -X PATCH "https://api.metorial.com/integration-providers/int_Rm4Mnheq2bfEPhBhP7SY" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer metorial_sk_io2h4..." \
  -d '{
  "provider_deployment_id": "example_provider_deployment_id",
  "provider_auth_method_id": "example_provider_auth_method_id",
  "provider_auth_credentials_id": "example_provider_auth_credentials_id",
  "provider_config_id": "example_provider_config_id",
  "name": "example_name",
  "description": "example_description",
  "metadata": {},
  "tool_filters": {
    "type": "tool_keys",
    "keys": [
      "example_keys"
    ]
  },
  "callbacks": {
    "status": "enabled"
  }
}'

Delete integration provider

DELETE/integration-providers/:integration_provider_id

Archives a specific integration provider.

Path parameters

integration_provider_idstringrequired

The unique identifier for the integration_provider

Example request

curl -X DELETE "https://api.metorial.com/integration-providers/int_Rm4Mnheq2bfEPhBhP7SY" \
  -H "Authorization: Bearer metorial_sk_io2h4..."