Skip to main content
The model field is a routing key, not a vendor’s product name. It decides which weights answer your call; it never says who is running them.

Two ways to write it

A bare slug names a model the platform publishes to everyone. It is the short form of accounts/maas/models/<slug>, and it is what you will use for almost everything. A full resource name names a model that belongs to a specific account — one you fine-tuned, or one shared with you. Write it out in full, because a bare slug will never resolve to another account’s model no matter what it is called. Both forms work everywhere model is accepted: /v1/chat/completions, /v1/completions, /v1/messages, and as the path segment of GET /v1/models/{model}.
Model names are never an upstream vendor’s own product name. If a name you are used to elsewhere does not work here, that is the reason — look it up in GET /v1/models rather than guessing at a translation.

Finding out what you can call

GET /v1/models returns exactly the models this key’s account may use, in the shape OpenAI clients expect:
owned_by is the account the model belongs to. It is deliberately not the name of whoever runs the hardware — see Introduction for why. Richer metadata — context window, capabilities, pricing — lives in the console rather than on this endpoint, which stays at the OpenAI minimum so that clients written against OpenAI parse it without special cases.

Not every model accepts every endpoint

Capabilities are a property of the model, not of the API: The call is rejected rather than answered as though you had not asked. An answer that silently ignored your schema or your tools would be worse than an error, because you would ship it.

When a model retires

Models are retired with notice, not withdrawn:
  1. The model is marked deprecated. It keeps working, and responses carry a Warning header saying so.
  2. After the notice period it stops being routable, and calls get MODEL_NOT_FOUND.
So the way to find out early is to watch for Warning on your responses — by the time you are seeing 404s, the window has closed.
Pin a model name in your configuration rather than in your code, so that moving to the successor is a deploy and not a release.

Next

List models

The endpoint reference.

Errors

MODEL_NOT_FOUND, MODEL_NOT_ALLOWED, MODEL_CAPABILITY_UNSUPPORTED in context.