Справочник API

Claude Messages API

Нативный для Anthropic Messages API — используйте модели Claude через их нативный протокол, совместимый с Anthropic SDK и Claude Code.

Конечная точка

http
POST https://api.tokspan.com/v1/messages

Быстрые примеры

Используйте Anthropic SDK с TokSpan в качестве базового URL — без изменений кода, кроме конфигурации:

python
from anthropic import Anthropic

client = Anthropic(
    api_key="sk-your-key",
    base_url="https://api.tokspan.com",  # ← host root; the SDK appends /v1/messages
)

response = client.messages.create(
    model="MODEL_NAME",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}],
)

print(response.content[0].text)
shell
curl -X POST "https://api.tokspan.com/v1/messages" \
  -H "x-api-key: sk-your-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'
json — Response
{
  "id": "msg_abc123",
  "type": "message",
  "role": "assistant",
  "content": [{
    "type": "text",
    "text": "Hello! How can I help you today?"
  }],
  "model": "MODEL_NAME",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 10,
    "output_tokens": 12
  }
}

Тело запроса

ПараметрТипОбязательныйОписание
modelstringДаID модели Claude (например, claude-opus-4-8, claude-sonnet-4-6).
max_tokensintegerДаМаксимальное количество токенов для генерации. <strong>Обязательно</strong> для Messages API.
messagesarrayДаМассив сообщений, чередующихся между ролями <code>user</code> и <code>assistant</code>. Первое сообщение должно быть от пользователя.
systemstringНетСистемный промпт — строка или массив блоков контента.
temperaturenumberНетТемпература сэмплирования (0–1).
streambooleanНетВключить потоковую передачу SSE. По умолчанию: <code>false</code>.
top_pnumberНетNucleus-сэмплирование (0–1).
toolsarrayНетОпределения инструментов для использования инструментов. См. Вызов инструментов.
tool_choiceobjectНетУправление выбором инструмента: {"type": "auto"} или конкретный инструмент.
thinkingobjectНетКонфигурация расширенного мышления: {"type": "enabled", "budget_tokens": 1024}. Бюджет должен быть ≥1024 и меньше, чем max_tokens.

Системные промпты

Передавайте системный промпт как поле <code>system</code> верхнего уровня (не как сообщение):

json
{
  "model": "MODEL_NAME",
  "max_tokens": 1024,
  "system": "You are a helpful assistant that always answers in French.",
  "messages": [{"role": "user", "content": "What is the capital of France?"}]
}

Потоковая передача (SSE)

Установите stream: true, чтобы получать события Anthropic SSE (message_start, content_block_delta, message_stop и т. д.).

shell
curl -X POST "https://api.tokspan.com/v1/messages" \
  -H "x-api-key: sk-your-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Tell me a story."}],
    "stream": true
  }'
Настройка: Установите base_url SDK Anthropic как https://api.tokspan.com — SDK сам добавляет /v1/messages. Аутентификация принимает как заголовки x-api-key + anthropic-version (нативные для Anthropic), так и Authorization: Bearer. Anthropic SDK обрабатывает это автоматически.