Models
Every request names the model that should answer it. This page covers how model IDs look, where to find a model's limits and capabilities, and what to expect from models that reason before they answer.
Model IDs
Model IDs follow the organization/model pattern, for example zai-org/GLM-5.3-Flash. IDs are case-sensitive, so copy them exactly as the API returns them.
There are three places to find the models you can use:
GET /v1/modelsreturns every model your API key can call, with its limits- Models in the Entrim Dashboard lists the same models and shows code samples for each
- The model library on entrim.ai describes each model and lists its capabilities
A request with an unknown model ID fails with status 400 and a message that points you to /v1/models.
Context and output limits
GET /v1/models returns two limits for every model:
| Field | Meaning |
|---|---|
max_input_tokens | The largest input the model accepts: system prompt, conversation history, tool definitions and images together |
max_output_tokens | The most tokens the model can generate in a single response |
To cap a single response below the model's maximum, set max_tokens on the request.
Reasoning models
Some models work through a problem before they answer, and return that reasoning separately from the answer:
- The answer is in
message.content, and the reasoning is inmessage.reasoning_content - When streaming, the reasoning arrives as
delta.reasoning_contentchunks before the answer'sdelta.contentchunks usage.completion_tokens_details.reasoning_tokensshows how many of the completion tokens went to reasoning
"message": {
"role": "assistant",
"content": "No, 221 is not a prime number. It factors as 13 × 17.",
"reasoning_content": "221 = 13 × 17."
}
Reasoning tokens count toward max_tokens. If the limit is too low, the model can spend all of it on reasoning and return an empty content with finish_reason set to length, so leave plenty of headroom on reasoning models.
Use reasoning_effort to tell a reasoning model how much to think: low, medium or high. Lower effort answers faster and uses fewer tokens, while higher effort helps on harder problems.
You don't need to send reasoning_content back in later turns of a conversation. Add the assistant's content to messages as usual.
Tools, images and structured output
Models that support these features accept the same request fields as the OpenAI API:
- Tool calling: pass function definitions in
toolsand handle thetool_callsthe model returns. See Tool calling. - Images: send images as
image_urlcontent parts, from anhttps://URL or as base64 data. See Images. - Structured output: ask for JSON with
response_format. See Structured output.
Check a model's page in the model library to see which of these it supports.