Provider Specifications
A specification defines what a provider version can do: its tools, auth methods, and required configuration fields.
Provider Specifications object
Attributes
object
StringString representing the object's type
id
StringUnique specification identifier
name
StringDisplay name
description
StringNullableDescription
config_schema
ObjectNullableJSON Schema defining the configuration structure. Contains standard JSON Schema fields like type, properties, required, etc.
tools
ObjectAvailable tools
auth_methods
ObjectAuthentication methods
provider_id
StringProvider ID
created_at
DateTimestamp when created
updated_at
DateTimestamp when last updated
{"object": "provider.specification","id": "psp_9gHjKlMnPqRsTuVw","name": "GitHub","description": "GitHub API integration","config_schema": {"type": "object","properties": {"base_url": {"type": "string","description": "Base URL for the API"},"timeout": {"type": "number","description": "Request timeout in milliseconds"}},"required": ["base_url"]},"tools": [{"object": "provider.tool","id": "pto_5jKlMnPqRsTuVwXy","name": "create_issue","title": "Create Issue","description": "Creates a new issue in a GitHub repository","input_schema": {"type": "object","properties": {"repo": {"type": "string","description": "Repository name"},"title": {"type": "string","description": "Issue title"}},"required": ["repo","title"]},"output_schema": {"type": "object","properties": {"id": {"type": "number","description": "Issue ID"},"url": {"type": "string","description": "Issue URL"}}},"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"}],"auth_methods": [{"object": "provider.auth_method","id": "pam_2mNpQrStUvWxYzAb","type": "oauth","name": "OAuth 2.0","description": "Authenticate using OAuth 2.0","input_schema": {"type": "object","properties": {"client_id": {"type": "string","description": "OAuth client ID"},"client_secret": {"type": "string","description": "OAuth client secret"}},"required": ["client_id","client_secret"]},"scopes": [{"object": "provider.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.
URL Parameters
provider_id
StringThe unique identifier for the provider
Query Parameters
limit
NumberOptionalMaximum number of items to return (1-100)
after
StringOptionalReturn items after this ID
before
StringOptionalReturn items before this ID
cursor
StringOptionalPagination cursor from a previous response
order
EnumOptionalSort order for results
curl -X GET "https://api.metorial.com/providers/pro_Rm4Mnheq2bfEPhBhP7SY/specifications" \-H "Authorization: Bearer metorial_sk_..."
Get provider specification
Retrieves a specific provider specification by ID.
URL Parameters
provider_id
StringThe unique identifier for the provider
provider_specification_id
StringThe unique identifier for the provider_specification
curl -X GET "https://api.metorial.com/providers/pro_Rm4Mnheq2bfEPhBhP7SY/specifications/pro_Rm4Mnheq2bfEPhBhP7SY" \-H "Authorization: Bearer metorial_sk_..."