inference.eu

GET /v1/models

Models API: list the open models available to your key

The models endpoint returns every model your API key can call, in the same list format the OpenAI API uses. Tools that show a model picker, such as chat interfaces, IDE extensions and coding agents, call it to fill their menus. In your own code it is the reliable way to check a model id before you send traffic to it.

  1. 01API format: OpenAI
  2. 02EU data centres
  3. 03Covered by one DPA
GET /v1/models
curl https://api.inference.eu/v1/models \
  -H "Authorization: Bearer $INFERENCE_EU_API_KEY"

# {
#   "object": "list",
#   "data": [
#     {"id": "gpt-oss-120b", "object": "model", "created": 1754438400, "owned_by": "openai"},
#     {"id": "qwen3-embedding-8b", "object": "model", "created": 1749081600, "owned_by": "qwen"},
#     {"id": "bge-reranker-v2-m3", "object": "model", "created": 1710460800, "owned_by": "baai"}
#   ]
# }

What the endpoint does

GET /v1/models takes no body. Authenticate with your key as a bearer token and the API returns an object with object: "list" and a data array. Each entry has an id, which is the exact string you pass in the model field of other requests, plus object: "model", a created timestamp and owned_by, which names the organisation that published the weights.

The list covers every type of model in the catalogue: chat and reasoning models, vision, code, embeddings, rerankers, speech to text, text to speech and image generation. Every model listed runs in European data centres.

Retrieving one model

GET /v1/models/{model} returns a single entry in the same shape, or a 404 if the id does not exist or your key cannot use it. This is a cheap check to run at start-up: if your configuration names a model, confirm it is available before the first user request rather than discovering a typo in production.

The list can differ between keys. Models can be enabled per project or per plan, and we can add dedicated deployments that only your organisation sees. Fetch the list with the key your application actually uses, not with a personal test key.

Choosing a model id in practice

Model ids are lower-case strings based on the published model name, such as gpt-oss-120b, qwen3-embedding-8b or whisper-large-v3-turbo. Keep them in configuration rather than scattered through code, so that trying a new model is a deployment setting.

Use the endpoint to decide which model to call for which task: a large reasoning model for complex questions, a smaller chat model for classification, an embedding model and a reranker for search. The model pages on this site describe the licence, context length and strengths of each, while this endpoint tells you what your key can call right now.

Errors and edge cases

A missing or invalid key returns 401 with the standard error object. Requesting a model your key cannot use returns 404, as does a misspelt id; the message names the id you sent so you can spot the mistake.

When a model is replaced by a newer version, we keep the old id working for a transition period and announce the change in advance, so you can test the new one first. Do not rely on the order of entries in data. If you cache the list, refresh it regularly so that new models appear in pickers and retired ones disappear.

List models: common questions

The questions buyers, developers and legal teams ask us most. Something missing? Ask us directly.

Ask a question

Move your AI workloads to EU infrastructure

Tell us which models you use and roughly how much traffic you have. We reply within one working day with pricing and next steps.

  • Reply within one working day
  • Pricing for your volume
  • DPA ready to sign