id: String

The unique ID of the agent message.

author: String

The sending agent identity.

content: Array[BetaResponseInputText { text, type, prompt_cache_breakpoint } | BetaResponseOutputText { annotations, text, type, logprobs } | Text{ text, type} | 7 more]

Encrypted content sent between agents.

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 BetaResponseOutputText { annotations, text, type, logprobs }

A text output from the model.

annotations: Array[FileCitation{ file_id, filename, index, type} | URLCitation{ end_index, start_index, title, 2 more} | ContainerFileCitation{ container_id, end_index, file_id, 3 more} | FilePath{ file_id, index, type}]

The annotations of the text output.

One of the following:
class FileCitation { file_id, filename, index, type }

A citation to a file.

file_id: String

The ID of the file.

filename: String

The filename of the file cited.

index: Integer

The index of the file in the list of files.

type: :file_citation

The type of the file citation. Always file_citation.

class URLCitation { end_index, start_index, title, 2 more }

A citation for a web resource used to generate a model response.

end_index: Integer

The index of the last character of the URL citation in the message.

start_index: Integer

The index of the first character of the URL citation in the message.

title: String

The title of the web resource.

type: :url_citation

The type of the URL citation. Always url_citation.

url: String

The URL of the web resource.

formaturi
class ContainerFileCitation { container_id, end_index, file_id, 3 more }

A citation for a container file used to generate a model response.

container_id: String

The ID of the container file.

end_index: Integer

The index of the last character of the container file citation in the message.

file_id: String

The ID of the file.

filename: String

The filename of the container file cited.

start_index: Integer

The index of the first character of the container file citation in the message.

type: :container_file_citation

The type of the container file citation. Always container_file_citation.

class FilePath { file_id, index, type }

A path to a file.

file_id: String

The ID of the file.

index: Integer

The index of the file in the list of files.

type: :file_path

The type of the file path. Always file_path.

text: String

The text output from the model.

type: :output_text

The type of the output text. Always output_text.

logprobs: Array[Logprob{ token, bytes, logprob, top_logprobs}]
token: String
bytes: Array[Integer]
logprob: Float
top_logprobs: Array[TopLogprob{ token, bytes, logprob}]
token: String
bytes: Array[Integer]
logprob: Float
class Text { text, type }

A text content.

text: String
type: :text
class SummaryText { text, type }

A summary text from the model.

text: String

A summary of the reasoning output from the model so far.

type: :summary_text

The type of the object. Always summary_text.

class ReasoningText { text, type }

Reasoning text from the model.

text: String

The reasoning text from the model.

type: :reasoning_text

The type of the reasoning text. Always reasoning_text.

class BetaResponseOutputRefusal { refusal, type }

A refusal from the model.

refusal: String

The refusal explanation from the model.

type: :refusal

The type of the refusal. Always refusal.

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 ComputerScreenshot { detail, file_id, image_url, 2 more }

A screenshot of a computer.

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

The detail level of the screenshot 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
file_id: String

The identifier of an uploaded file that contains the screenshot.

image_url: String

The URL of the screenshot image.

formaturi
type: :computer_screenshot

Specifies the event type. For a computer screenshot, this property is always set to computer_screenshot.

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.

class EncryptedContent { encrypted_content, type }

Opaque encrypted content that Responses API decrypts inside trusted model execution.

encrypted_content: String

Opaque encrypted content.

type: :encrypted_content

The type of the input item. Always encrypted_content.

recipient: String

The destination agent identity.

type: :agent_message

The type of the item. Always agent_message.

agent: Agent{ agent_name}

The agent that produced this item.

agent_name: String

The canonical name of the agent that produced this item.