GET

/v1/schemas/azure/chat/responses

kind inputactivity chathash d3e042ec…extracted Oct 7, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
9fade08c5d30751828e67fecca63b3800567c802d1d6c4c91bba3d193843f7a8
{
  "fetchedAt": 1791349936,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

28 properties · 0 required · 28 $defs
propertytypedescriptionconstraints
metadataOpenAI.MetadataSet of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characte…nullable
top_logprobsintegernullable
temperaturenumbernullable
top_pnumbernullable
userstringThis field is being replaced by `safety_identifier` and `prompt_cache_key`. Use `prompt_cache_key` instead to maintain caching optimizations. A stable identifier for your end-users. Used to boost cache hit rates by better bucketing similar requests and to help…deprecated
safety_identifierstringA stable identifier used to help detect users of your application that may be violating OpenAI's usage policies. The IDs should be a string that uniquely identifies each user, with a maximum length of 64 characters. We recommend hashing their username or email…length ≤ 64
prompt_cache_keystringUsed by OpenAI to cache responses for similar requests to optimize your cache hit rates. Replaces the `user` field. [Learn more](/docs/guides/prompt-caching).
prompt_cache_retentionenumin_memory | 24h · nullable
previous_response_idstringnullable
modelstringModel ID used to generate the response, like `gpt-4o` or `o3`. OpenAI offers a wide range of models with different capabilities, performance characteristics, and price points. Refer to the [model guide](/docs/models) to browse and compare available models.
reasoningOpenAI.Reasoning**gpt-5 and o-series models only** Configuration options for [reasoning models](https://platform.openai.com/docs/guides/reasoning).nullable
backgroundbooleannullable
max_tool_callsintegernullable
textOpenAI.ResponseTextParamConfiguration options for a text response from the model. Can be plain text or structured JSON data. Learn more: - [Text inputs and outputs](/docs/guides/text) - [Structured Outputs](/docs/guides/structured-outputs)
toolsOpenAI.Tool[]An array of tools the model may call while generating a response. You can specify which tool to use by setting the `tool_choice` parameter.
tool_choiceenum | object
promptOpenAI.PromptReference to a prompt template and its variables. [Learn more](/docs/guides/text?api-mode=responses#reusable-prompts).
truncationenumauto | disabled · nullable
inputstring | OpenAI.InputItem[]Text, image, or file inputs to the model, used to generate a response. Learn more: - [Text inputs and outputs](/docs/guides/text) - [Image inputs](/docs/guides/images) - [File inputs](/docs/guides/pdf-files) - [Conversation state](/docs/guides/conversation-sta…
includeOpenAI.IncludeEnum[]nullable
parallel_tool_callsbooleannullable
storebooleannullable
instructionsstringnullable
streambooleannullable
stream_optionsOpenAI.ResponseStreamOptionsOptions for streaming responses. Only set this when you set `stream: true`.nullable
conversationstring | Conversation objectThe conversation that this response belongs to. Items from this conversation are prepended to `input_items` for this response request. Input items and output items from this response are automatically added to this conversation after this response completes.nullable
context_managementOpenAI.ContextManagementParam[]Context management configuration for this request.nullable
max_output_tokensintegernullable

Types

28 $defs

OpenAI.ContextManagementParamobject

type*stringThe context management entry type. Currently only 'compaction' is supported.
compact_thresholdintegernullable

OpenAI.ConversationParamstring | Conversation object

The conversation that this response belongs to. Items from this conversation are prepended to `input_items` for this response request. Input items and output items from this response are automatically added to this conversation after this response completes.

OpenAI.ConversationParam-2object

The conversation that this response belongs to.

id*stringThe unique ID of the conversation.

OpenAI.FileInputDetailenum

low | high

OpenAI.ImageDetailenum

low | high | auto | original

OpenAI.IncludeEnumstring | enum

Specify additional output data to include in the model response. Currently supported values are: - `web_search_call.results`: Include the search results of the web search tool call. - `web_search_call.action.sources`: Include the sources of the web search tool…

OpenAI.InputFileContentobject

A file input to the model.

type*enumThe type of the input item. Always `input_file`.input_file · default: "input_file"
file_idstringnullable
filenamestringThe name of the file to be sent to the model.
file_datastringThe content of the file to be sent to the model.
file_urlstringThe URL of the file to be sent to the model.format: uri
detailenumThe detail level of the file to be sent to the model. Use `low` for the default rendering behavior, or `high` to render the file at higher quality. Defaults to `low`.low | high

OpenAI.InputImageContentobject

An image input to the model. Learn about [image inputs](/docs/guides/vision).

type*enumThe type of the input item. Always `input_image`.input_image · default: "input_image"
image_urlstringformat: uri · nullable
file_idstringnullable
detail*enumThe detail level of the image to be sent to the model. One of `high`, `low`, `auto`, or `original`. Defaults to `auto`.low | high | auto | original

OpenAI.InputItemobject

An item representing part of the context for the response to be generated by the model. Can contain text, images, and audio inputs, as well as previous assistant responses and tool call outputs.

type*string | enum

OpenAI.InputItemTypestring | enum

OpenAI.InputParamstring | OpenAI.InputItem[]

Text, image, or file inputs to the model, used to generate a response. Learn more: - [Text inputs and outputs](/docs/guides/text) - [Image inputs](/docs/guides/images) - [File inputs](/docs/guides/pdf-files) - [Conversation state](/docs/guides/conversation-sta…

OpenAI.InputTextContentobject

A text input to the model.

type*enumThe type of the input item. Always `input_text`.input_text · default: "input_text"
text*stringThe text input to the model.

OpenAI.Metadataobject

Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format, and querying for objects via API or the dashboard. Keys are strings with a maximum length of 64 characte…

OpenAI.Promptobject

Reference to a prompt template and its variables. [Learn more](/docs/guides/text?api-mode=responses#reusable-prompts).

id*stringThe unique identifier of the prompt template to use.
versionstringnullable
variablesOpenAI.ResponsePromptVariablesOptional map of values to substitute in for variables in your prompt. The substitution values can either be strings, or other Response input types like images or files.nullable

OpenAI.Reasoningobject

**gpt-5 and o-series models only** Configuration options for [reasoning models](https://platform.openai.com/docs/guides/reasoning).

effortenumConstrains effort on reasoning for [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently supported values are `none`, `minimal`, `low`, `medium`, `high`, and `xhigh`. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response. - `gpt-5.1` defaults to `none`, which does not perform reasoning. The supported reasoning values for `gpt-5.1` are `none`, `low`, `medium`, and `high`. Tool calls are supported for all reasoning values in gpt-5.1. - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support `none`. - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort. - `xhigh` is supported for all models after `gpt-5.1-codex-max`.none | minimal | low | medium | high | xhigh · nullable
summaryenumauto | concise | detailed · nullable
generate_summaryenumauto | concise | detailed · nullable

OpenAI.ReasoningEffortenum

Constrains effort on reasoning for [reasoning models](https://platform.openai.com/docs/guides/reasoning). Currently supported values are `none`, `minimal`, `low`, `medium`, `high`, and `xhigh`. Reducing reasoning effort can result in faster responses and fewer tokens used on reasoning in a response. - `gpt-5.1` defaults to `none`, which does not perform reasoning. The supported reasoning values for `gpt-5.1` are `none`, `low`, `medium`, and `high`. Tool calls are supported for all reasoning values in gpt-5.1. - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support `none`. - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort. - `xhigh` is supported for all models after `gpt-5.1-codex-max`.

none | minimal | low | medium | high | xhigh · nullable

OpenAI.ResponsePromptVariablesobject

Optional map of values to substitute in for variables in your prompt. The substitution values can either be strings, or other Response input types like images or files.

OpenAI.ResponseStreamOptionsobject

Options for streaming responses. Only set this when you set `stream: true`.

include_obfuscationbooleanWhen true, stream obfuscation will be enabled. Stream obfuscation adds random characters to an `obfuscation` field on streaming delta events to normalize payload sizes as a mitigation to certain side-channel attacks. These obfuscation fields are included by de…

OpenAI.ResponseTextParamobject

Configuration options for a text response from the model. Can be plain text or structured JSON data. Learn more: - [Text inputs and outputs](/docs/guides/text) - [Structured Outputs](/docs/guides/structured-outputs)

formatOpenAI.TextResponseFormatConfigurationAn object specifying the format that the model must output. Configuring `{ "type": "json_schema" }` enables Structured Outputs, which ensures the model will match your supplied JSON schema. Learn more in the [Structured Outputs guide](/docs/guides/structured-o…
verbosityenumConstrains the verbosity of the model's response. Lower values will result in more concise responses, while higher values will result in more verbose responses. Currently supported values are `low`, `medium`, and `high`.low | medium | high · nullable

OpenAI.TextResponseFormatConfigurationobject

An object specifying the format that the model must output. Configuring `{ "type": "json_schema" }` enables Structured Outputs, which ensures the model will match your supplied JSON schema. Learn more in the [Structured Outputs guide](/docs/guides/structured-o…

type*string | enum

OpenAI.TextResponseFormatConfigurationTypestring | enum

OpenAI.Toolobject

A tool that can be used to generate a response.

type*string | enum

OpenAI.ToolChoiceOptionsenum

Controls which (if any) tool is called by the model. `none` means the model will not call any tool and instead generates a message. `auto` means the model can pick between generating a message or calling one or more tools. `required` means the model must call …

none | auto | required

OpenAI.ToolChoiceParamobject

How the model should select which tool (or tools) to use when generating a response. See the `tools` parameter to see how to specify which tools the model can call.

type*string | enum

OpenAI.ToolChoiceParamTypestring | enum

OpenAI.ToolsArrayOpenAI.Tool[]

An array of tools the model may call while generating a response. You can specify which tool to use by setting the `tool_choice` parameter. We support the following categories of tools: - **Built-in tools**: Tools that are provided by OpenAI that extend the mo…

type*string | enum

OpenAI.ToolTypestring | enum

OpenAI.Verbosityenum

Constrains the verbosity of the model's response. Lower values will result in more concise responses, while higher values will result in more verbose responses. Currently supported values are `low`, `medium`, and `high`.

low | medium | high · nullable

Validate a payload

before you spend tokens
shell
$ curl -X POST https://modelschemas.com/v1/validate \
    -d '{"provider":"azure","endpointId":"responses","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}