跳转到主要内容
POST
Claude Messages API
  • 完全兼容 Claude Messages API 格式
  • 支持多轮对话和单次查询
  • 支持文本和图像等多模态内容
参数详情请参阅 Anthropic Messages API 官方文档: https://platform.claude.com/docs/en/api/messages/create

使用示例

基础对话

流式响应

工具使用

带缓存的结构化输出

视觉理解

注意事项

  • 使用 max_tokens 控制输出长度。
  • 思考 token 计入 max_tokens。
  • 图像输入可以使用受支持的 base64 媒体数据。

认证

在以下任一请求头中传入 API Key:
借助 x-api-key,官方 Anthropic SDK 只需把 base URL 改为 https://api.poyo.ai 即可使用。

响应

非流式请求直接返回 Anthropic Message 对象,不带 code / data 包装。启用扩展思考时,content 中可能在 text 块之前包含 thinking 块,usage.output_tokens_details.thinking_tokens 统计其 token 数。

流式输出

设置 "stream": true 时,响应遵循 Anthropic 事件格式:每个事件包含一行 event: 和一行 data:。流以 message_stop 结束,没有 [DONE] 标记。
  • 文本在 delta.type: "text_delta" 的 content_block_delta 事件中返回。
  • message_delta 携带 stop_reason 和最终的 usage。

错误

  • 401:缺少 API Key 或 API Key 无效。
  • 400:参数无效,或模型不支持 Anthropic Messages。错误信息会列出支持的 URI。
  • 404:未知的 model id。
响应体示例见错误码,哪些模型支持此格式见 LLM 模型。

授权

x-api-key
string
header
必填

API Key 认证。该接口也接受 Authorization: Bearer YOUR_API_KEY。

创建 API Key:登录 PoYo,进入 仪表盘 → API 密钥(poyo.ai/zh/dashboard/api-key),点击创建 Key。

在请求头中添加:

请求体

application/json
model
string
必填

模型名称。示例:claude-sonnet-4-5-20250929。

示例:

"claude-sonnet-4-5-20250929"

messages
object[]
必填

按顺序排列的对话消息列表。每条消息包含 role 和 content。user 用于用户输入,assistant 用于多轮对话中模型之前的输出。示例:[{"role": "user", "content": "Summarize the purpose of feature canary releases in two sentences."}]。

max_tokens
integer

生成的最大 token 数。

必填范围: x >= 1
示例:

1024

system

助手的系统提示词。支持字符串或结构化文本块。

示例:

"You are a product announcement editor, keep it objective and concise."

cache_control
object

顶层缓存控制会自动为请求中最后一个可缓存块添加 cache_control 标记。

stream
boolean

是否使用流式输出。

示例:

false

stop_sequences
string[]

停止序列。模型遇到其中任一字符串时停止。

metadata
object

附加元数据,例如 user_id。

output_config
object

模型输出的配置选项,例如输出格式和投入程度(effort)。

thinking
object

Claude 扩展思考配置。支持扩展思考的 Claude 模型可用。思考 token 计入 max_tokens。

tools
object[]

模型可用的工具定义。

tool_choice

控制工具使用行为。示例:auto,或 {"type": "tool", "name": "get_weather"} 这样的对象。

示例:

"auto"

响应

消息已创建

id
string
示例:

"msg_013zva2CMHNLnXJNN3QKQ2EF"

type
string
示例:

"message"

role
string
示例:

"assistant"

content
object[]
model
string
示例:

"claude-sonnet-4-5-20250929"

stop_reason
string
示例:

"end_turn"

stop_sequence
string | null
usage
object