Перейти к навигации

Текстовый API

  • Текстовые модели BeatAPI работают через синхронный API с оплатой по числу токенов. Используйте один ключ BeatAPI и привычный вашему приложению формат запроса.
  • Один ключ для всех текстовых моделей и один базовый URL: https://direct.beatapi.io (рекомендуется) либо https://api.beatapi.io (запасной адрес).
  • Четыре формата запросов: OpenAI Chat Completions, OpenAI Responses, Anthropic Messages и нативный API Gemini. Доступные форматы зависят от семейства; см. таблицу ниже.
  • Текстовые вызовы возвращают JSON напрямую или потоком SSE. Асинхронная задача BeatAPI при этом не создаётся.
  • GET /v1/text/models доступен публично: ID моделей, размеры контекста, лимиты вывода и цены можно получить без ключа.

Для текстовых запросов используйте базовый URL https://direct.beatapi.io. Этот адрес не ограничен 100-секундным тайм-аутом Cloudflare, который может прервать долгий запрос без потоковой передачи. Если ваша сеть не может подключиться к нему, используйте https://api.beatapi.io. Ключи, модели и цены одинаковы. API изображений и видео используют только https://api.beatapi.io.

Выбор протокола

ПротоколыЭндпоинтSDKСемейства
OpenAI Chat CompletionsPOST /v1/chat/completionsOpenAI SDK (chat.completions)GPT, Gemini, Grok, DeepSeek, GLM, Qwen, Kimi, MiniMax, MiMo, Hunyuan, Muse
OpenAI ResponsesPOST /v1/responsesOpenAI SDK (responses)GPT, Gemini, Grok, DeepSeek, GLM, Qwen, Kimi, MiniMax, MiMo, Hunyuan, Muse
Anthropic MessagesPOST /v1/messagesAnthropic SDK (messages)Claude, Gemini, Grok, DeepSeek, GLM, Qwen, Kimi, MiniMax, MiMo, Hunyuan, Muse
Нативный API GeminiPOST /v1beta/models/{model}:generateContentGemini SDK или HTTPGemini

Базовый URL и авторизация

Для текстовых запросов используйте https://direct.beatapi.io: на этот адрес не распространяется 100-секундный лимит Cloudflare. Запасной адрес — https://api.beatapi.io. Передавайте ключ в том заголовке, который использует ваш SDK: все варианты указывают на один аккаунт BeatAPI и баланс в USD. Ключ работает как с префиксом sk-, так и без него.

ФорматЗаголовок с ключом
OpenAI Chat Completions, OpenAI ResponsesAuthorization: Bearer <BEATAPI_API_KEY>
Anthropic Messagesx-api-key: <BEATAPI_API_KEY> или Authorization: Bearer
Нативный API Geminix-goog-api-key: <BEATAPI_API_KEY> или Authorization: Bearer

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

Какой формат выбрать для модели

  • GPT вызывается через OpenAI Chat Completions или OpenAI Responses. Для новых интеграций с рассуждениями и инструментами рекомендуется Responses.
  • Claude вызывается через Anthropic Messages (POST /v1/messages).
  • Gemini доступна во всех четырёх форматах: Chat Completions, Responses, Anthropic Messages и нативный API Gemini.
  • Все остальные семейства доступны через Chat Completions, Responses и Anthropic Messages. Запросы Messages должны содержать заголовок anthropic-version. Если не уверены, используйте Chat Completions.

Быстрый старт

curl --request POST \
--url https://direct.beatapi.io/v1/chat/completions \
--header "Authorization: Bearer $BEATAPI_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "glm-5.3",
"messages": [{ "role": "user", "content": "Say hello in one sentence." }]
}'

Как найти модели

GET /v1/text/models

Публичный метод, не требующий ключа. Вызывайте https://api.beatapi.io/v1/text/models: direct.beatapi.io обслуживает вызовы моделей, но не этот список. Каждая модель представлена отдельной записью в data.data:

ПолеЗначение
idID модели, который нужно передавать в model.
familyГруппа маршрутизации и тарификации модели. Чтобы вызвать модель, ключ должен иметь доступ к её семейству.
endpointsФорматы, нативно поддерживаемые маршрутом, который обслуживает модель: openai (Chat Completions), anthropic (Messages), openai-response (Responses). Это не полный список доступных форматов вызова. Документированные форматы указаны на страницах семейств, а не в этом поле.
context_lengthКонтекстное окно в токенах. Отсутствует, если значение не опубликовано.
max_output_tokensМаксимальный вывод в токенах. Отсутствует, если значение не опубликовано.
input_usd_per_million, output_usd_per_millionЦена BeatAPI в USD за 1M токенов с учётом скидки. Это базовый тариф без надбавки за длинный контекст.
discountЦена равна опубликованной цене, умноженной на discount (0.7 означает скидку 30%). Поле отсутствует при значении 1.
time_rulesМножители цены в часы пик: условие и признак того, действует ли оно сейчас. Поле отсутствует у моделей без таких правил.
capabilitiesПроизвольные метки, например рассуждения или инструменты. Это подсказки, а не гарантии API.
descriptionКраткое описание.

