Provider Specifications

A specification defines what a provider version can do: its tools, auth methods, and required configuration fields.

Provider Specifications object

Attributes

object

String

String representing the object's type

id

String

Unique specification identifier

key

String

Unique specification key

name

String

Display name

description

StringNullable

Description

config_schema

Object

JSON Schema defining the configuration structure

config_visibility

Enum

Visibility level of the configuration

tools

Object

Available tools

auth_methods

Object

Authentication methods

provider_id

String

Provider ID

created_at

Date

Timestamp when created

updated_at

Date

Timestamp when last updated

{
"object": "provider.specification",
"id": "psp_9gHjKlMnPqRsTuVw",
"key": "github",
"name": "GitHub",
"description": "GitHub API integration",
"config_schema": {
"type": "object",
"properties": {
"base_url": {
"type": "string",
"description": "Base URL for the API"
}
},
"required": [
"base_url"
]
},
"config_visibility": "encrypted",
"tools": [
{
"object": "provider.tool",
"id": "pto_5jKlMnPqRsTuVwXy",
"key": "create_issue",
"name": "Create Issue",
"description": "Creates a new issue in a GitHub repository",
"capabilities": {},
"input_schema": {
"type": "json_schema",
"schema": {}
},
"output_schema": {
"type": "json_schema",
"schema": {}
},
"tags": {},
"specification_id": "psp_9gHjKlMnPqRsTuVw",
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}
],
"auth_methods": [
{
"object": "provider.capabilities.auth_method",
"id": "pam_2mNpQrStUvWxYzAb",
"type": "oauth",
"key": "oauth2",
"name": "OAuth 2.0",
"description": "Authenticate using OAuth 2.0",
"capabilities": {},
"input_schema": {
"type": "json_schema",
"schema": {}
},
"output_schema": {
"type": "json_schema",
"schema": {}
},
"scopes": [
{
"object": "provider.capabilities.auth_method.scope",
"id": "pams_8tUvWxYzAbCdEfGh",
"scope": "repo",
"name": "Repository Access",
"description": "Full control of private repositories"
}
],
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"provider_specification_id": "psp_9gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}
],
"provider_id": "pro_5gHjKlMnPqRsTuVw",
"created_at": "2025-09-15T10:30:00.000Z",
"updated_at": "2026-01-10T14:45:00.000Z"
}

List provider specifications

Returns a paginated list of provider specifications.

Query Parameters

limit

NumberOptional

Maximum number of items to return (1-100)

after

StringOptional

Return items after this ID

before

StringOptional

Return items before this ID

cursor

StringOptional

Pagination cursor from a previous response

order

EnumOptional

Sort order for results

id

UnionOptional

Filter by specification ID(s)

provider_id

UnionOptional

Filter by provider ID(s)

provider_version_id

UnionOptional

Filter by provider version ID(s)

provider_deployment_id

UnionOptional

Filter by provider deployment ID(s)

provider_config_id

UnionOptional

Filter by provider config ID(s)

GEThttp://api.metorial.com/provider-specifications
curl -X GET "https://api.metorial.com/provider-specifications" \
-H "Authorization: Bearer metorial_sk_..."

Get provider specification

Retrieves a specific provider specification by ID.

URL Parameters

provider_specification_id

String

The unique identifier for the provider_specification

GEThttp://api.metorial.com/provider-specifications/:provider_specification_id
curl -X GET "https://api.metorial.com/provider-specifications/pro_Rm4Mnheq2bfEPhBhP7SY" \
-H "Authorization: Bearer metorial_sk_..."