Supported providers & models
The gateway is protocol-oriented: there is no built-in provider or model allowlist — any upstream that speaks a supported protocol can be connected, and whatever model name you configure in the console is what the client can call. This page lists two "what's supported" in one place: providers and models.
Supported model providers
Connected by protocol (static API key / credentials)
| Provider | Description | Upstream protocol |
|---|---|---|
| OpenAI | The full GPT / o family, GPT-Image, embedding, audio, realtime | openai / openai_response / openai_images / openai_embeddings / openai_audio / openai_realtime |
| OpenAI-compatible providers | Azure OpenAI, DeepSeek, Moonshot Kimi, Zhipu GLM, xAI Grok, MiniMax, ByteDance Doubao, Groq, Together, Mistral, OpenRouter, Cerebras, and self-hosted OpenAI-compatible services like vLLM / Ollama | the openai family |
| Anthropic | Claude official API | anthropic |
| Gemini (AI Studio / Vertex AI's Gemini API) | google | |
| AWS Bedrock | Bedrock-hosted Claude / Llama / Nova / Mistral and other models | aws_converse / aws_invoke |
| Kiro (CodeWhisperer / Q Developer family) | AWS's AI IDE channel, logged in via SSO credentials (see the table below) | aws_codewhisperer_streaming |
| Alibaba Cloud Bailian DashScope | Qwen language / multimodal, wan image, video generation, embeddings, rerank, ASR, realtime | dashscope / dashscope_realtime |
| Rerank providers | Jina / Cohere / vLLM rerank endpoints | openai_rerank |
| Any HTTP upstream | No protocol translation, forwarded as-is | passthrough |
Providers not in the table: as long as they provide a compatible endpoint of any of the above protocols, they can be connected by that protocol, in exactly the same way as in-table providers.
SSO credential login (OAuth / machine identity, no static API key)
Some upstreams don't accept static API keys and require an OAuth login to obtain a refresh credential. The gateway bundles a login subcommand and credential custody — logging in auto-creates the upstream:
| Provider | Login method | Status |
|---|---|---|
| Kiro | Portal OAuth (Builder ID / Google / GitHub / IAM Identity Center) | Experimental (currently the only enabled=true) |
| Google Service Account | Service-account JWT (machine identity) | Registered, not enabled |
| Alibaba Cloud Bailian Aliyun Bailian | client_credentials (machine identity) | Registered, not enabled |
| Qoder / Qoder (China site) | Manual PAT / OAuth token paste | Registered, not enabled |
| Z.ai / Zhipu BigModel | OAuth + manual paste | Registered, not enabled |
| Anthropic (WIF) / OpenAI (WIF) | Workload identity federation (token exchange) | Registered, not enabled |
Steps are in Upstream SSO credential login. Status is authoritative in the sso.toml directory: Kiro is currently the only enabled=true vendor (and itself experimental=true, its login endpoint behavior may change, and on failure you can fall back to manual paste in the console); the other eight have profiles registered in the directory, but their enabled gate (default false, fail-closed) is not open — the console doesn't show them and credential import is rejected; wait until their flow is adapted and the switch is turned on before logging in.
Supported model list
First the mechanism: the gateway does not restrict calls by model name. Model names are defined by the admin in the console, and clients fill in the name configured in the gateway. The gateway additionally ships a set of model metadata recognized by wildcard patterns (tokenizer, context/output caps, reference prices); new models of major families automatically fall into the family rules as soon as they're released. Models outside the tables below can also be connected — they just use default capabilities, and pricing can be filled in manually (see Pricing and billing).
Language (chat / reasoning / code)
| Provider | Representative models (newest first) | Connection protocol |
|---|---|---|
| OpenAI | GPT-5.6 Sol / Terra / Luna, GPT-5.5 family, GPT-5.4 family, o-series reasoning, GPT-5.3 Codex | openai / openai_response |
| Anthropic | Claude Opus 5, Claude Sonnet 5, Claude Haiku 4.5, Fable 5 | anthropic |
| Gemini 3.1 Pro, Gemini 3.5 Flash, Gemini 2.5 Pro / Flash | google | |
| Alibaba Cloud Bailian | Qwen3.8-Max, Qwen3.7-Max, Qwen3.7 / 3.6 / 3.5-Plus, Qwen3-Coder, QwQ | dashscope |
| DeepSeek | DeepSeek V4-Pro, V4-Flash, R1 | openai compatible |
| Zhipu | GLM-5.2, GLM-5.1, GLM-5 | openai compatible |
| Moonshot | Kimi K3, K2.7, K2.6 | openai compatible |
| xAI | Grok 4.5 | openai compatible |
| MiniMax | MiniMax M3 | openai compatible |
| ByteDance Doubao | Doubao Seed 2.1 Pro / Turbo | openai compatible |
| AWS Bedrock | Bedrock-hosted models (e.g. anthropic.claude-opus-5*) | aws_converse / aws_invoke |
| Gemma | Gemma 4 (Cerebras-hosted) | openai compatible |
Image (generation / editing)
| Provider | Representative models | Connection protocol |
|---|---|---|
| OpenAI | GPT-Image-2 (/v1/images/generations, /v1/images/edits) | openai_images |
gemini-3.1-flash-image family (inline image output in generateContent, inter-translated with openai_images) | google | |
| Alibaba Cloud Bailian | wan2.6-image, wanx family | dashscope |
Video (generation)
| Provider | Representative models | Connection method |
|---|---|---|
| Alibaba Cloud Bailian | wanx2.1-t2v, happyhorse-1.0 / 1.1 (t2v / i2v / r2v) | dashscope async task (direct_path + async_mode, see DashScope quick deploy) |
| Volcano Engine | Doubao Seedance 2.x | openai compatible / passthrough |
| Gemini Omni family (preview, video output) | google |
Realtime (Realtime voice sessions)
| Provider | Representative models | Upstream protocol |
|---|---|---|
| OpenAI | gpt-realtime family | openai_realtime |
| Alibaba Cloud Bailian | Qwen3.5-Omni-Plus Realtime | dashscope_realtime |
The two realtime upstreams share one client entry GET /v1/realtime (OpenAI Realtime client protocol), see Realtime sessions.
Other capabilities (embeddings / rerank / speech)
| Capability | Representative models | Connection protocol |
|---|---|---|
| Embeddings | text-embedding-3 family, text-embedding-v4, BGE-M3 | openai_embeddings / dashscope |
| Rerank | gte-rerank, Qwen3-VL-Rerank, BGE Reranker v2-m3, Jina / Cohere compatible endpoints | openai_rerank / dashscope |
| Speech | whisper family, fun-asr, paraformer (ASR); TTS | openai_audio / dashscope |
SDK integration examples
SDK integration examples (OpenAI / Anthropic / Google / DashScope / unified SDKs / orchestration frameworks / agent SDKs / realtime / local inference) now live in their own section — see SDK Integration Overview:
- Official vendor SDKs — OpenAI / Anthropic / Google / OpenAI-compatible third parties
- Unified SDKs & AI gateway layer — Vercel AI SDK / LiteLLM / Portkey
- Orchestration frameworks — LangChain / LlamaIndex / CrewAI
- Agent SDKs — OpenAI Agents / Claude Agent / Pydantic AI
- Realtime & audio — Realtime WebSocket and openai_audio
- DashScope native SDK & async tasks — native SDK, async video tasks
- Local inference & self-hosted — Ollama / vLLM as upstream-side integrations
FAQ
Q: My model / provider isn't in the tables above — can I still use it? Yes. The gateway connects by protocol, not by allowlist: as long as the provider offers a compatible endpoint, it can be connected; the model name is freely defined by you in the console. Models outside the tables use default metadata, and pricing can be configured manually.
Q: The vendor released a newer-generation model — do I need to upgrade the gateway to use it? No. Configure the new model in the console and it's callable; built-in metadata is recognized by family wildcard patterns (e.g. gpt-5*, claude*), so a new model automatically inherits the family's tokenizer and context rules; exact prices can be filled in manually or arrive with image updates.
Q: Can one SDK call another vendor's model? Yes, this is exactly protocol translation: the OpenAI SDK can call Claude / Gemini / Qwen, and the Anthropic SDK can also call GPT — set model to the model name configured in the gateway, and the gateway translates automatically. Supported combinations are in Protocol interop matrix.
Q: Can video / realtime models also go through load balancing and billing? Yes. Video goes through the async task path ("billing per second" only holds for models that declare a per_second billing mode such as happyhorse-1.0/1.1 and ASR; wanx2.1-t2v has no pricing entry in meta.toml, and is billed per your actual config — see the model-list section); realtime counts each turn of the session into the same statistics / billing pipeline as HTTP, see Realtime sessions.
Next: Endpoints · auth · protocol interop for the full endpoint list; Protocol interop matrix for inter-translation combinations; Upstream and model fields for how to configure a model; Client integration and gateway differences for behavioral differences through the gateway.