У бесплатных моделей (ID с окончанием -free) опубликованы только id, family и endpoints, без цены, контекстного окна и описания. См. Бесплатные модели.

Список содержит только текстовые модели.

GET /v1/models

Требует ключ. Возвращает доступные этому ключу модели в формате списка OpenAI (id, object, created, owned_by, supported_endpoint_types), обёрнутом в data. С заголовками x-api-key и anthropic-version возвращается формат списка Anthropic; с x-goog-api-key или ?key= — формат списка Gemini. Модели, недоступные группе ключа, а при использовании регистрационного бонуса и модели, недоступные аккаунту, исключаются. Частота запросов к этому методу не ограничена.

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

В Chat Completions, Responses и Messages установите "stream": true. Для нативного API Gemini используйте :streamGenerateContent?alt=sse. Тип ответа — text/event-stream; без потоковой передачи — application/json. Ошибка до вызова модели возвращается обычным JSON-ответом с HTTP-кодом, а не событием потока.

max_tokens и ограничения вывода

  • Максимальное значение, которое шлюз принимает для max_tokens (Chat Completions и Messages) и max_output_tokens (Responses), — 1 073 741 823. Превышение возвращает 400 bad_request.
  • Шлюз не сравнивает указанное значение с max_output_tokens модели в каталоге. Не превышайте этот предел: поведение выше него зависит от обслуживающей модель линии и не гарантируется.
  • max_tokens также используется для оценки необходимого баланса. Слишком большое значение может привести к 402 insufficient_credits, даже если фактический ответ был бы коротким. Указывайте столько токенов, сколько требуется задаче.

Ограничения частоты запросов

  • У каждого аккаунта есть минутный лимит успешных запросов, который повышается с общей суммой пополнений за всё время. Коды пополнения, реферальные бонусы и промокредиты не учитываются. Таблица уровней не публикуется; свой лимит и следующий уровень можно посмотреть в панели управления.
  • Выполняющийся запрос занимает место в лимите; при ошибке это место освобождается.
  • Частота запросов GET /v1/models не ограничена.
  • У бесплатных моделей отдельный лимит; см. Бесплатные модели.
  • При превышении возвращается 429 rate_limit_exceeded с retry_after_seconds и заголовком Retry-After. Подождите указанное время и повторите запрос.

Ошибки

Текстовый запрос может завершиться ошибкой на двух этапах, причём формат ответа зависит от этапа. Полная таблица кодов и правила повторных попыток приведены в разделе Ошибки; ниже — краткое описание.

1. До вызова модели. Для /v1/chat/completions, /v1/responses и /v1/messages используется формат ошибок BeatAPI: code, message, retryable и request_id, а при 429 также retry_after_seconds. Нативные методы Gemini (/v1beta/...) и GET /v1/models не используют этот формат. Их ошибки имеют вид {"error":{"message":"... (request id: ...)","type":"beatapi_error","code":...}}, без retryable и retry_after_seconds, хотя при 429 по-прежнему передаётся заголовок Retry-After.

HTTPКодПричина
401missing_api_key, invalid_api_keyКлюч не передан, неверен, просрочен, отключён или исчерпал лимит.
403forbiddenНа аккаунте только регистрационный бонус, а модель не входит в разрешённый список; IP-адрес запроса не разрешён ключу; либо модель недоступна группе ключа.
404not_foundМодель неизвестна или недоступна этому ключу. Получите список через GET /v1/models.
429rate_limit_exceededДостигнут лимит аккаунта или бесплатной модели. Подождите retry_after_seconds.
{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded: this model allows at most 10 successful requests per minute per account. Retry after 60 seconds.",
"retryable": true,
"request_id": "req_abc123",
"retry_after_seconds": 60
}
}

Для неизвестной модели возвращается 404 not_found: The requested model is not available to this key: check the model id against GET /v1/models, or retry in a few minutes if it worked before.

2. Во время вызова. Сохраняется собственный формат ошибок SDK, поэтому OpenAI SDK и Anthropic SDK разбирают ответ и выбрасывают обычные для них исключения. Для отказов самого шлюза используется код BeatAPI (insufficient_credits, content_policy_violation, bad_request, not_found или internal_error): error.type равен beatapi_error, а код указан в error.code; для /v1/messages код находится в error.type. Ошибка на стороне модели получает код temporary_error, upstream_timeout, model_unavailable или rate_limit_exceeded. HTTP-статус сохраняется, кроме 502 и 504, которые заменяются на 503; проблема с нашим аккаунтом у поставщика возвращает 503 model_unavailable. Английское сообщение модели о неверном параметре, например о слишком длинном контексте, передаётся текстом, чтобы вы могли исправить входные данные. На этом этапе ID запроса добавляется в конец каждого message. Поля retryable нет, а заголовок Retry-After при 429 не гарантируется: ориентируйтесь на статус и код. См. Ошибки.

