Skip to main content
POST
/
v1
/
messages
curl https://api.deerapi.com/v1/messages \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <DEERAPI_KEY>" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "system": "You are a helpful assistant.",
    "messages": [
      {"role": "user", "content": "Hello, world"}
    ]
  }'
{
  "id": "<string>",
  "type": "message",
  "role": "assistant",
  "model": "<string>",
  "content": [
    {
      "type": "text",
      "text": "<string>",
      "thinking": "<string>",
      "signature": "<string>",
      "id": "<string>",
      "name": "<string>",
      "input": {},
      "citations": [
        {}
      ]
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 123,
    "output_tokens": 123,
    "cache_creation_input_tokens": 123,
    "cache_read_input_tokens": 123,
    "cache_creation": {
      "ephemeral_5m_input_tokens": 123,
      "ephemeral_1h_input_tokens": 123
    },
    "inference_geo": "<string>",
    "server_tool_use": {
      "web_search_requests": 123,
      "web_fetch_requests": 123
    },
    "service_tier": "<string>"
  },
  "container": {
    "id": "<string>",
    "expires_at": "<string>"
  },
  "stop_sequence": "<string>"
}

概述

通过 DeerAPI 调用 Anthropic Claude Messages 接口。支持发送包含文本和/或图像内容的结构化消息列表,模型将生成对话中的下一条消息。Messages API 可用于单轮查询或无状态的多轮对话。 此接口仅支持 Claude 模型,请在模型列表与定价中查看所有可用模型。
仅支持 Claude 模型 — 如需使用 GPT、Gemini 等模型,请使用 Chat Completions 接口。

重要说明

扩展思考(Extended Thinking) — 使用 thinking 参数时,最低预算为 1,024 tokens。扩展思考消耗的 tokens 计入 max_tokens 限制。
努力程度控制(Effort) — 使用 output_config.effort 参数可以控制 Claude 的回答深度。设为 "low" 可获得快速简短回答,"high" 则获得更深入详细的回答。

参考文档

接口详细用法请参阅官方文档:

Authorizations

Authorization
string
header
required

Bearer token authentication. Use your DeerAPI key.

Body

application/json

兼容 Anthropic Claude Messages。这个接口只适用于 Claude 模型。和 OpenAI Chat Completions 最大的区别在于:系统提示走顶层 system,消息角色只用 user/assistant,扩展思考、服务器工具、Prompt Caching 等能力也主要在这里配置。

model
string
default:claude-sonnet-4-6
required

要调用的 Claude 模型 ID。常用选择是 claude-sonnet-4-6(通用主力)、claude-opus-4-6(更强推理)等。

messages
object[]
required

对话历史。Claude 的消息角色只有 userassistant;系统级约束不要塞进这里,而是放到顶层 system。如果出现连续同角色消息,Claude 会按自己的规则合并理解。

max_tokens
integer
default:1024
required

本轮最多生成多少 token。对 Claude 来说,这个上限也会约束 extended thinking 的预算占用,所以如果你启用了 thinking,通常要给得更宽裕。

cache_control
object

顶层缓存控制。设置后会自动在请求中最后一个可缓存块上添加 cache_control 标记,省去手动在每个内容块上单独设置的麻烦。

container
string

容器标识符。需要在多次请求之间复用工具环境、代码执行状态或已上传文件时传入容器 ID。

inference_geo
string

指定推理处理的地理区域。不传时使用工作区默认设置。

context_management
object

上下文管理策略。适合精细控制跨轮调用时是否保留工具结果、缓存片段或其他中间状态。

mcp_servers
object[]

本次请求允许 Claude 访问的 MCP 服务器列表。只有在你已经接入 MCP 工作流时才需要传。

metadata
object

请求元数据。最常见的是传 user_id 做终端用户追踪与风控,建议使用匿名化后的内部 ID。

output_config
object

Claude 输出配置。最常见用法是用 effort 控制回答深度,或用 format 约束 JSON 输出结构。

service_tier
enum<string>

服务档位。auto 允许系统自行选择,standard_only 表示只走标准容量。

Available options:
auto,
standard_only
stop_sequences
string[]

自定义停止序列。适合你已经固定了模板边界、分隔符或输出终止标记的场景。

stream
boolean

是否启用 SSE 流式输出。对于长回答、工具链可视化、thinking 过程观察都很实用。

system

系统提示。Claude 不支持把系统提示写成 messages 里的 system 角色,所以请统一写在这里。既可以直接传字符串,也可以传带 cache_control 的内容块数组。

temperature
number

采样温度,范围 0-1。越低越稳定,越高越有发散性。分析、抽取、判别任务建议降低。

Required range: 0 <= x <= 1
thinking
object

Claude 扩展思考配置。启用后会消耗 max_tokens 配额,并要求至少留出 1024 个 thinking budget。更适合复杂推理、审查和规划任务。

tool_choice
object

控制 Claude 如何使用工具。默认通常是自动判断。

tools
object[]

Claude 可调用的工具列表。既可以是你自定义的客户端函数工具,也可以是 Claude 原生服务器工具,例如 Web Search、Web Fetch、Code Execution 等。

top_k
integer

Top-K 采样。高级场景才建议使用;常规业务一般只调 temperature 即可。

top_p
number

核采样阈值,范围 0-1。更适合精细控制候选词覆盖面。

Required range: 0 <= x <= 1

Response

200 - application/json

Successful Response

id
string
required

消息的唯一标识符,格式为 msg_ 前缀

type
enum<string>
required

对象类型,始终为 "message"

Available options:
message
role
enum<string>
required

消息发送者的角色,始终为 "assistant"

Available options:
assistant
model
string
required

生成此响应的具体模型名称和版本,例如 "claude-sonnet-4-6-20250514"

content
object[]
required

消息内容块数组。可包含 text(文本)、thinking(思考过程,启用 extended thinking 时)、tool_use(工具调用)等类型。

stop_reason
enum<string>
required

模型停止生成的原因: end_turn(正常结束)、max_tokens(达到 token 上限)、stop_sequence(匹配停止序列)、tool_use(调用工具)、pause_turn(容器模式暂停)、refusal(内容拒绝)

Available options:
end_turn,
max_tokens,
stop_sequence,
tool_use,
pause_turn,
refusal
usage
object
required

API 调用的 token 使用统计

container
object

容器信息(如果请求中使用了容器)

stop_sequence
string | null

触发停止的自定义文本序列(如果 stop_reasonstop_sequence),否则为 null