content: string or ResponseInputMessageContentList { response_input_text, response_input_image, response_input_file }

Text, image, or audio input to the model, used to generate a response. Can also contain previous assistant responses.

Text input: string

A text input to the model.

response_input_message_content_list: array of ResponseInputContent

A list of one or many input items to the model, containing different content types.

response_input_text: object { text, type, prompt_cache_breakpoint }

A text input to the model.

text: string

The text input to the model.

type: "input_text"

The type of the input item. Always input_text.

prompt_cache_breakpoint: optional object { mode }

Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL from the request’s prompt_cache_options.ttl; the boundary is not rounded to a token block.

mode: "explicit"

The breakpoint mode. Always explicit.

response_input_image: object { detail, type, file_id, 2 more }

An image input to the model. Learn about image inputs.

detail: "low" or "high" or "auto" or "original"

The 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"
type: "input_image"

The type of the input item. Always input_image.

file_id: optional string

The ID of the file to be sent to the model.

image_url: optional string

The URL of the image to be sent to the model. A fully qualified URL or base64 encoded image in a data URL.

prompt_cache_breakpoint: optional object { mode }

Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL from the request’s prompt_cache_options.ttl; the boundary is not rounded to a token block.

mode: "explicit"

The breakpoint mode. Always explicit.

response_input_file: object { type, detail, file_data, 4 more }

A file input to the model.

type: "input_file"

The type of the input item. Always input_file.

detail: optional "auto" or "low" or "high"

The 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 render the file at higher quality. Defaults to auto.

"auto"
"low"
"high"
file_data: optional string

The content of the file to be sent to the model.

file_id: optional string

The ID of the file to be sent to the model.

file_url: optional string

The URL of the file to be sent to the model.

filename: optional string

The name of the file to be sent to the model.

prompt_cache_breakpoint: optional object { mode }

Marks the exact end of a reusable prompt prefix. The breakpoint inherits its TTL from the request’s prompt_cache_options.ttl; the boundary is not rounded to a token block.

mode: "explicit"

The breakpoint mode. Always explicit.

role: "user" or "assistant" or "system" or "developer"

The role of the message input. One of user, assistant, system, or developer.

"user"
"assistant"
"system"
"developer"
phase: optional "commentary" or "final_answer"

Labels an assistant message as intermediate commentary (commentary) or the final answer (final_answer). For models like gpt-5.3-codex and beyond, when sending follow-up requests, preserve and resend phase on all assistant messages — dropping it can degrade performance. Not used for user messages.

"commentary"
"final_answer"
type: optional "message"

The type of the message input. Always message.

"message"