API reference

List models

GET /v1/models

Returns the catalog of models currently exposed to the requesting site and API key. EzRouter and SeedRouter can publish different site catalogs, and API key or package restrictions can narrow the result further (see Behavior notes below).

Request

http
GET /v1/models
Authorization: Bearer ${API_KEY}

No request body. No query parameters.

Response

200 OK — a JSON object listing the available models.

Response schema

FieldTypeNotes
objectstringAlways "list".
dataobject[]One entry per model.
successbooleanAlways true on a 200 response. ezrouter-specific extension; not present in the OpenAI specification.

Each model

FieldTypeNotes
idstringModel identifier, as accepted by POST /v1/chat/completions.
objectstringAlways "model".
createdintegerUnix timestamp. Treat as a placeholder, not a real release date — ezrouter populates this with a constant value (1626777600, 2021-07-20) across the entire catalog.
owned_bystringInternal account label for the upstream provider, e.g. "vertex-ai", "custom".
supported_endpoint_typesstring[]ezrouter-specific extension. Lists the surface(s) accepting this model, e.g. ["openai"], ["anthropic", "openai"], ["gemini", "openai"].

Example

bash
curl -sS https://www.ezrouter.dev/v1/models \
  -H "Authorization: Bearer ${API_KEY}"

Response (abbreviated):

json
{
  "object": "list",
  "success": true,
  "data": [
    {
      "id": "claude-sonnet-4-6",
      "object": "model",
      "created": 1626777600,
      "owned_by": "vertex-ai",
      "supported_endpoint_types": ["anthropic", "openai"]
    },
    {
      "id": "deepseek-v4-flash",
      "object": "model",
      "created": 1626777600,
      "owned_by": "custom",
      "supported_endpoint_types": ["openai"]
    }
  ]
}

Behavior notes

  • Site- and key-aware catalog. The request domain selects the site

catalog. API key model limits and package access can narrow that list.

  • Catalog drifts across gateway deploys. Re-query rather than

caching the response for long periods. The x-new-api-version response header on every API call indicates the current gateway build; a change there is a signal that the catalog may have shifted.

  • Some upstream models have multiple identifiers. For example,

the catalog may return claude-haiku-4-5-20251001 (dated snapshot form) while accepting claude-haiku-4-5 (alias) on chat-completion requests. Both forms are valid as the model parameter.

Differences from OpenAI

FieldOpenAIezrouter
Top-level successnot presentalways true on 200
created per modelreal release timestampconstant placeholder (see schema)
supported_endpoint_types per modelnot presentadded — see schema
Auth requiredyesyes
Catalog scopeorganization/project dependentsite catalog filtered by key and package access