Skip to main content
POST
Create response
OpenAI-compatible Responses endpoint for stateless text generation and function-tool workflows. Streaming and non-streaming requests use the same authentication, model access, usage accounting, and billing as chat completions.
This endpoint is stateless. It does not store response objects or support background responses, conversations, or previous_response_id. Send the complete request state in input on every call.

Request body

string
required
Model slug from the catalog.
string | array
required
A text prompt or an array of Responses input items. Message items, function_call, and function_call_output are supported. Vision-capable models also accept URL or inline-data input_image parts.
string
System or developer instructions for this response.
boolean
default:"false"
When true, returns typed Server-Sent Events such as response.output_text.delta and response.completed.
integer
Maximum output tokens. The gateway caps this at the model’s max_output_length.
array
Function tools the model may call. Hosted tools such as web search, file search, computer use, code interpreter, shell, and MCP are not supported.
string | object
default:"auto"
Function-tool selection using the OpenAI Responses shape.
boolean
Allow the model to return multiple function calls in one response.
object
Reasoning configuration. reasoning.effort is forwarded to compatible models.
object
Text output configuration. text.format accepts text, JSON object, and JSON schema formats on models that support structured outputs.
boolean
default:"false"
Must be false when provided. Cogito does not persist response objects.

Example

Unsupported features

The gateway returns 400 unsupported_feature before inference for:
  • store: true, background: true, previous_response_id, conversation, hosted prompt, and max_tool_calls
  • automatic truncation (truncation: "auto")
  • hosted or custom non-function tools and their history items
  • file, audio, and video input; image file IDs; and output logprobs
Only POST /v1/responses is exposed. Retrieve, delete, input-items, and cancel routes are not available.

Streaming

Streaming responses preserve the Responses API’s typed SSE events. Usage is read from the terminal response event for billing. Provider-private nvext fields are removed before events leave the public gateway.