← Главная

Claude Messages API

Отправляйте запросы к Claude Opus 4.7 и Sonnet 4.6 через Messages API. OpenAI-совместимый API, примеры кода, форматы запросов и ответов, поддержка стриминга.

Обновлено: 25 июля 2026 года.

Endpoint и заголовки

Claude API Tech поддерживает Anthropic-совместимый Messages API. Отправляйте POST-запрос на endpoint ниже и передавайте API-ключ только на сервере.

POST
https://api.llm-gate.tech/v1/messages
HeaderValue
x-api-keyAPI-ключ Claude API Tech
anthropic-versionВерсия API, например 2023-06-01
content-typeapplication/json

OpenAI-compatible API

Для клиентов, которые работают с форматом OpenAI, доступен совместимый endpoint: https://api.llm-gate.tech/v1/chat/completions

Первый запрос к Claude API

Минимальный запрос содержит model, max_tokens и массив messages. Примеры используют один и тот же запрос в cURL, Python и TypeScript.

curl https://api.llm-gate.tech/v1/messages \  --header "x-api-key: $CLAUDE_API_KEY" \  --header "anthropic-version: 2023-06-01" \  --header "content-type: application/json" \  --data '{    "model": "claude-sonnet-4-6",    "max_tokens": 512,    "messages": [      {"role": "user", "content": "Explain SSE in one paragraph"}    ]  }'

Формат request body

ПолеОбязательноНазначение
modelДаТочный ID доступной модели Claude.
max_tokensДаМаксимальное число токенов в ответе.
messagesДаИстория диалога из сообщений user и assistant.
systemНетИнструкции, действующие с начала запроса.
streamНетtrue включает потоковый ответ через SSE.
toolsНетОписание инструментов, которые может вызвать модель.

Streaming

Установите stream: true в request body, чтобы получать Server-Sent Events. Подробнее на странице Streaming API.

Роли и формат messages

Messages API не хранит состояние разговора. Для продолжения диалога отправляйте нужную историю заново в каждом запросе.

  • userинструкция или сообщение пользователя.
  • assistantпредыдущий ответ Claude или сохранённая часть истории.
  • systemдля начальной системной инструкции используйте отдельное верхнеуровневое поле system.
  • contentможет быть строкой или массивом блоков text, image, tool_use и tool_result.

Messages API работает без состояния

API не запоминает предыдущий вызов. Храните историю на своей стороне, удаляйте ненужные старые сообщения и следите, чтобы весь массив помещался в контекстное окно модели.

Формат ответа Messages API

Успешный ответ содержит массив content, причину остановки stop_reason и фактический расход токенов в usage.

JSON
{
  "id": "msg_...",
  "type": "message",
  "role": "assistant",
  "content": [
    {"type": "text", "text": "SSE is a one-way HTTP stream..."}
  ],
  "model": "claude-sonnet-4-6",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 18,
    "output_tokens": 42
  }
}
  • content — массив блоков ответа; текст обычно находится в блоке type: text.
  • stop_reason — почему генерация завершилась: end_turn, max_tokens, tool_use и другие значения.
  • usage.input_tokens и usage.output_tokens — фактическое потребление токенов.