Supported Providers
External and self-hosted LLM providers reachable through the Kimchi gateway, and how to query the live catalog with the supported-providers API.
The Kimchi Proxy integrates with various Large Language Model (LLM) providers, acting as a gateway.
External providers cover models Kimchi does not host itself. To use Kimchi's own hosted models from your coding tools, see the setup recipes. Claude Code, for example, connects through the Anthropic-compatible endpoint.
Getting current provider information
Cast AI supports a comprehensive range of LLM providers, including both external API services and self-hosted deployment options.
Using the supported providers API
Use the /v1/llm/providers endpoint:
curl --request GET \
--url https://api.cast.ai/v1/llm/openai/supported-providers \
--header 'X-API-Key: $CASTAI_API_KEY' \
--header 'accept: application/json'This endpoint returns:
- Provider identifiers and model catalogs
- Detailed model specifications and pricing
- Supported modalities
- Model types and deployment options
Response structure
{
"supportedProviders": [
{
"provider": "openai",
"models": [
{
"name": "gpt-5",
"maxInputTokens": 272000,
"promptPricePerMilTokens": "1.25",
"completionPricePerMilTokens": "10",
"modalities": ["text", "image"],
"type": "chat"
}
],
"pricingUrl": "https://openai.com/pricing",
"websiteUrl": "https://openai.com",
"rateLimitsPerModel": true
}
]
}Use the API for the most current provider and model information instead of relying on static lists.
AWS Bedrock
Run models from your own AWS account through the Kimchi OpenAI-compatible endpoint. Register Bedrock in the console with either an access key or an IAM Role ARN. The Role ARN path lets Kimchi assume your role over a cross-account trust relationship with an External ID, so no long-lived AWS credential is stored in Kimchi. The role needs bedrock:InvokeModel, bedrock:InvokeModelWithResponseStream, and bedrock:ListFoundationModels. See Connect AWS Bedrock for the full setup.
GitHub Copilot
Enter a GitHub token from an account with an active Copilot subscription. This token will be exchanged for short-lived Copilot session tokens automatically — no manual refresh needed.
How to get a token
Use GitHub's device-code OAuth flow with the Copilot OAuth App client ID:
# 1. Request a device code
curl -s -X POST https://github.com/login/device/code \
-H "Accept: application/json" \
-d "client_id=Iv1.b507a08c87ecfe98&scope=read:user"Open the verification_uri returned in the response in a browser and enter the user_code.
# 2. Poll for the access token
curl -s -X POST https://github.com/login/oauth/access_token \
-H "Accept: application/json" \
-d "client_id=Iv1.b507a08c87ecfe98&device_code=<device_code>&grant_type=urn:ietf:params:oauth:grant-type:device_code"The access_token value (starting with ghu_...) is your API key. Classic PATs (ghp_) and fine-grained PATs (github_pat_) are not supported.
All requests through this provider use the Copilot quota of the GitHub account that owns this token. For teams, create a dedicated GitHub account with a Copilot seat and share its token.
Updated about 13 hours ago