Skip to main content
POST
Create a message

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
model
enum<string>
required

The model used for completion.

Available options:
claude-sonnet-4-6,
claude-sonnet-4-5-20250929,
claude-sonnet-4-20250514,
claude-opus-4-6,
claude-opus-4-5-20251101,
claude-opus-4-1-20250805,
claude-opus-4-20250514,
claude-haiku-4-5-20251001,
claude-3-7-sonnet-20250219,
claude-3-5-sonnet-20241022
Example:

"claude-sonnet-4-6"

messages
object[]
required

List of input messages. Each message includes a role and content.

Minimum array length: 1
Example:
max_tokens
integer
required

Maximum number of tokens to generate before stopping.

Required range: x >= 1
Example:

1024

system

System prompt. Provides context and instructions for Claude.

metadata
object

An object that describes request metadata.

stop_sequences
string[]

Custom text sequences. The model stops generating when it encounters them.

temperature
number
default:1

Randomness injected into the response. Range: 0.0 to 1.0.

Required range: 0 <= x <= 1
Example:

1

top_p
number

Use nucleus sampling. Prefer either temperature or top_p, not both.

Required range: 0 <= x <= 1
top_k
integer

Sample only from the top K options for each subsequent token.

Required range: x >= 0
stream
boolean
default:false

Whether to incrementally stream the response using server-sent events (SSE).

tools
object[]

Tool definitions the model can use.

tool_choice
object

Controls how the model uses the provided tools.

thinking
object

Extended thinking configuration. When enabled, the model thinks deeply before replying.

Response

Message created successfully

id
string
required
Example:

"msg_01XFDUDYJgAACzvnptvVoYEL"

type
string
required
Example:

"message"

role
string
required
Example:

"assistant"

content
object[]
required
Example:
model
string
required
Example:

"claude-sonnet-4-6"

stop_reason
enum<string>
required
Available options:
end_turn,
max_tokens,
stop_sequence,
tool_use,
null
usage
object
required
stop_sequence
string | null