Find compatible levels
Request the current catalog with your API key:data array groups models by provider. Each model includes its
identifier, reasoningEfforts, and reasoning/vision capabilities. A provider’s
reasoningEfforts is the union of its selectable models’ levels. Use the model’s
list to choose a value. An empty list means no named effort can be selected;
omit the field or use null to keep the model’s default behavior.
The API recognizes none, minimal, low, medium, high, xhigh and max.
Each model supports only a subset. Unsupported combinations return HTTP 400,
including when changing the model while retaining an incompatible effort.
Assistant default
IncludereasoningEffort when creating an assistant
or updating it:
assistants create command accepts the same flag, including alongside
--from-json. Set null in API JSON, or --reasoning-effort default in the CLI,
to remove the assistant’s explicit effort and use the adapter default.
Conversation and message overrides
Send these fields to the message endpoint:high; following turns use the saved conversation value low
unless they include another message override. The message-level setting also
applies to tool iterations and resumptions within that turn. Both synchronous
and asynchronous requests accept these fields. Omit chatUid to start a new
conversation with the same settings.
Resolution is message → conversation → assistant → adapter default.
none is an explicit model level, distinct from inheritance. The CLI translates
default (also accepted as null) into JSON null. API JSON must use null,
not the string "default". Explicit CLI flags override JSON input, including
when clearing a setting.
To restore assistant inheritance for an existing conversation:
Read the configured and effective values
Assistant reads includereasoningEffort. Conversation history includes
reasoningEffort (the saved conversation setting) and effectiveReasoningEffort
(the last recorded model call). Individual model response messages expose
messageTokenUsage.reasoningEffort. An absent effective value indicates that
the adapter’s existing default behavior was used.