What the /v1/models endpoint is, and why it can verify a relay service
What it is
GET /v1/models is a standard endpoint in the OpenAI protocol. It lists the models the current account can use.
curl https://your-endpoint/v1/models -H "Authorization: Bearer your-key"
The response shape:
{
"object": "list",
"data": [
{ "id": "gpt-4o", "object": "model", "owned_by": "openai" },
{ "id": "claude-sonnet-4-5", "object": "model", "owned_by": "anthropic" }
]
}
Why it is worth checking
1. It proves the endpoint really forwards requests
A site can build a polished landing page claiming support for hundreds of models. That proves nothing -- a landing page is just text.
/v1/models can only return a list if the site actually connects to an upstream. It needs real infrastructure behind it.
2. It exposes the model ids the site actually offers
Naming is not consistent between sites. The same model may be listed as:
claude-sonnet-4-5 / claude-sonnet-4.5 / sonnet-4.5 / claude-4.5-sonnet
The id you get from /v1/models is the one you can actually call, which is more reliable than the name printed in the docs.
3. It makes what is claimed comparable with what is measured
Separating the two is our core method:
| Source | How we present it | |
|---|---|---|
| Claimed support | The site's own marketing page | The model families field |
| Measured via the API | The response from /v1/models | The model count field |
A mismatch is normal (marketing is usually more optimistic), but a large gap is worth noting.
The three kinds of response
| Response | Meaning | Normal? |
|---|---|---|
| 200 + a model list | Endpoint is open | Normal |
| 401 / 403 | Endpoint exists, authentication required | Normal |
| 404 | Endpoint not implemented | Worth noting |
| Timeout | Site unreachable | Unrelated to the endpoint |
About 404: some sites deliberately disable this endpoint to stop others scraping their model list. So a 404 does not mean the site is fake, but it does mean the protocol implementation is incomplete and you have lost one way to cross-check it.
How we use it
The models covered figure under measured metrics on a site detail page comes from this endpoint.
If it shows a dash, it means we could not get a list from this endpoint -- not that the site does not support those models, only that we could not verify it.
How you can use it
Before signing up:
curl -s https://your-endpoint/v1/models -H "Authorization: Bearer your-key" | head -c 500
- You get a list, so the protocol implementation is fairly complete
- A 404, so other features may be missing too and you should test more thoroughly
- A 401 or 403 with a correct key is usually normal
After signing up: if the model you want is not in the list, your request will most likely fail. Check the list before you write code.
One caveat
Being in the list does not guarantee a call will succeed.
The list says this model is registered. Whether a call works still depends on whether the upstream channel is available. The list is necessary, not sufficient.
Related reading
- Give a relay service a health check: a 20-minute verification checklist
- OpenAI protocol compatibility: chat/completions vs responses
- How uptime is measured: our methodology and its limits
Was this useful? If you have run into something the article does not cover, tell us and we will verify it and update the text.
Related articles
Video generation behind a relay: three API shapes, four billing traps, one acceptance checklist
MCP through a relay: what works, what never will, and how to test it in ten minutes
A relay selection decision tree: working back from your scenario to a site
Logging and reconciliation: attributing token spend to the project level
Migrating suppliers gradually: replacing an API site without interrupting service
Build your own probe: twenty lines of script to monitor your API suppliers
The models this article mentions are available on these services
Filtered by the model families the article mentions and ordered by overall score and uptime. This is not a recommendation. Click through to see each service's uptime, latency and endpoint verification.
See the full list in the directory, or browse by model family.