{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/ResponsesRequest", "title": "ResponsesRequest", "properties": { "input": { "$ref": "#/components/schemas/Input" }, "instructions": { "description": "System instructions for the model", "type": "string" }, "language_preference": { "description": "ISO 639-1 language code for response language", "type": "string" }, "max_output_tokens": { "description": "Maximum tokens to generate", "format": "int32", "minimum": 1, "type": "integer" }, "max_steps": { "description": "Maximum number of research loop steps.\nIf provided, overrides the preset's max_steps value.\nMust be >= 1 if specified. Maximum allowed is 10.\n", "format": "int32", "maximum": 10, "minimum": 1, "type": "integer" }, "model": { "description": "Model ID in provider/model format (e.g., \"xai/grok-4-1\", \"openai/gpt-4o\").\nIf models is also provided, models takes precedence.\nRequired if neither models nor preset is provided.\n", "type": "string" }, "models": { "description": "Model fallback chain. Each model is in provider/model format.\nModels are tried in order until one succeeds.\nMax 5 models allowed. If set, takes precedence over single model field.\nThe response.model will reflect the model that actually succeeded.\n", "items": { "type": "string" }, "maxItems": 5, "minItems": 1, "type": "array" }, "preset": { "description": "Preset configuration name (e.g., \"fast-search\", \"pro-search\", \"deep-research\").\nPre-configured model with system prompt and search parameters.\nRequired if model is not provided.\n", "type": "string" }, "reasoning": { "$ref": "#/components/schemas/ReasoningConfig" }, "response_format": { "$ref": "#/components/schemas/ResponseFormat" }, "stream": { "description": "If true, returns SSE stream instead of JSON", "type": "boolean" }, "tools": { "description": "Tools available to the model", "items": { "$ref": "#/components/schemas/Tool" }, "type": "array" } }, "required": [ "input" ], "type": "object" }