Chat Completions
Отправьте запрос на POST /chat/completions и прочитайте ответ в формате этого API.
Запрос
curl
export CLOSEROUTER_API_KEY="closerouter_your_key"
curl https://api.closerouter.dev/v1/chat/completions \
-H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-5.4-mini",
"messages": [
{ "role": "user", "content": "Reply with exactly: ok" }
],
"max_tokens": 16
}'Ответ
Сокращённый пример ответа.
JSON
{
"choices": [
{
"message": {
"role": "assistant",
"content": "ok"
}
}
]
}Основные параметры
| Поле | Назначение |
|---|---|
model | ID модели из каталога. Поддержка параметров зависит от провайдера и API. |
messages | Массив сообщений в формате этого API. |
max_tokens | Лимит токенов ответа. Для Messages обязателен. |
stream | true включает потоковый ответ, если endpoint поддерживает streaming. |
user | Необязательный идентификатор вашего конечного пользователя. |
Потоковый ответ
События приходят в строках data: {...}; завершение обозначается data: [DONE].
curl
curl -N https://api.closerouter.dev/v1/chat/completions \
-H "Authorization: Bearer $CLOSEROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-haiku-4.5",
"messages": [
{ "role": "user", "content": "Reply with exactly: ok" }
],
"max_tokens": 16,
"stream": true
}'Запасные модели
Поле models позволяет передать список запасных моделей. Ограничения доступа проверяются для всего списка.