Anthropic Messages
Use the Anthropic Messages API through CometAPI to access Claude models with extended thinking, prompt caching, tool use, web search/fetch, streaming, and effort control.
x-api-key and Authorization: Bearer headers are supported for authentication. The official Anthropic SDKs use x-api-key by default.Quick start
To use the official Anthropic SDK with CometAPI, set the base URL:Enable extended thinking
Enable Claude’s step-by-step reasoning with thethinking parameter. The response includes thinking content blocks showing Claude’s internal reasoning before the final answer.
Cache prompts
To reduce latency and cost on subsequent requests, cache large system prompts or conversation prefixes. Addcache_control to content blocks that should be cached:
usage field:
cache_creation_input_tokens— tokens written to cache (billed at a higher rate)cache_read_input_tokens— tokens read from cache (billed at a reduced rate)
Stream responses
To stream responses using Server-Sent Events (SSE), setstream: true. Events arrive in this order:
message_start— contains the message metadata and initial usagecontent_block_start— marks the beginning of each content blockcontent_block_delta— incremental text chunks (text_delta)content_block_stop— marks the end of each content blockmessage_delta— finalstop_reasonand completeusagemessage_stop— signals the end of the stream
Control effort
To control how much effort Claude puts into generating a response, useoutput_config.effort:
Use server tools
Claude supports server-side tools that run on Anthropic’s infrastructure:- Web Fetch
- Web Search
Response example
A typical response from CometAPI’s Anthropic endpoint:Compare with OpenAI-compatible endpoint
| Feature | Anthropic Messages (/v1/messages) | OpenAI-Compatible (/v1/chat/completions) |
|---|---|---|
| Extended thinking | thinking parameter with budget_tokens | Not available |
| Prompt caching | cache_control on content blocks | Not available |
| Effort control | output_config.effort | Not available |
| Web fetch/search | Server tools (web_fetch, web_search) | Not available |
| Auth header | x-api-key or Bearer | Bearer only |
| Response format | Anthropic format (content blocks) | OpenAI format (choices, message) |
| Models | Claude only | Multi-provider (GPT, Claude, Gemini, etc.) |
Authorizations
Your CometAPI key passed via the x-api-key header. Authorization: Bearer $COMETAPI_KEY is also supported.
Headers
The Anthropic API version to use. Defaults to 2023-06-01.
"2023-06-01"
Comma-separated list of beta features to enable. Examples: max-tokens-3-5-sonnet-2024-07-15, pdfs-2024-09-25, output-128k-2025-02-19.
Body
The Claude model to use. See the Models page for current Claude model IDs.
"claude-sonnet-4-6"
The conversation messages. Must alternate between user and assistant roles. Each message's content can be a string or an array of content blocks (text, image, document, tool_use, tool_result). There is a limit of 100,000 messages per request.
The maximum number of tokens to generate. The model may stop before reaching this limit. When using thinking, the thinking tokens count towards this limit.
x >= 11024
System prompt providing context and instructions to Claude. Can be a plain string or an array of content blocks (useful for prompt caching).
Controls randomness in the response. Range: 0.0–1.0. Use lower values for analytical tasks and higher values for creative tasks. Defaults to 1.0.
0 <= x <= 1Nucleus sampling threshold. Only tokens with cumulative probability up to this value are considered. Range: 0.0–1.0. Use either temperature or top_p, not both.
0 <= x <= 1Only sample from the top K most probable tokens. Recommended for advanced use cases only.
x >= 0If true, stream the response incrementally using Server-Sent Events (SSE). Events include message_start, content_block_start, content_block_delta, content_block_stop, message_delta, and message_stop.
Custom strings that cause the model to stop generating when encountered. The stop sequence is not included in the response.
Enable extended thinking — Claude's step-by-step reasoning process. When enabled, the response includes thinking content blocks before the answer. Requires a minimum budget_tokens of 1,024.
Tools the model may use. Supports client-defined functions, web search (web_search_20250305), web fetch (web_fetch_20250910), code execution (code_execution_20250522), and more.
Controls how the model uses tools.
Request metadata for tracking and analytics.
Configuration for output behavior.
The service tier to use. auto tries priority capacity first, standard_only uses only standard capacity.
auto, standard_only Response
Successful response. When stream is true, the response is a stream of SSE events.
Unique identifier for this message (e.g., msg_01XFDUDYJgAACzvnptvVoYEL).
Always message.
message Always assistant.
assistant The response content blocks. May include text, thinking, tool_use, and other block types.
The specific model version that generated this response (e.g., claude-sonnet-4-6).
Why the model stopped generating.
end_turn, max_tokens, stop_sequence, tool_use, pause_turn The stop sequence that caused the model to stop, if applicable.
Token usage statistics.