Справочник API
Три эндпоинта — Claude, OpenAI. Заголовки, полные тела запросов и ответов, параметры и таблица соответствия форматов.
Обновлено 22 июл. 2026 г.⏱ 9 мин
#api#reference#endpoints#messages#chat completions#generatecontent
Шлюз проксирует запросы на официальные API вендоров и возвращает ответ в исходном формате. Меняются только базовый адрес https://api.tkbk.io и ключ cr_… — тело запроса и ответа совпадает с оригинальными Anthropic и OpenAI API.
#Базовый адрес и заголовки
| Что | Значение |
|---|---|
| Base URL | https://api.tkbk.io |
| Claude | POST /claude/v1/messages |
| OpenAI / Codex | POST /openai/v1/chat/completions |
| Health-check | GET /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 }
}#Основные параметры
| Параметр | Тип | Назначение |
|---|---|---|
model | string | ID модели, напр. claude-sonnet-5 |
max_tokens | number | Максимум токенов в ответе |
stream | boolean | Потоковый ответ по SSE |
system | string | Системная инструкция — задаёт роль и стиль |
tools | array | Описание инструментов для function calling |
messages / contents | array | История диалога с ролями user / assistant |
ℹ
tools и function calling
Инструменты передаются на upstream без изменений — используйте формат tools ровно так, как в официальной документации вендора. Шлюз ничего не переписывает.#Соответствие параметров между форматами
| Смысл | Claude | OpenAI |
|---|---|---|
| Системная инструкция | поле system | messages[role=system] |
| Лимит ответа | max_tokens | max_tokens |
| Температура | temperature | temperature |
| Стриминг | stream: true | stream: true |
| Диалог | messages[] | messages[] |
| Роль ответа | assistant | assistant |
| Токены | usage.input/output_tokens | usage.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": "Считай до пяти." }]
}'