Overview
Last updated October 29, 2026
Endpoints, authentication, model IDs, and routing syntax for the RouterOne API.
RouterOne provides endpoints compatible with OpenAI, Anthropic, and Google Gemini, plus a unified endpoint for asynchronous generation. You can keep using your existing SDK by changing its API address and key.
Addresses and endpoints
- API host:
https://gateway.routerone.ai - OpenAI SDK
base_url:https://gateway.routerone.ai/v1
Endpoints are grouped by calling contract:
Text generation (convertible protocols)
| Protocol | Method | Path |
|---|---|---|
| OpenAI Chat Completions | POST | /v1/chat/completions |
| OpenAI Responses | POST | /v1/responses |
| Anthropic Messages | POST | /v1/messages |
| Google Gemini | POST | /v1beta/models/{model}:generateContent /v1/models/{model}:generateContent |
Image generation and editing
| Protocol | Method | Path |
|---|---|---|
| Google Gemini | POST | /v1beta/models/{model}:generateContent /v1/models/{model}:generateContent |
| OpenAI Images | POST | /v1/images/generations |
| OpenAI Images (edit) | POST | /v1/images/edits |
| Alibaba Model Studio Image | POST | /api/v1/services/aigc/multimodal-generation/generation |
| Alibaba Model Studio Image (async) | POST | /api/v1/services/aigc/image-generation/generation |
| Volcengine Ark Image | POST | /api/v3/images/generations |
Video generation
| Protocol | Method | Path |
|---|---|---|
| Alibaba Model Studio Video | POST | /api/v1/services/aigc/video-generation/video-synthesis |
| Alibaba Model Studio Video (get) | GET | /api/v1/tasks/{id} |
| MiniMax Video | POST | /v2/video_generation |
| MiniMax Video (get) | GET | /v2/query/video_generation/{id} |
| Volcengine Ark Video | POST | /api/v3/contents/generations/tasks |
| Volcengine Ark Video (get) | GET | /api/v3/contents/generations/tasks/{id} |
| xAI Video | POST | /v1/videos/generations |
| xAI Video (edit) | POST | /v1/videos/edits |
| xAI Video (extend) | POST | /v1/videos/extensions |
| xAI Video (get) | GET | /v1/videos/{id} |
Decisions
| Protocol | Method | Path |
|---|---|---|
| TypeSafeAI System One | POST | /v1/systemone |
Unified asynchronous generation
| Protocol | Method | Path |
|---|---|---|
| RouterOne Tasks | POST | /v1/tasks |
| RouterOne Tasks (get) | GET | /v1/tasks/{id} |
| RouterOne Tasks (cancel) | POST | /v1/tasks/{id}/cancel |
The four text protocols can be converted between one another, but the available entry points still depend on the model. OpenAI Images endpoints are only for image generation and editing; they are not part of text-protocol conversion.
Gemini's generateContent appears under both text and images — it is the same address, and generationConfig.responseModalities in the body decides whether the call returns text or an image.
RouterOne Tasks is a unified asynchronous media API. The model determines the modality, so image, video, audio, and other media tasks share the same submit and retrieve paths. Check the model catalog for currently available models.
TypeSafeAI System One is the endpoint for decision models: it does not generate text, returns one structured answer per typed question, and is not part of text-protocol conversion. See Decision.
Authentication
Use an RouterOne API key and pass it in the format expected by your client:
| Protocol | Authentication |
|---|---|
| OpenAI-compatible endpoints, RouterOne Tasks and TypeSafeAI System One | Authorization: Bearer <key> |
| Anthropic Messages | x-api-key: <key> |
| Google Gemini | x-goog-api-key: <key> or the URL parameter ?key=<key> |
Create and view API keys on the keys page in the console.
The same key can also be used to retrieve the balance and spend limits, verify the key, and list the base URLs in service. Relay services such as new-api, one-api and sub2api can sync the balance directly. See Account & platform.
Model-name syntax
Use the canonical ID shown on the model detail page. Its format is manufacturer/model:
anthropic/claude-opus-5
openai/gpt-5.6
deepseek/deepseek-v3.2
Most models can also be called by their bare name without the vendor prefix, such as claude-opus-5; /v1/models returns bare names. Aliases are unique across the platform, so both forms refer to the same model.
Select a provider
By default, RouterOne routes each request across the available providers. To use a specific provider, append :<provider> to the model ID:
anthropic/claude-opus-5:anthropic
A pinned request does not fail over to another provider. Omit the provider suffix when you need automatic failover.
Select a routing strategy
Append :@<strategy> to the model ID to set the provider ordering for one request:
anthropic/claude-opus-5:@price
| Suffix | Behavior |
|---|---|
@balanced | Balances availability and channel weight; the default |
@price | Prefers lower prices |
@latency | Prefers lower time to first token |
@throughput | Prefers faster output |
@reliability | Prefers higher success rates |
A routing strategy only reorders the providers available to the current key; it does not expand the provider pool. Provider and strategy suffixes cannot be combined. If the API key has a fixed routing strategy, the request cannot specify another one.
Protocol and model are two separate things
Protocol and model support are independent. Each model detail page lists the protocols available for that model. Unsupported combinations return an error and are not silently downgraded.
Some parameters may be converted or ignored when you call a model through a different protocol. See Protocol conversion compatibility for the exact rules.
Next steps
- Request parameters, response fields, and examples: select an endpoint in the sidebar
- Parameter conversion rules: Protocol conversion compatibility
- Error formats and retry guidance: Errors and retries