Skip to main content
Version: 1.12.0

Create a model response

POST 

/v1/responses

OpenAI-compatible Responses API. DVARA translates the request into its model-call contract and applies the same configured policy, PII, guardrail, budget, routing, usage, cost, and audit controls as Chat Completions. Non-streaming requests can use the response cache; streams bypass it. Set stream: true for typed SSE events. Observational response controls preserve incremental delivery, while a control that can withhold output holds the complete response before release or refusal. response.completed carries the usage when the provider reports it; DVARA estimates usage for its own records otherwise.

Text and image input, instructions, structured output through text.format, and your own tools are honored. Tools can be function tools (with tool_choice), custom tools, namespace tools, and a tool search your client runs. DVARA runs no tool; your code does. Features that need state or run at the provider are refused with unsupported_capability (HTTP 400), never silently dropped:

Refused requestWhy
Built-in tools: web_search, file_search, code_interpreter, computer_use, image_generation, mcpThey run at the provider, outside DVARA's checks.
store: true, previous_response_idThe gateway is stateless. Send the full input each turn with store: false.
background: true, reusable prompt objectsThey need state at the provider. Use DVARA prompt templates instead of prompt.
A service_tier other than auto or defaultIt changes the price and speed of the call.
An include value other than reasoning.encrypted_contentThe requested output would be absent from the response.
A reasoning key other than effort, summary, generate_summary or contextNot supported.
input parts of type input_file / input_audioText and image input only.
An input item of a type DVARA does not readIt would reach the model as an empty turn.
A tool type DVARA cannot translate, on a provider other than OpenAI or Azure OpenAIOnly those two providers' own Responses API is sent such a tool as-is.

Both /v1/responses and /v1/chat/completions are stateless — send the full input on each turn.

Request​

Responses​

Response object, or an SSE stream of typed events when stream=true