Claude Messages API
/v1/messages 请求实用参考:必需请求头、request body 格式、消息角色和 Claude 响应结构。
更新于:2026 年 7 月 25 日。
Endpoint 与请求头
Claude API Tech 支持 Anthropic 兼容的 Messages API。向以下 endpoint 发送 POST 请求,并且只在服务器端保存 API 密钥。
POST
https://api.llm-gate.tech/v1/messages
| Header | Value |
|---|---|
| x-api-key | Claude API Tech API 密钥 |
| anthropic-version | API 版本,例如 2023-06-01 |
| content-type | application/json |
OpenAI-compatible API
对于使用 OpenAI 格式的客户端,可使用兼容 endpoint:
https://api.llm-gate.tech/v1/chat/completions第一个 Claude API 请求
最小请求包含 model、max_tokens 和 messages 数组。标签页提供同一请求的 cURL、Python 和 TypeScript 示例。
curl https://api.llm-gate.tech/v1/messages \ --header "x-api-key: $CLAUDE_API_KEY" \ --header "anthropic-version: 2023-06-01" \ --header "content-type: application/json" \ --data '{ "model": "claude-sonnet-4-6", "max_tokens": 512, "messages": [ {"role": "user", "content": "Explain SSE in one paragraph"} ] }'Request body 格式
| 字段 | 必需 | 用途 |
|---|---|---|
| model | 是 | 可用 Claude 模型的准确 ID。 |
| max_tokens | 是 | 响应允许生成的最大 token 数。 |
| messages | 是 | 由 user 和 assistant 消息组成的对话历史。 |
| system | 否 | 从请求开始生效的指令。 |
| stream | 否 | 设为 true 后通过 SSE 返回流式响应。 |
| tools | 否 | 允许模型调用的工具定义。 |
Streaming
在 request body 中设置 stream: true,即可接收 Server-Sent Events。 详情请参阅 Streaming API 页面。
Messages 角色与格式
Messages API 是无状态的。继续对话时,必须在每次请求中重新发送所需历史。
user— 用户发送的指令或消息。assistant— Claude 之前的响应或保存的对话轮次。system— 对于从开头生效的指令,请使用顶层 system 字段。content— 可以是字符串,也可以是 text、image、tool_use 和 tool_result blocks 数组。
Messages API 是无状态的
API 不会记住上一次调用。请在应用中保存历史,删除不需要的旧消息,并确保完整数组不超过模型上下文窗口。
Messages API 响应格式
成功响应包含 content 数组、stop_reason,以及 usage 中的实际 token 用量。
JSON
{
"id": "msg_...",
"type": "message",
"role": "assistant",
"content": [
{"type": "text", "text": "SSE is a one-way HTTP stream..."}
],
"model": "claude-sonnet-4-6",
"stop_reason": "end_turn",
"usage": {
"input_tokens": 18,
"output_tokens": 42
}
}- content — 响应 blocks;生成文本通常位于 type: text block。
- stop_reason — 生成结束原因,例如 end_turn、max_tokens 或 tool_use。
- usage.input_tokens 和 usage.output_tokens — 请求实际消耗的 token。