字段与用途

字段路径位置类型必填填写规则与说明允许值 / 约束示例
content响应 JSONarray否内容块数组。按 type 识别 text / thinking / tool_use 等,不只取 content[0].text。--
content[]响应 JSONobject否数组元素。--
content[].type响应 JSONstring否---
content[].text响应 JSONstring否---
stop_reason响应 JSONstring否可为空。end_turn 为正常结束,tool_use 需要工具回传,max_tokens 表示截断;还可能有 stop_sequence / pause_turn / refusal。可选:end_turn / max_tokens / stop_sequence / tool_use-
usage响应 JSONobject否输入与输出 token 用量;缓存与搜索细分字段按实际响应读取。--
usage.input_tokens响应 JSONinteger否---
usage.output_tokens响应 JSONinteger否---
usage.cache_creation_input_tokens响应 JSONinteger否---
usage.cache_read_input_tokens响应 JSONinteger否---

多轮对话保存整个 content 数组,再作为下一轮 assistant 消息回传;其中的工具 ID、思考签名和内容顺序均需保留。

结构示意

{"id":"msg_example","type":"message","role":"assistant","model":"claude-sonnet-5","content":[{"type":"text","text":"这是结构示意。"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":10,"output_tokens":8}}

这是合成结构示意,不是实际用量或时间承诺。复杂响应可能含 thinking、tool_use、服务器工具与引用。

后续动作

end_turn 可展示完整答案;tool_use 执行并回传工具结果;pause_turn 时保留完整上下文并按服务工具工作流继续;max_tokens 先检查截断再决定是否继续。不要将所有非 end_turn 状态当作同一种失败。

调用与参考

Messages 调用 · 工具回传 · Claude Messages。

常见错误

Messages 不是 choices[0].message。只提取 content[0].text 会丢失工具调用、思考或分散的文字块。