Models endpoint
GET /v1/models — the live catalogue and its capability flags.
GET https://chat.eterial.ai/v1/modelsAuthenticated like any other call. Returns the models you can send to, in the
OpenAI list shape with one addition — capabilities:
{
"object": "list",
"data": [
{
"id": "minimax-m2.7",
"object": "model",
"capabilities": ["reasoning", "tools"]
}
]
}The capabilities
| Value | Required by |
|---|---|
tools | tools or functions in the request — and any request asking for web search |
reasoning | reasoning or reasoning_effort |
image_input | an image_url content part |
pdf_input | a file or input_file content part |
A request that needs none of these can go to any model in the list.
A model may also advertise web_search, which means one of its backends can run
a search natively. Nothing you send requires it: web search is served by Eterial
rather than by the model, so it is tools that a searching request is routed on.
See Web search.
Capabilities are per model, not per backend
A model is served by more than one backend, and the list here is everything
those backends can do, combined. If two capabilities live on different backends
and no single one has both, a request asking for both is rejected with a 400
— even though the model advertised each of them.
When you need two at once, test the combination rather than trusting the listing.
It is safe to cache
The list is deterministic — models sorted by name, capabilities sorted within
each — so a client that polls it will not see spurious changes. Tools that cache
/v1/models, like Cline and OpenWebUI, work as intended.
The contents do change as models are added and retired. See Models.