id: String

The unique ID of the message input.

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

One of the following:
class BetaResponseInputText { 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: PromptCacheBreakpoint{ 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.

class BetaResponseInputImage { detail, type, file_id, 2 more }

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

detail: :low | :high | :auto | :original

The detail level of the image to be sent to the model. One of high, low, auto, or original. Defaults to auto.

One of the following:
:low
:high
:auto
:original
type: :input_image

The type of the input item. Always input_image.

file_id: String

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

image_url: String

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

formaturi
prompt_cache_breakpoint: PromptCacheBreakpoint{ 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.

class BetaResponseInputFile { 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: :auto | :low | :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.

One of the following:
:auto
:low
:high
file_data: String

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

file_id: String

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

file_url: String

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

formaturi
filename: String

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

prompt_cache_breakpoint: PromptCacheBreakpoint{ 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 | :system | :developer

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

One of the following:
:user
:system
:developer
type: :message

The type of the message input. Always set to message.

agent: Agent{ agent_name}

The agent that produced this item.

agent_name: String

The canonical name of the agent that produced this item.

status: :in_progress | :completed | :incomplete

The status of item. One of in_progress, completed, or incomplete. Populated when items are returned via API.

One of the following:
:in_progress
:completed
:incomplete