GET

/v1/schemas/openai/chat/realtime/calls/{call_id}/accept

kind inputactivity chathash 6e87acac…extracted Nov 4, 2026version currentsource upstream spec ↗
fieldrecorded source
schemaSource linked above.

upstream-spec

Source trace
fb72772dc5ac65c0457451fcab125a37ffa22b6aea98546e7be3f49396be4442
{
  "fetchedAt": 1793769007,
  "extractorVersion": "1",
  "verifiedAt": null
}

Request body

14 properties · 1 required · 25 $defs
propertytypedescriptionconstraints
type*enumThe type of session to create. Always `realtime` for the Realtime API.realtime
output_modalitiesenum[]The set of modalities the model can respond with. It defaults to `["audio"]`, indicating that the model will respond with audio plus a transcript. `["text"]` can be used to make the model respond with text only. It is not possible to request both `text` and `a…default: ["audio"]
modelstring | enumThe Realtime model used for this session.
instructionsstringThe default system instructions (i.e. system message) prepended to model calls. This field allows the client to guide the model on desired responses. The model can be instructed on response content and format, (e.g. "be extremely succinct", "act friendly", "he…
audioobjectConfiguration for input and output audio.
includeenum[]Additional fields to include in server outputs.
tracingenum | Tracing ConfigurationRealtime API can write session traces to the [Traces Dashboard](https://platform.openai.com/logs?api=traces). Set to null to disable tracing. Once tracing is enabled for a session, the configuration cannot be modified.nullable · default: null
toolsRealtimeFunctionTool | MCPTool[]Tools available to the model.
tool_choiceenum | Function tool | MCP toolHow the model chooses tools. Provide one of the string modes or force a specific function/MCP tool.default: "auto"
parallel_tool_callsbooleanWhether the model may call multiple tools in parallel. Only supported by reasoning Realtime models such as `gpt-realtime-2`.
reasoningRealtimeReasoningConfiguration for reasoning-capable Realtime models such as `gpt-realtime-2`.
max_output_tokensinteger | enumMaximum number of output tokens for a single assistant response, inclusive of tool calls. Provide an integer between 1 and 4096 to limit output tokens, or `inf` for the maximum available tokens for a given model. Defaults to `inf`.
truncationenum | Retention ratio truncationWhen the number of tokens in a conversation exceeds the model's input token limit, the conversation be truncated, meaning messages (starting from the oldest) will not be included in the model's context. A 32k context model with 4,096 max output tokens can only…
promptobjectReference to a prompt template and its variables. [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).nullable

Types

25 $defs

AudioTranscriptionobject

modelstring | enumThe model to use for transcription. Current options are `whisper-1`, `gpt-transcribe`, `gpt-live-transcribe`, `gpt-4o-mini-transcribe`, `gpt-4o-mini-transcribe-2025-12-15`, `gpt-4o-transcribe`, `gpt-4o-transcribe-diarize`, and `gpt-realtime-whisper`. Use `gpt-…
languagestringThe language of the input audio. Supplying the input language in [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) (e.g. `en`) format will improve accuracy and latency.
languagesstring[]Possible languages of the input audio, in [ISO-639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. Supported by `gpt-transcribe` and `gpt-live-transcribe`.items ≥ 1
keywordsstring[]Words or phrases to guide transcription of the input audio. Supported by `gpt-transcribe` and `gpt-live-transcribe`.
promptstringAn optional text to guide the model's style or continue a previous audio segment. For `whisper-1`, the [prompt is a list of keywords](https://developers.openai.com/api/docs/guides/speech-to-text#prompting). For `gpt-4o-transcribe` models (excluding `gpt-4o-tra…
delayenumControls how long the model waits before emitting transcription text. Higher values can improve transcription accuracy at the cost of latency. Only supported with `gpt-realtime-whisper` in GA Realtime sessions.minimal | low | medium | high | xhigh

CallableToolAllowedCallerenum

direct | programmatic

FileInputDetailenum

auto | low | high

ImageDetailenum

low | high | auto | original

InputFileContentobject

A file input to the model.

type*enumThe type of the input item. Always `input_file`.input_file · default: "input_file"
file_idstringThe ID of the file to be sent to the model.nullable
filenamestringThe name of the file to be sent to the model.
file_datastringThe content of the file to be sent to the model.
prompt_cache_breakpointPromptCacheBreakpointConfigMarks the exact end of a reusable prompt prefix. When `ttl` is omitted, the breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is not rounded to a token block.
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 `auto` to let the system select the detail level; for GPT-5.6 and later models, `auto` uses high-quality rendering, which may increase input token usage. Use `low` for lower-cost rendering, or `high` to…auto | low | high

InputImageContentobject

An image input to the model. Learn about [image inputs](https://developers.openai.com/api/docs/guides/images-vision).

type*enumThe type of the input item. Always `input_image`.input_image · default: "input_image"
image_urlstringThe URL of the image to be sent to the model. A fully qualified URL or base64 encoded image in a data URL.format: uri · nullable
file_idstringThe ID of the file to be sent to the model.nullable
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
prompt_cache_breakpointPromptCacheBreakpointConfigMarks the exact end of a reusable prompt prefix. When `ttl` is omitted, the breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is not rounded to a token block.

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.
prompt_cache_breakpointPromptCacheBreakpointConfigMarks the exact end of a reusable prompt prefix. When `ttl` is omitted, the breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is not rounded to a token block.

MCPToolobject

Give the model access to additional tools via remote Model Context Protocol (MCP) servers. [Learn more about MCP](https://developers.openai.com/api/docs/guides/tools-connectors-mcp).

type*enumThe type of the MCP tool. Always `mcp`.mcp
server_label*stringA label for this MCP server, used to identify it in tool calls.
server_urlstringThe URL for the MCP server. One of `server_url`, `connector_id`, or `tunnel_id` must be provided.format: uri
connector_idenumIdentifier for service connectors, like those available in ChatGPT. One of `server_url`, `connector_id`, or `tunnel_id` must be provided. Learn more about service connectors [here](https://developers.openai.com/api/docs/guides/tools-connectors-mcp#connectors).connector_dropbox | connector_gmail | connector_googlecalendar | connector_googledrive | connector_microsoftteams | connector_outlookcalendar · +2 more · deprecated
tunnel_idstringThe Secure MCP Tunnel ID to use instead of a direct server URL. One of `server_url`, `connector_id`, or `tunnel_id` must be provided.
authorizationstringAn OAuth access token that can be used with a remote MCP server, either with a custom MCP server URL or a service connector. Your application must handle the OAuth authorization flow and provide the token here.
server_descriptionstringOptional description of the MCP server, used to provide more context.
headersobjectOptional HTTP headers to send to the MCP server. Use for authentication or other purposes.nullable
allowed_toolsstring[] | MCP tool filterList of allowed tool names or a filter object.nullable
allowed_callersCallableToolAllowedCaller[]The tool invocation context(s).items ≥ 1 · nullable
require_approvalMCP tool approval filter | enumSpecify which of the MCP server's tools require approval.default: "always" · nullable
defer_loadingbooleanWhether this MCP tool is deferred and discovered via tool search.

MCPToolFilterobject

A filter object to specify which tools are allowed.

tool_namesstring[]List of allowed tool names.
read_onlybooleanIndicates whether or not a tool modifies data or is read-only. If an MCP server is [annotated with `readOnlyHint`](https://modelcontextprotocol.io/specification/2025-06-18/schema#toolannotations-readonlyhint), it will match this filter.

NoiseReductionTypeenum

Type of noise reduction. `near_field` is for close-talking microphones such as headphones, `far_field` is for far-field microphones such as laptop or conference room microphones.

near_field | far_field

Promptobject

Reference to a prompt template and its variables. [Learn more](https://developers.openai.com/api/docs/guides/text?api-mode=responses#version-prompts-in-code).

id*stringThe unique identifier of the prompt template to use.
versionstringOptional version of the prompt template.nullable
variablesobjectOptional 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

PromptCacheBreakpointConfigobject

Marks the exact end of a reusable prompt prefix. When `ttl` is omitted, the breakpoint inherits the request's `prompt_cache_options.ttl`; the boundary is not rounded to a token block.

mode*enumThe breakpoint mode. Always `explicit`.explicit · default: "explicit"
ttlenumThe minimum lifetime of this cache breakpoint. Defaults to the request TTL.30m | 12h

RealtimeAudioFormatsPCM audio format | PCMU audio format | PCMA audio format

RealtimeFunctionToolobject

typeenumThe type of the tool, i.e. `function`.function
namestringThe name of the function.
descriptionstringThe description of the function, including guidance on when and how to call it, and guidance about what to tell the user when calling (if anything).
parametersobjectParameters of the function in JSON Schema.

RealtimeNoiseReductionStrengthnumber

Input noise suppression strength. Higher values apply more suppression. Defaults to 1 when noise reduction is first enabled. Omitting strength from a session update preserves the current strength.

0 ≤ n ≤ 1 · default: 1

RealtimeReasoningobject

Configuration for reasoning-capable Realtime models such as `gpt-realtime-2`.

effortenumConstrains effort on reasoning for reasoning-capable Realtime models such as `gpt-realtime-2`.minimal | low | medium | high | xhigh · default: "low"

RealtimeReasoningEffortenum

Constrains effort on reasoning for reasoning-capable Realtime models such as `gpt-realtime-2`.

minimal | low | medium | high | xhigh · default: "low"

RealtimeTruncationenum | Retention ratio truncation

When the number of tokens in a conversation exceeds the model's input token limit, the conversation be truncated, meaning messages (starting from the oldest) will not be included in the model's context. A 32k context model with 4,096 max output tokens can only…

RealtimeTurnDetectionServer VAD | Semantic VAD

Configuration for turn detection, ether Server VAD or Semantic VAD. This can be set to `null` to turn off, in which case the client must manually trigger model response.

nullable

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.

nullable

ToolChoiceFunctionobject

Use this option to force the model to call a specific function.

type*enumFor function calling, the type is always `function`.function
name*stringThe name of the function to call.

ToolChoiceMCPobject

Use this option to force the model to call a specific tool on a remote MCP server.

type*enumFor MCP tools, the type is always `mcp`.mcp
server_label*stringThe label of the MCP server to use.
namestringThe name of the tool to call on the server.nullable

ToolChoiceOptionsenum

Controls which (if any) tool is called by the model.

none | auto | required

VoiceIdsOrCustomVoicestring | enum | object

A built-in voice name or a custom voice reference.

VoiceIdsSharedstring | enum

Validate a payload

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