Messages schemas

The full schema and model definitions referenced by the Messages endpoints. Each endpoint page links here for the detailed shape of its request and response objects.

Schemas

Anthropic Content Block

Anthropic Messages content block. Supported block types are text, image, video (Meta extension), document, tool_use, tool_result, server_tool_use, thinking, and redacted_thinking. cache_control prompt-cache controls are accepted to improve cache hit rates. Unsupported block types return an invalid_request_error.

FieldTypeRequiredDescription
typestringYesContent block discriminator, such as text, image, video, document, tool_use, or tool_result.

Anthropic Context Management Config

Anthropic beta context-management config. Known edit types are accepted for compatibility; no server-side context edits are applied.

FieldTypeRequiredDescription
editsarray of objectNo

Anthropic Count Tokens Request

FieldTypeRequiredDescription
modelstringYes
max_tokensintegerNo(minimum: 0)
messagesarray of AnthropicInputMessageYes(minItems: 1)
systemstring | array of AnthropicContentBlockNo
streambooleanNo(default: false)
toolsarray of AnthropicToolNo
tool_choiceAnthropicToolChoiceNo
metadataobjectNo
temperaturenumberNo(minimum: 0, maximum: 1)
top_pnumberNo(minimum: 0, maximum: 1)
top_kintegerNo
thinkingobjectNo
stop_sequencesarray of stringNo
service_tierstringNo
cache_controlobjectNo
cache_control.typeenum ('ephemeral')No
cache_control.ttlenum ('5m')No
context_managementAnthropicContextManagementConfig | nullNo
containerobjectNo
inference_geostringNo
output_configAnthropicOutputConfigNo

Anthropic Count Tokens Response

FieldTypeRequiredDescription
input_tokensintegerYesNumber of input tokens in the supplied Messages request.

Anthropic Input Message

Anthropic Messages input message.

FieldTypeRequiredDescription
roleenum ('user', 'assistant', 'system', 'developer')Yes
contentstring | array of AnthropicContentBlockYes

Anthropic Json Output Format

Anthropic JSON structured-output format.

FieldTypeRequiredDescription
typeenum ('json_schema')Yes
schemaobjectYes

Anthropic Message

Anthropic-compatible assistant message response.

FieldTypeRequiredDescription
idstringYes
typeenum ('message')Yes
roleenum ('assistant')Yes
contentarray of AnthropicContentBlockYes
modelstringYes
stop_reasonenum ('end_turn', 'max_tokens', 'stop_sequence', 'tool_use', 'pause_turn', 'refusal')Yes
stop_sequencestring | nullYes
usageAnthropicUsageYes

Anthropic Message Request

FieldTypeRequiredDescription
modelstringYes
max_tokensintegerYes(minimum: 0)
messagesarray of AnthropicInputMessageYes(minItems: 1)
systemstring | array of AnthropicContentBlockNo
streambooleanNo(default: false)
toolsarray of AnthropicToolNo
tool_choiceAnthropicToolChoiceNo
metadataobjectNo
temperaturenumberNo(minimum: 0, maximum: 1)
top_pnumberNo(minimum: 0, maximum: 1)
top_kintegerNo
thinkingobjectNo
stop_sequencesarray of stringNo
service_tierstringNo
cache_controlobjectNo
cache_control.typeenum ('ephemeral')No
cache_control.ttlenum ('5m')No
context_managementAnthropicContextManagementConfig | nullNo
containerobjectNo
inference_geostringNo
output_configAnthropicOutputConfigNo

Anthropic Message Request Base

Anthropic Messages request accepted at /v1/messages.

FieldTypeRequiredDescription
modelstringYes
max_tokensintegerNo(minimum: 0)
messagesarray of AnthropicInputMessageYes(minItems: 1)
systemstring | array of AnthropicContentBlockNo
streambooleanNo(default: false)
toolsarray of AnthropicToolNo
tool_choiceAnthropicToolChoiceNo
metadataobjectNo
temperaturenumberNo(minimum: 0, maximum: 1)
top_pnumberNo(minimum: 0, maximum: 1)
top_kintegerNo
thinkingobjectNo
stop_sequencesarray of stringNo
service_tierstringNo
cache_controlobjectNo
cache_control.typeenum ('ephemeral')No
cache_control.ttlenum ('5m')No
context_managementAnthropicContextManagementConfig | nullNo
containerobjectNo
inference_geostringNo
output_configAnthropicOutputConfigNo

Anthropic Output Config

Anthropic output controls. effort sets the reasoning effort; max selects the strongest available effort.

FieldTypeRequiredDescription
effortenum ('low', 'medium', 'high', 'xhigh', 'max')No
formatAnthropicJsonOutputFormatNo

Anthropic Stream Event

Anthropic Messages server-sent event. Stream event names include message_start, content_block_start, content_block_delta, content_block_stop, message_delta, message_stop, and error.

Type: object

Anthropic Tool

Anthropic tool definition. Custom (developer) tools are supported; supported hosted tools are accepted, and unsupported hosted tools return an invalid_request_error.

FieldTypeRequiredDescription
typestringNo
namestringNo
descriptionstringNo
input_schemaobjectNo

Anthropic Tool Choice

FieldTypeRequiredDescription
typeenum ('auto', 'any', 'none', 'tool')Yes
namestringNo
disable_parallel_tool_usebooleanNo

Anthropic Usage

FieldTypeRequiredDescription
input_tokensintegerYes
output_tokensintegerYes
cache_creation_input_tokensintegerNo
cache_read_input_tokensintegerNo
output_tokens_detailsobjectNo
output_tokens_details.thinking_tokensintegerNo