Справочник

Справочник API

Три эндпоинта — Claude, OpenAI. Заголовки, полные тела запросов и ответов, параметры и таблица соответствия форматов.

Обновлено 22 июл. 2026 г.9 мин
#api#reference#endpoints#messages#chat completions#generatecontent

Шлюз проксирует запросы на официальные API вендоров и возвращает ответ в исходном формате. Меняются только базовый адрес https://api.tkbk.io и ключ cr_… — тело запроса и ответа совпадает с оригинальными Anthropic и OpenAI API.

#Базовый адрес и заголовки

ЧтоЗначение
Base URLhttps://api.tkbk.io
ClaudePOST /claude/v1/messages
OpenAI / CodexPOST /openai/v1/chat/completions
Health-checkGET /health
АвторизацияAuthorization: Bearer cr_xxx или x-api-key: cr_xxx

#Claude — Messages API

POST /claude/v1/messages
curl https://api.tkbk.io/claude/v1/messages \
  -H "Authorization: Bearer cr_your_key" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 1024,
    "temperature": 0.7,
    "system": "Ты лаконичный ассистент.",
    "messages": [
      { "role": "user", "content": "Назови три столицы Скандинавии." }
    ]
  }'
Ответ Claude
{
  "id": "msg_01ABCdef...",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-5",
  "content": [
    { "type": "text", "text": "Осло, Стокгольм, Копенгаген." }
  ],
  "stop_reason": "end_turn",
  "usage": { "input_tokens": 24, "output_tokens": 12 }
}

#OpenAI — Chat Completions

POST /openai/v1/chat/completions
curl https://api.tkbk.io/openai/v1/chat/completions \
  -H "Authorization: Bearer cr_your_key" \
  -H "content-type: application/json" \
  -d '{
    "model": "gpt-5",
    "max_tokens": 1024,
    "temperature": 0.7,
    "stream": false,
    "messages": [
      { "role": "system", "content": "Ты лаконичный ассистент." },
      { "role": "user", "content": "Назови три столицы Скандинавии." }
    ]
  }'
Ответ OpenAI
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "model": "gpt-5",
  "choices": [
    {
      "index": 0,
      "message": { "role": "assistant", "content": "Осло, Стокгольм, Копенгаген." },
      "finish_reason": "stop"
    }
  ],
  "usage": { "prompt_tokens": 21, "completion_tokens": 12, "total_tokens": 33 }
}

#Основные параметры

ПараметрТипНазначение
modelstringID модели, напр. claude-sonnet-5
max_tokensnumberМаксимум токенов в ответе
streambooleanПотоковый ответ по SSE
systemstringСистемная инструкция — задаёт роль и стиль
toolsarrayОписание инструментов для function calling
messages / contentsarrayИстория диалога с ролями user / assistant
tools и function calling
Инструменты передаются на upstream без изменений — используйте формат tools ровно так, как в официальной документации вендора. Шлюз ничего не переписывает.

#Соответствие параметров между форматами

СмыслClaudeOpenAI
Системная инструкцияполе systemmessages[role=system]
Лимит ответаmax_tokensmax_tokens
Температураtemperaturetemperature
Стримингstream: truestream: true
Диалогmessages[]messages[]
Роль ответаassistantassistant
Токеныusage.input/output_tokensusage.prompt/completion_tokens

#Стриминг

Для потокового ответа добавьте "stream": true. Ответ приходит как поток server-sent events; используйте curl -N, чтобы не буферизовать вывод.

стриминг Claude
curl -N https://api.tkbk.io/claude/v1/messages \
  -H "Authorization: Bearer cr_your_key" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-haiku-4-5",
    "max_tokens": 256,
    "stream": true,
    "messages": [{ "role": "user", "content": "Считай до пяти." }]
  }'
Не помогло?

Напишите в Telegram — поможем с настройкой и подберём тариф. Или вернитесь ко всем разделам документации.