{
"error": {
"message": "This API key's remaining quota is below the price of this request. Raise the key's quota in the console or use another key. (request id: req_abc123)",
"type": "beatapi_error",
"param": "",
"code": "insufficient_credits"
}
}

Повторяйте запросы только при 429, 500 и 503, увеличивая задержку между попытками.

Все текстовые модели

Текущие текстовые модели из каталога шлюза. Выберите семейство, чтобы открыть страницу протокола. Указаны цены BeatAPI в USD за миллион токенов.

ID моделиСемействоКонтекст (токены)Максимальный вывод (токены)Ввод, USD за миллион токеновВывод, USD за миллион токеновПротоколы
gpt-6.1-terraGPT1 050 000128 000$0.40$2.00Chat Completions, Responses
gpt-6.1-solGPT1 050 000128 000$0.80$4.00Chat Completions, Responses
gpt-6-astraGPT1 000 000128 000$4.00$20.00Chat Completions, Responses
gpt-6-solGPT1 050 000128 000$0.80$4.00Chat Completions, Responses
gpt-6-lunaGPT1 050 000128 000$0.04$0.20Chat Completions, Responses
claude-opus-5-5Claude1 000 000128 000$2.00$10.00Messages
claude-sonnet-5-5Claude1 000 000128 000$1.00$5.00Messages
claude-haiku-5-5Claude1 000 000128 000$0.05$0.25Messages
claude-fable-5-1Claude1 000 000128 000$5.00$25.00Messages
gemini-4-argonGemini—1 000 000$1.00$5.00Chat Completions, Responses, Messages, Нативный API Gemini
gemini-3.8-flashGemini——$0.375$1.875Chat Completions, Responses, Messages, Нативный API Gemini
gemini-3.1-pro-previewGemini1 048 57665 536$1.00$6.00Chat Completions, Responses, Messages, Нативный API Gemini
grok-4.7Grok500 000—$0.70$2.10Chat Completions, Responses, Messages
deepseek-v4.1-flashDeepSeek——$0.075$0.30Chat Completions, Responses, Messages
deepseek-v4-pro-0813DeepSeek1 000 000128 000$0.33$0.99Chat Completions, Responses, Messages
deepseek-v4.1-flash-hcDeepSeek——$0.105*$0.42*Chat Completions, Responses, Messages
deepseek-v4-pro-0813-hcDeepSeek1 000 000128 000$0.462*$1.386*Chat Completions, Responses, Messages
glm-5.3GLM1 000 000128 000$0.98$3.08Chat Completions, Responses, Messages
glm-5.3-flashGLM1 000 000128 000$0.105$0.35Chat Completions, Responses, Messages
glm-5.3-flashxGLM1 000 000128 000$0.259$0.875Chat Completions, Responses, Messages
qwen3.8-maxQwen1 000 000128 000$1.40$4.20Chat Completions, Responses, Messages
qwen3.8-flashQwen——$0.105$0.329Chat Completions, Responses, Messages
kimi-k3.1-proKimi1 048 576—$1.20$6.00Chat Completions, Responses, Messages
kimi-k3Kimi1 048 576128 000$1.80$9.00Chat Completions, Responses, Messages
MiniMax-M3MiniMax1 048 576128 000$0.18$0.72Chat Completions, Responses, Messages
MiniMax-M3.1-FlashMiniMax1 000 000—$0.09$0.36Chat Completions, Responses, Messages
mimo-v2.6-flashMiMo1 048 576128 000$0.098$0.196Chat Completions, Responses, Messages
mimo-v2.5MiMo1 048 576128 000$0.098$0.196Chat Completions, Responses, Messages
hy4-previewHunyuan——$0.5838$1.7507Chat Completions, Responses, Messages
hy3Hunyuan256 00064 000$0.05775*$0.231*Chat Completions, Responses, Messages
muse-wonderMuse1 048 576131 072$4.00$20.00Chat Completions, Responses, Messages
  • Указаны базовые цены со скидкой. Не включены тарифы для длинного контекста, кэшированного ввода и записи в кэш. См. страницу цен.
  • — означает, что каталог не публикует это значение.
  • * В часы пик модели действует множитель. Показаны базовые тарифы вне часов пик.

Бесплатные модели

Бесплатные модели не имеют платы за токены и используют отдельные минутные лимиты. См. бесплатные модели. В последнем столбце указана соответствующая платная модель.

ID моделиСемействоПлатная версияЦена
deepseek-v4.1-flash-freeDeepSeekdeepseek-v4.1-flashБесплатно
glm-5.3-flash-freeGLMglm-5.3-flashБесплатно
gemini-3.8-flash-freeGeminigemini-3.8-flashБесплатно

Старые модели

Доступные старые ID и их замены перечислены в разделе старые модели.