Skip to content
Router One
Router One

List Models

List the models this API key can call. OpenAI-compatible clients and coding CLIs (Codex CLI, Claude Code) fetch this once per session. Each entry in `data` carries the model `id` to send in a request plus its capabilities, context window and posted price fields; the extra `models` array repeats the same catalog with additional fields consumed by Codex CLI. Responses carry an `ETag` — send it back as `If-None-Match` and an unchanged catalog answers `304 Not Modified` with no body. Model IDs are case-sensitive; copy them from the response or from the model catalog.

GET
/v1/models
AuthorizationBearer <token>

Authenticate with your API Key. Get your API Key in the Router One console; the format is sk-xxx.

In: header

Header Parameters

If-None-Match?string

The ETag from a previous response. A match returns 304 Not Modified.

Response Body

application/json

application/json

curl -X GET "https://api.router.one/v1/models"
{
  "object": "list",
  "data": [
    {
      "id": "anthropic/claude-sonnet-5",
      "object": "model",
      "capabilities": [
        "chat",
        "streaming",
        "tool_calling",
        "vision"
      ],
      "max_tokens": 1048576,
      "max_output_tokens": 8192,
      "category": "text",
      "pricing_mode": "token"
    },
    {
      "id": "deepseek-v4-flash",
      "object": "model",
      "capabilities": [
        "chat",
        "streaming",
        "tool_calling"
      ],
      "max_tokens": 1000000,
      "category": "text",
      "pricing_mode": "token"
    }
  ]
}
Empty
{
  "error": {
    "message": "invalid api key",
    "type": "authentication_error",
    "code": "AUTH_INVALID_API_KEY",
    "request_id": "290dd478f91d8aec68f7535e871376eb"
  }
}