Skip to main content
POST
CometAPI нативно підтримує Anthropic Messages API, надаючи вам прямий доступ до моделей Claude зі специфічними для Anthropic можливостями. Використовуйте цей endpoint для можливостей Claude, таких як adaptive thinking, prompt caching і effort control.
Використовуйте офіційний довідник Anthropic Messages API як авторитетне джерело для повного списку параметрів, схеми відповіді та поведінки, специфічної для Claude. Ця сторінка CometAPI пояснює, як надіслати такий формат запиту через CometAPI.
Параметри запиту Anthropic і поля відповіді можуть змінюватися в міру розвитку можливостей Claude. Перевіряйте документацію Anthropic Messages API, щоб отримати найсвіжіший повний список параметрів і поведінку, специфічну для провайдера.
Багато новіших моделей Claude відхиляють нестандартні значення temperature, top_p і top_k у Messages API. Не вказуйте ці поля семплювання, якщо ви не підтвердили їхню підтримку для вибраної моделі. Якщо модель повертає помилку про непідтримуваний або застарілий параметр, видаліть це поле із запиту.
Для автентифікації підтримуються заголовки x-api-key і Authorization: Bearer. Офіційні SDK Anthropic за замовчуванням використовують x-api-key.

Швидкий старт

Щоб використовувати офіційний SDK Anthropic із CometAPI, задайте base URL:

Керування adaptive thinking

Використовуйте adaptive thinking з output_config.effort, щоб контролювати, скільки роботи Claude виконує для відповіді. Новіші моделі Claude відхиляють застарілу ручну форму thinking thinking={"type": "enabled", "budget_tokens": ...}.
Токени thinking зараховуються до вашого ліміту max_tokens. Установіть max_tokens достатньо великим як для thinking, так і для фінальної відповіді, коли використовуєте вищі рівні effort.

Кешування Prompt

Щоб зменшити затримку та вартість у наступних запитах, кешуйте великі system Prompt або префікси розмови. Додайте cache_control до блоків content, які потрібно кешувати:
Використання кешу відображається в полі usage відповіді:
  • cache_creation_input_tokens — tokens, записані в кеш (тарифікуються за вищою ставкою)
  • cache_read_input_tokens — tokens, прочитані з кешу (тарифікуються за зниженою ставкою)
Кешування Prompt потребує мінімум 1,024 tokens у кешованому блоці content. Контент, коротший за це, не буде кешовано.

Потокові Responses

Щоб передавати Responses потоком за допомогою Server-Sent Events (SSE), встановіть stream: true. Події надходять у такому порядку:
  1. message_start — містить метадані повідомлення та початкове usage
  2. content_block_start — позначає початок кожного блоку content
  3. content_block_delta — інкрементальні фрагменти тексту (text_delta)
  4. content_block_stop — позначає кінець кожного блоку content
  5. message_delta — фінальний stop_reason і повне usage
  6. message_stop — сигналізує про завершення потоку

Керування effort

Щоб керувати тим, скільки effort Claude вкладає в генерування відповіді, використовуйте output_config.effort:

Використання server tools

Claude підтримує серверні інструменти, які працюють в інфраструктурі Anthropic:
Отримання й аналіз контенту з URL:

Приклад відповіді

Типова відповідь від Anthropic endpoint у CometAPI:

Порівняння з OpenAI-compatible endpoint

Авторизації

x-api-key
string
header
обов'язково

Your CometAPI key passed via the x-api-key header. Authorization: Bearer $COMETAPI_KEY is also supported.

Заголовки

anthropic-version
string
за замовчуванням:2023-06-01

The Anthropic API version to use. Defaults to 2023-06-01.

Приклад:

"2023-06-01"

anthropic-beta
string

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.

Тіло

application/json
model
string
обов'язково

The Claude model to use. See the Models page for available Claude model IDs.

Приклад:

"claude-sonnet-5"

messages
object[]
обов'язково

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.

max_tokens
integer
обов'язково

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 >= 1
Приклад:

1024

system

System prompt providing context and instructions to Claude. Can be a plain string or an array of content blocks (useful for prompt caching).

temperature
number
за замовчуванням:1

Model-dependent sampling control. Many newer Claude models reject non-default temperature values on the Messages API. Omit this field unless you have verified that the selected model accepts it; if the model returns an unsupported or deprecated-parameter error, remove the field instead of substituting another sampling value.

Необхідний діапазон: 0 <= x <= 1
Приклад:

1

top_p
number

Model-dependent nucleus sampling control. Many newer Claude models reject non-default top_p values on the Messages API. Omit this field unless you have verified support for the selected model. Do not set temperature and top_p together.

Необхідний діапазон: 0 <= x <= 1
Приклад:

1

top_k
integer

Model-dependent top-k sampling control. Many newer Claude models reject non-default top_k values on the Messages API. Omit this field unless you have verified support for the selected model.

Необхідний діапазон: x >= 0
Приклад:

0

stream
boolean
за замовчуванням:false

If 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.

stop_sequences
string[]

Custom strings that cause the model to stop generating when encountered. The stop sequence is not included in the response.

thinking
object

Controls Claude thinking when the selected model supports a configurable thinking mode. For newer adaptive-thinking models, use {"type":"adaptive"} with output_config.effort, or omit thinking when adaptive thinking is already the model default. Manual {"type":"enabled","budget_tokens":...} is supported only by older models and is rejected by newer Claude models.

tools
object[]

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.

tool_choice
object

Controls how the model uses tools.

metadata
object

Request metadata for tracking and analytics.

output_config
object

Configuration for response effort and output format. Field support depends on the selected Claude model.

service_tier
enum<string>

The service tier to use. auto tries priority capacity first, standard_only uses only standard capacity.

Доступні опції:
auto,
standard_only

Відповідь

200 - application/json

Successful response. When stream is true, the response is a stream of SSE events.

id
string

Unique identifier for this message (e.g., msg_01XFDUDYJgAACzvnptvVoYEL).

type
enum<string>

Always message.

Доступні опції:
message
role
enum<string>

Always assistant.

Доступні опції:
assistant
content
object[]

The response content blocks. May include text, thinking, tool_use, and other block types.

model
string

The specific model version that generated this response, such as claude-sonnet-5.

stop_reason
enum<string>

Why the model stopped generating. refusal can be returned as a successful HTTP response when the model declines a request.

Доступні опції:
end_turn,
max_tokens,
stop_sequence,
tool_use,
pause_turn,
refusal
stop_sequence
string | null

The stop sequence that caused the model to stop, if applicable.

usage
object

Token usage statistics.