Unified Mode
One SDK for every provider
Unified mode lets you call any LLM provider using the OpenAI SDK. Enterprise Router translates your request into each provider’s native format and translates the response back. You use one SDK, one API shape, and switch models by changing a string.
How it works
- You send an OpenAI-compatible
POST /v1/chat/completionsrequest - The
modelfield tells the gateway which provider and model to use - The gateway translates the request to the provider’s native format
- The provider responds, and the gateway translates back to OpenAI format
- You get a standard OpenAI-shaped response regardless of which provider handled it
Model naming
Use the provider/model format:
For well-known models, you can omit the provider prefix:
So model="claude-sonnet-4-6" works the same as model="anthropic/claude-sonnet-4-6".
Base URL
Point the OpenAI SDK at your gateway’s /v1 endpoint:
Supported models
What’s translated
The gateway handles the translation between OpenAI’s API format and each provider’s native format:
- Messages: role mapping, content format, system message extraction
- Streaming: SSE event translation in real time
- Tool calling: function definitions, tool_choice, tool results
- Vision: image content parts (base64 and URLs)
- Parameters: temperature, top_p, top_k, max_tokens, stop sequences
- Response: content blocks, finish reasons, usage/token counts
Limitations
Unified mode translates the most common features. Some provider-specific features may not be available:
- Anthropic’s extended thinking blocks
- Audio/video content parts
- Provider-specific parameters not in the OpenAI spec
For full provider feature support, use Native Mode.
Next steps
- Python examples — chat, streaming, tool calling
- TypeScript examples — Node.js integration
- cURL examples — raw HTTP requests