Represents a streamed chunk object of a Messages response returned by model, based on the provided input.
event: message_start
data: {
"type": "message_start",
"message": {
"id": "msg_4b71d12c86d94e719c7e3984a7bb7941",
"type": "message",
"role": "assistant",
"content": [],
"stop_reason": null,
"stop_sequence": null,
"usage": { "input_tokens": 0, "output_tokens": 0, "cache_read_input_tokens": 0 }
}
}
event: content_block_start
data: {
"type": "content_block_start",
"index": 0,
"content_block": { "type": "text", "text": "" }
}
event: content_block_delta
data: {
"type": "content_block_delta",
"index": 0,
"delta": { "type": "text_delta", "text": "Hello" }
}
event: content_block_delta
data: {
"type": "content_block_delta",
"index": 0,
"delta": { "type": "text_delta", "text": ", how can I help?" }
}
event: content_block_stop
data: { "type": "content_block_stop", "index": 0 }
event: message_delta
data: {
"type": "message_delta",
"delta": { "stop_reason": "end_turn", "stop_sequence": null },
"usage": { "output_tokens": 11 }
}
event: message_stop
data: { "type": "message_stop" }
event: message_start chunk object
Initial response envelope for this streamed message.
Unique ID of the response message.
Object type, always message.
Author role of streamed output, always assistant.
Initialized as an empty array at start. Populated by subsequent block events.
Stop reason placeholder at start.Available options: end_turn, max_tokens, tool_use, stop_sequence
Matched stop sequence placeholder at start.
Running usage object.
Number of billed input tokens.
Number of billed output tokens currently emitted.
Number of cached input tokens read, when applicable.
Model identifier for this response, when available.
event: content_block_start chunk object
Always content_block_start.
Index of the content block in the response content array.
Initial content block payload.
Content block type.Available options: text, thinking, tool_use
Text content when type=text.
Reasoning content when type=thinking.
Optional signature when type=thinking.
Tool call ID when type=tool_use.
Tool name when type=tool_use.
Parsed tool input object when type=tool_use.
event: content_block_delta chunk object
Always content_block_delta.
Index of the content block being updated.
Incremental delta payload.
Delta type.Available options: text_delta, thinking_delta, signature_delta, input_json_delta
Text fragment when type=text_delta.
Reasoning fragment when type=thinking_delta.
Signature fragment when type=signature_delta.
Partial JSON fragment for tool arguments when type=input_json_delta.
event: content_block_stop chunk object
Always content_block_stop.
Index of the block that has finished streaming.
event: message_delta chunk object
Final message-level delta.
Why generation stopped.Available options: end_turn, max_tokens, tool_use, stop_sequence
Matched stop sequence when stop_reason=stop_sequence.
Usage delta object that may be emitted near stream completion.
Input token count delta when included.
Output token count delta when included.
Cached input token count delta when included.
event: message_stop chunk object
Always message_stop. Indicates stream completion.
event: error chunk object
Error payload object.
Error category, such as invalid_request_error.
Human-readable error message.
Request identifier for debugging and support.