Katechon Technology Providers API
The Providers API from Katechon Technology — 8 operation(s) for providers.
The Providers API from Katechon Technology — 8 operation(s) for providers.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/katechon-technology:katechon-technology-providers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Katechon Arc Providers API
description: Agent-powered AI video studio
version: 1.0.0
tags:
- name: Providers
paths:
/api/v1/providers:
get:
tags:
- Providers
summary: List Providers
description: 返回所有供应商及其状态。
operationId: list_providers_api_v1_providers_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProvidersListResponse'
security:
- OAuth2PasswordBearer: []
/api/v1/providers/video-capabilities:
get:
tags:
- Providers
summary: Get Model Video Capabilities
description: '无项目上下文的视频模型能力:创建向导里项目尚不存在,按候选模型直接解析。
与 `/projects/{name}/video-capabilities` 同一条解析链路(`ConfigResolver.video_capabilities_for_model`),
只是没有项目可读:`default_duration` / `generation_mode` 等项目偏好为 None,时长联动约束按
传入的 `resolution` / `uses_reference_images` 求值(缺省不按分辨率收窄、不走参考图路径)。
裸 provider 的补全与格式校验同项目端点。'
operationId: get_model_video_capabilities_api_v1_providers_video_capabilities_get
security:
- OAuth2PasswordBearer: []
parameters:
- name: video_backend
in: query
required: true
schema:
type: string
title: Video Backend
- name: resolution
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Resolution
- name: uses_reference_images
in: query
required: false
schema:
type: boolean
default: false
title: Uses Reference Images
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/{provider_id}/config:
get:
tags:
- Providers
summary: Get Provider Config
description: 返回单个供应商的配置字段(registry 元数据与 DB 值合并)。
operationId: get_provider_config_api_v1_providers__provider_id__config_get
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProviderConfigResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
patch:
tags:
- Providers
summary: Patch Provider Config
description: 更新供应商配置。值为 null 表示删除该键。
operationId: patch_provider_config_api_v1_providers__provider_id__config_patch
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
requestBody:
required: true
content:
application/json:
schema:
type: object
additionalProperties:
anyOf:
- type: string
- type: 'null'
title: Body
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/{provider_id}/credentials:
get:
tags:
- Providers
summary: List Credentials
operationId: list_credentials_api_v1_providers__provider_id__credentials_get
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/server__routers__providers__CredentialListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- Providers
summary: Create Credential
operationId: create_credential_api_v1_providers__provider_id__credentials_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/server__routers__providers__CreateCredentialRequest'
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/server__routers__providers__CredentialResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/{provider_id}/credentials/{cred_id}:
patch:
tags:
- Providers
summary: Update Credential
operationId: update_credential_api_v1_providers__provider_id__credentials__cred_id__patch
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
- name: cred_id
in: path
required: true
schema:
type: integer
title: Cred Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/server__routers__providers__UpdateCredentialRequest'
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- Providers
summary: Delete Credential
operationId: delete_credential_api_v1_providers__provider_id__credentials__cred_id__delete
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
- name: cred_id
in: path
required: true
schema:
type: integer
title: Cred Id
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/{provider_id}/credentials/{cred_id}/activate:
post:
tags:
- Providers
summary: Activate Credential
operationId: activate_credential_api_v1_providers__provider_id__credentials__cred_id__activate_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
- name: cred_id
in: path
required: true
schema:
type: integer
title: Cred Id
responses:
'204':
description: Successful Response
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/gemini-vertex/credentials/upload:
post:
tags:
- Providers
summary: Upload Vertex Credential
description: 上传 Vertex AI 服务账号 JSON 凭证文件,同时创建凭证记录。
operationId: upload_vertex_credential_api_v1_providers_gemini_vertex_credentials_upload_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: name
in: query
required: false
schema:
type: string
default: Vertex Credentials
title: Name
requestBody:
required: true
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/Body_upload_vertex_credential_api_v1_providers_gemini_vertex_credentials_upload_post'
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/server__routers__providers__CredentialResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/providers/{provider_id}/test:
post:
tags:
- Providers
summary: Check Provider Connectivity
description: 调用供应商 API 验证连通性。可指定 credential_id 测试特定凭证。
operationId: check_provider_connectivity_api_v1_providers__provider_id__test_post
security:
- OAuth2PasswordBearer: []
parameters:
- name: provider_id
in: path
required: true
schema:
type: string
title: Provider Id
- name: credential_id
in: query
required: false
schema:
anyOf:
- type: integer
- type: 'null'
title: Credential Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ConnectivityCheckResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ModelInfoResponse:
properties:
display_name:
type: string
title: Display Name
media_type:
type: string
title: Media Type
capabilities:
items:
type: string
type: array
title: Capabilities
default:
type: boolean
title: Default
best_for:
anyOf:
- type: string
- type: 'null'
title: Best For
pricing_note:
anyOf:
- type: string
- type: 'null'
title: Pricing Note
pricing_source:
anyOf:
- type: string
- type: 'null'
title: Pricing Source
pricing_verified_at:
anyOf:
- type: string
- type: 'null'
title: Pricing Verified At
credit_estimates:
items:
$ref: '#/components/schemas/ModelCreditEstimate'
type: array
title: Credit Estimates
default: []
estimate_default_resolution:
anyOf:
- type: string
- type: 'null'
title: Estimate Default Resolution
supported_durations:
items:
type: integer
type: array
title: Supported Durations
default: []
resolutions:
items:
type: string
type: array
title: Resolutions
default: []
audio_track:
type: string
title: Audio Track
default: always_off
reference_route_audio_track:
type: string
title: Reference Route Audio Track
default: always_off
voice_consistency:
type: string
enum:
- native
- soft
- none
title: Voice Consistency
default: none
type: object
required:
- display_name
- media_type
- capabilities
- default
title: ModelInfoResponse
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
ProviderConfigResponse:
properties:
id:
type: string
title: Id
display_name:
type: string
title: Display Name
description:
type: string
title: Description
status:
type: string
title: Status
media_types:
items:
type: string
type: array
title: Media Types
fields:
items:
$ref: '#/components/schemas/FieldInfo'
type: array
title: Fields
supports_base_url:
type: boolean
title: Supports Base Url
secret_fields:
items:
$ref: '#/components/schemas/CredentialSecretField'
type: array
title: Secret Fields
secret_field_groups:
items:
items:
type: string
type: array
type: array
title: Secret Field Groups
type: object
required:
- id
- display_name
- description
- status
- media_types
- fields
- supports_base_url
- secret_fields
- secret_field_groups
title: ProviderConfigResponse
server__routers__providers__UpdateCredentialRequest:
properties:
name:
anyOf:
- type: string
- type: 'null'
title: Name
api_key:
anyOf:
- type: string
- type: 'null'
title: Api Key
base_url:
anyOf:
- type: string
- type: 'null'
title: Base Url
access_key:
anyOf:
- type: string
- type: 'null'
title: Access Key
secret_key:
anyOf:
- type: string
- type: 'null'
title: Secret Key
type: object
title: UpdateCredentialRequest
CredentialSecretField:
properties:
key:
type: string
title: Key
label:
type: string
title: Label
type: object
required:
- key
- label
title: CredentialSecretField
description: '凭证表单需渲染的 secret 输入字段(按 provider 的 required ∩ secret ∩ 凭证键派生)。
驱动设置页凭证表单渲染:单 secret provider 给 ``[api_key]``(见 ADR 0037),可灵给
``[api_key, access_key, secret_key]``(二选一分组见 ``secret_field_groups``)。
key 名全程同名,前端据此读写各字段。'
ProviderSummary:
properties:
id:
type: string
title: Id
display_name:
type: string
title: Display Name
description:
type: string
title: Description
status:
type: string
title: Status
media_types:
items:
type: string
type: array
title: Media Types
capabilities:
items:
type: string
type: array
title: Capabilities
configured_keys:
items:
type: string
type: array
title: Configured Keys
missing_keys:
items:
type: string
type: array
title: Missing Keys
models:
additionalProperties:
$ref: '#/components/schemas/ModelInfoResponse'
type: object
title: Models
type: object
required:
- id
- display_name
- description
- status
- media_types
- capabilities
- configured_keys
- missing_keys
- models
title: ProviderSummary
ConnectivityCheckResponse:
properties:
success:
type: boolean
title: Success
available_models:
items:
type: string
type: array
title: Available Models
message:
type: string
title: Message
type: object
required:
- success
- available_models
- message
title: ConnectivityCheckResponse
server__routers__providers__CredentialResponse:
properties:
id:
type: integer
title: Id
provider:
type: string
title: Provider
name:
type: string
title: Name
api_key_masked:
anyOf:
- type: string
- type: 'null'
title: Api Key Masked
credentials_filename:
anyOf:
- type: string
- type: 'null'
title: Credentials Filename
base_url:
anyOf:
- type: string
- type: 'null'
title: Base Url
access_key_masked:
anyOf:
- type: string
- type: 'null'
title: Access Key Masked
secret_key_masked:
anyOf:
- type: string
- type: 'null'
title: Secret Key Masked
is_active:
type: boolean
title: Is Active
created_at:
type: string
title: Created At
type: object
required:
- id
- provider
- name
- is_active
- created_at
title: CredentialResponse
ModelCreditEstimate:
properties:
resolution:
type: string
title: Resolution
duration_seconds:
type: integer
title: Duration Seconds
generate_audio:
type: boolean
title: Generate Audio
credits:
type: integer
title: Credits
reserved_credits:
type: integer
title: Reserved Credits
type: object
required:
- resolution
- duration_seconds
- generate_audio
- credits
- reserved_credits
title: ModelCreditEstimate
ProvidersListResponse:
properties:
providers:
items:
$ref: '#/components/schemas/ProviderSummary'
type: array
title: Providers
type: object
required:
- providers
title: ProvidersListResponse
server__routers__providers__CredentialListResponse:
properties:
credentials:
items:
$ref: '#/components/schemas/server__routers__providers__CredentialResponse'
type: array
title: Credentials
type: object
required:
- credentials
title: CredentialListResponse
Body_upload_vertex_credential_api_v1_providers_gemini_vertex_credentials_upload_post:
properties:
file:
type: string
contentMediaType: application/octet-stream
title: File
type: object
required:
- file
title: Body_upload_vertex_credential_api_v1_providers_gemini_vertex_credentials_upload_post
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
server__routers__providers__CreateCredentialRequest:
properties:
name:
type: string
title: Name
api_key:
anyOf:
- type: string
- type: 'null'
title: Api Key
base_url:
anyOf:
- type: string
- type: 'null'
title: Base Url
access_key:
anyOf:
- type: string
- type: 'null'
title: Access Key
secret_key:
anyOf:
- type: string
- type: 'null'
title: Secret Key
type: object
required:
- name
title: CreateCredentialRequest
FieldInfo:
properties:
key:
type: string
title: Key
label:
type: string
title: Label
type:
type: string
title: Type
required:
type: boolean
title: Required
is_set:
type: boolean
title: Is Set
value:
anyOf:
- type: string
- type: 'null'
title: Value
value_masked:
anyOf:
- type: string
- type: 'null'
title: Value Masked
placeholder:
anyOf:
- type: string
- type: 'null'
title: Placeholder
type: object
required:
- key
- label
- type
- required
- is_set
title: FieldInfo
securitySchemes:
OAuth2PasswordBearer:
type: oauth2
flows:
password:
scopes: {}
tokenUrl: /api/v1/auth/token