Skip to main content
POST
/
v1
/
messages
Claude messages
curl --request POST \
  --url http://sandbox.mintlify.com/v1/messages \
  --header 'Content-Type: application/json' \
  --header 'anthropic-version: <anthropic-version>' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "model": "claude-sonnet-4-5",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "请总结这张图片里的关键信息"
        }
      ]
    }
  ]
}
'
{
  "id": "msg_01ABCxyz",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-4-5",
  "content": [
    {
      "type": "text",
      "text": "图片中是一张产品宣传海报。"
    }
  ],
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 128,
    "output_tokens": 48
  }
}
Use this section for Claude-native message payloads, multi-turn context, multimodal input, and tool calling.
  • Authenticate with x-api-key and anthropic-version
  • system is a top-level field rather than a message inside messages[]
  • messages[].content uses content blocks and should not be flattened too early
  • Tool use requires explicit tools, and later turns must send back tool_result blocks

Authorizations

x-api-key
string
header
required

Headers

anthropic-version
string
required

Anthropic API version header.

Example:

"2023-06-01"

Body

application/json
model
string
required
Example:

"claude-sonnet-4-5"

max_tokens
integer
required
messages
object[]
required
system
tools
object[]
stream
boolean

Response

Successful Claude message response

id
string
type
enum<string>
Available options:
message
role
enum<string>
Available options:
assistant
model
string
content
object[]
stop_reason
string
stop_sequence
string
usage
object