Create configured model
models_createRegister a configured model with its provider, context window, and capabilities so agents can use it. Set token limits, modalities, and reasoning options.
Instructions
Create configured model
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Human-readable name. Spaces and punctuation are allowed; leading or trailing whitespace and invisible or control characters are not. | |
| orgID | Yes | ||
| supports_tools | No | Whether this configured model can receive tool definitions and emit tool calls. Agent configs with enabled tools are rejected when this is false. | |
| input_modalities | No | Input types this configured model accepts. Omnara recognizes text, image, and file; an empty list leaves capabilities unspecified. | |
| max_output_tokens | No | Optional known output-token ceiling. Omitted capacity remains unknown; selecting a discovered model can supply its published ceiling. Explicit values must not exceed the provider's supported limit. | |
| output_modalities | No | Output types this configured model can return. Omnara currently consumes text output. | |
| supports_reasoning | No | Whether Omnara should use this model's reasoning features. For OpenAI Responses, this also enables encrypted reasoning replay for stateless calls. | |
| api_variant_options | No | Extra top-level JSON fields to include in provider requests for this configured model. Use this for provider-specific settings that Omnara does not expose as typed fields, such as OpenRouter `provider` routing or sampling parameters. Omnara still controls the fields it needs to run the agent correctly, including the model, prompt/messages, streaming, tools, output-token limit, and selected reasoning policy. Provider passthrough values for those fields are ignored. For OpenRouter routing options, see https://openrouter.ai/docs/guides/routing/provider-selection and general request parameters at https://openrouter.ai/docs/api/reference/parameters. Omnara-managed OpenRouter providers accept only sampling, reasoning, and per-model routing options here. | |
| provider_model_slug | Yes | Exact provider model slug sent to the provider endpoint. Free-pool, `:online`, and preset model ids are not accepted on Omnara-managed OpenRouter providers. | |
| context_window_tokens | Yes | Context budget for input and output tokens. Triggers compaction when estimated input exceeds the remaining budget after output and safety reserves. The turn fails if compaction cannot make it fit. | |
| modelProviderConfigID | Yes | ||
| default_cache_retention | No | Prompt-cache preference for model requests; `short` when omitted. `short` applies the route's default caching (explicit cache breakpoints where the provider requires them) and, where the route accepts one, a stable conversation key for cache-aware routing. `long` prefers the route's extended cache lifetime where one exists (currently Anthropic's one-hour cache, which on Bedrock requires Claude 4.5 or newer) and behaves like `short` elsewhere. `none` sends no Omnara-managed cache controls or conversation key; providers may still cache prefixes on their own. | |
| default_reasoning_effort | No | Default reasoning effort to send for models/API formats that support effort-style reasoning controls. Requires supports_reasoning=true. When supported_reasoning_efforts is present, this value must be listed there. | |
| default_max_output_tokens | No | Optional normal per-request output allowance. Discovery never populates this field. When omitted, requests use the known output ceiling. If both are absent, Messages uses 64000 tokens; other formats omit the allowance. Runtime allowances are fitted to available context. | |
| supported_reasoning_efforts | No | Reasoning effort values this configured model accepts. Requires supports_reasoning=true when non-empty. |