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

GPT Responses

Вызывайте GPT-6.1 Terra, GPT-6.1 Sol, GPT-6 Astra, GPT-6 Sol и GPT-6 Luna через OpenAI Responses API с ключом BeatAPI.

  • Для моделей GPT используйте POST /v1/responses. Для переключения меняйте model.
  • Рекомендуемый формат для новых интеграций с рассуждениями и вызовами инструментов.
  • Текст и изображения на входе, текст на выходе, потоковая передача, вызовы функций, структурированный вывод и настраиваемая интенсивность рассуждений.
  • Совместимо с OpenAI SDK: измените базовый URL и используйте ключ BeatAPI. Для существующей интеграции Chat Completions см. Chat Completions.

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

POST/v1/responsesПопробовать

Открывает эндпоинт в API Explorer. Если ввести ключ BeatAPI и отправить запрос, будет выполнен реальный вызов с оплатой из вашего баланса.

Модели

Передайте один из этих ID в model. Каждый ID обозначает отдельную модель; не считайте их псевдонимами друг друга.

ID моделиКонтекст (токены)Максимальный вывод (токены)НазначениеВвод, USD за миллион токеновВывод, USD за миллион токеновПримечания
gpt-6.1-terra1 050 000128 000Визуальные рассуждения, управление компьютером и повседневные задачи$0.40$2.00Интенсивность рассуждений от none до max; по умолчанию medium. Для инструментов нужен Responses. При входе свыше 272K токенов тариф повышается.
gpt-6.1-sol1 050 000128 000GPT-6.1 Sol для программирования, управления компьютером и профессиональных задач. Для вызовов инструментов используйте Responses$0.80$4.00Интенсивность рассуждений от low до max. При входе свыше 272K токенов тариф повышается.
gpt-6-astra1 000 000128 000Самая мощная модель GPT: сложные рассуждения, программирование, управление компьютером, исследования и работа с документами$4.00$20.00При входе свыше 272K токенов тариф повышается.
gpt-6-sol1 050 000128 000Модель GPT-6 среднего уровня для повседневного программирования, исследований и задач агентов по более низкой цене$0.80$4.00Отдельная модель, отличная от GPT-6.1 Sol и GPT-5.6 Sol.
gpt-6-luna1 050 000128 000Экономичная модель GPT-6 для массовых узких задач$0.04$0.20Для массовых узких задач, например извлечения данных, классификации и маршрутизации.
  • Указаны базовые цены со скидкой. Не включены тарифы для длинного контекста, кэшированного ввода и записи в кэш. См. страницу цен.
  • — означает, что каталог не публикует это значение.

Старые ID этого семейства остаются доступны. См. старые модели.

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

Установите пакет openai на сервере и сохраните ключ в BEATAPI_API_KEY. Не помещайте ключ в код браузерного приложения. Свойство SDK output_text позволяет получить текст ответа без обхода блоков.

У моделей GPT-5.6 интенсивность рассуждений принимает none, low, medium, high, xhigh и max; у gpt-6.1-sol — от low до max. Начните с medium как сбалансированного варианта, затем на своих задачах сравните уровень выше и ниже. Сам по себе HTTP 200 не означает, что ответ решает вашу задачу: проверяйте результат в приложении.

curl --request POST \
--url https://direct.beatapi.io/v1/responses \
--header "Authorization: Bearer $BEATAPI_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-6.1-sol",
"input": "Design a resilient webhook retry strategy for a payments API.",
"reasoning": {
"effort": "medium"
}
}'

Эндпоинт и аутентификация

POST https://direct.beatapi.io/v1/responses

Authorization string Обязательно

Bearer <BEATAPI_API_KEY>. Ключ работает как с префиксом sk-, так и без него.

Параметры запроса

Поддерживаются стандартные поля OpenAI Responses. Совместимость формата запроса не означает поддержку всех параметров конкретного провайдера и встроенных инструментов сервиса. Проверьте возможности, от которых зависит ваше приложение.

model string Обязательно

Точный ID модели.

Допустимые значения: gpt-6.1-terra, gpt-6.1-sol, gpt-6-astra, gpt-6-sol, gpt-6-luna

  • Прежние рабочие ID (gpt-5.6-sol, gpt-5.6-terra, gpt-5.6-luna) перечислены в разделе Старые модели.
  • Вызовите GET /v1/models со своим ключом, чтобы проверить, какие модели ему доступны.

input string | object[] Обязательно

Промпт: строка либо массив входных элементов с текстом и изображениями.

  • Все модели GPT на этой странице поддерживают изображения на входе.

reasoning object Необязательно

Настройки рассуждений. reasoning.effort определяет, насколько интенсивно модель рассуждает перед ответом.

Допустимые значения: none, low, medium, high, xhigh, max

Зависит от модели

  • gpt-6.1-terra: none, low, medium (по умолчанию), high, xhigh и max.
  • gpt-6.1-sol: low, medium, high, xhigh и max. none и minimal не поддерживаются.
  • gpt-5.6-sol: none, low, medium, high, xhigh и max.
  • gpt-5.6-terra: none, low, medium, high, xhigh и max.
  • gpt-5.6-luna: none, low, medium, high, xhigh и max.

Пример

{ "effort": "medium" }

max_output_tokens integer Необязательно

Максимальное число всех генерируемых токенов, включая рассуждения и видимый ответ.

  • Шлюз принимает значения до 1 073 741 823; превышение возвращает 400 bad_request.
  • Шлюз не сравнивает указанное значение с максимальным объёмом вывода модели из таблицы выше. Не превышайте этот предел.
  • Значение также используется для оценки необходимого баланса. Слишком большое значение может привести к 402 insufficient_credits, даже если фактический ответ был бы коротким. Указывайте столько токенов, сколько требуется задаче.

stream boolean НеобязательноПо умолчанию: false

Передавать ответ потоком событий SSE. См. раздел о потоковой передаче ниже.

По умолчанию: false

tools object[] Необязательно

Функции-инструменты, которые может вызвать модель. Responses — рекомендуемый формат для вызовов инструментов.

text object Необязательно

Настройки формата вывода, например text.format для структурированных ответов.

Ответ

Без потоковой передачи запрос возвращает один JSON-объект. Ниже приведён сокращённый пример.

{
"id": "resp_example",
"object": "response",
"model": "gpt-6.1-sol",
"status": "completed",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{
"type": "output_text",
"text": "Retry with exponential backoff and jitter, and make every handler idempotent."
}
]
}
],
"usage": {
"input_tokens": 19,
"output_tokens": 16,
"total_tokens": 35
}
}

Поля ответа

ПолеТипОписание
idstringID ответа. Сохраняйте его вместе с ID запроса для обращений в поддержку и сверки расходов.
modelstringМодель, сформировавшая ответ.
statusstringcompleted означает, что ответ завершён.
output[]object[]Выходные элементы: сообщения, рассуждения и вызовы инструментов. Свойство SDK output_text объединяет текстовые части ответа.
usageobjectКоличество токенов. Стоимость рассчитывается по фактическому использованию.

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

Установите "stream": true. BeatAPI передаёт поток SSE без преобразования, поэтому имена и объекты событий остаются совместимыми с OpenAI SDK.

  • Тип ответа — text/event-stream; без потоковой передачи — application/json.
  • Ошибка до вызова модели возвращается обычным JSON-ответом с HTTP-кодом, а не событием потока.
  • Явно задайте тайм-ауты и предусмотрите безопасное восстановление соединения при потоковой передаче.
event: response.output_text.delta
data: {"type":"response.output_text.delta","delta":"Retry"}
event: response.output_text.delta
data: {"type":"response.output_text.delta","delta":" with backoff"}
event: response.completed
data: {"type":"response.completed","response":{"id":"resp_example","status":"completed"}}

Устранение ошибок

Ошибка или симптомПричинаРешение
400 с неподдерживаемой интенсивностью рассужденийНапример, none у gpt-6.1-sol.Используйте поддерживаемое моделью значение; см. reasoning выше.
402 insufficient_creditsБаланс меньше оценочной стоимости запроса, часто из-за слишком большого max_output_tokens.Пополните баланс или уменьшите max_output_tokens.
403 forbiddenНа аккаунте только регистрационный бонус, а модель не входит в разрешённый список, либо она недоступна группе ключа.Пополните баланс, выберите бесплатную модель или используйте ключ с доступом к нужной модели.
404 not_foundНеизвестный ID модели либо модель недоступна этому ключу.Получите список доступных моделей через GET /v1/models.
429 rate_limit_exceededДостигнут лимит запросов аккаунта или бесплатной модели.Подождите время, указанное в Retry-After, затем повторите запрос.

Обзор HTTP-ошибок

Ошибки до вызова модели используют поля BeatAPI error.code, error.message, retryable и request_id. Остальные сохраняют формат OpenAI SDK {"error": {"message", "type", "code"}}. Код находится в error.code, ID запроса — в конце message. См. ошибки.

HTTP-статусКодыЧто делать
400bad_request, content_policy_violationИсправьте запрос или ввод. Не отправляйте его повторно без изменений.
401missing_api_key, invalid_api_keyПроверьте ключ. Не повторяйте запрос без исправления.
402insufficient_creditsПополните баланс или увеличьте лимит ключа. Слишком высокий max_tokens может вызвать эту ошибку.
403forbiddenПроверьте группу ключа, список разрешённых IP и доступность модели за бесплатные кредиты.
404not_foundНеизвестная модель. Проверьте активные модели через GET /v1/models.
429rate_limit_exceededПодождите согласно Retry-After или retry_after_seconds, затем повторите запрос с увеличивающимися интервалами.
500internal_error, temporary_errorПовторите запрос один-два раза с увеличивающимися интервалами.
503model_unavailable, upstream_timeout, temporary_errorПовторите запрос с увеличивающимися интервалами или выберите другую модель.

Все коды и правила повторных запросов: ошибки.

Примечания

  • Модели Claude не обслуживаются через /v1/responses (400 bad_request); используйте Anthropic Messages.
  • При входе свыше 272K токенов gpt-6.1-terra, gpt-6.1-sol и gpt-6-astra применяют повышенный тариф ко всему запросу. Перед оценкой стоимости задач с длинным контекстом проверьте таблицу цен.
  • Храните ключи на доверенных серверах, записывайте ID запроса из ответа и повторяйте запросы только при ошибках 429, 500 и 503.

Аутентификация

AuthorizationBearer

Передавайте API-ключ в виде Authorization: Bearer <BEATAPI_API_KEY>.

Запрос

This endpoint expects an object.
modelenumОбязательный

Точный ID модели.

Прежние рабочие ID (gpt-5.6-sol, gpt-5.6-terra, gpt-5.6-luna) перечислены в разделе Старые модели.

Вызовите GET /v1/models со своим ключом, чтобы проверить, какие модели ему доступны.

gpt-6.1-terra, gpt-6.1-sol, gpt-6-astra, gpt-6-sol, gpt-6-luna

Допустимые значения:
inputstring or list of objectsОбязательный

Промпт: строка либо массив входных элементов с текстом и изображениями.

Все модели GPT на этой странице поддерживают изображения на входе.

reasoningobjectОпциональный

Настройки рассуждений. reasoning.effort определяет, насколько интенсивно модель рассуждает перед ответом.

gpt-6.1-terra: none, low, medium (по умолчанию), high, xhigh и max.

gpt-6.1-sol: low, medium, high, xhigh и max. none и minimal не поддерживаются.

gpt-5.6-sol: none, low, medium, high, xhigh и max.

gpt-5.6-terra: none, low, medium, high, xhigh и max.

gpt-5.6-luna: none, low, medium, high, xhigh и max.

none, low, medium, high, xhigh, max

max_output_tokensintegerОпциональный

Максимальное число всех генерируемых токенов, включая рассуждения и видимый ответ.

Шлюз принимает значения до 1 073 741 823; превышение возвращает 400 bad_request.

Шлюз не сравнивает указанное значение с максимальным объёмом вывода модели из таблицы выше. Не превышайте этот предел.

Значение также используется для оценки необходимого баланса. Слишком большое значение может привести к 402 insufficient_credits, даже если фактический ответ был бы коротким. Указывайте столько токенов, сколько требуется задаче.

streambooleanОпциональныйПо умолчанию false

Передавать ответ потоком событий SSE. См. раздел о потоковой передаче ниже.

toolslist of objectsОпциональный

Функции-инструменты, которые может вызвать модель. Responses — рекомендуемый формат для вызовов инструментов.

textobjectОпциональный

Настройки формата вывода, например text.format для структурированных ответов.

Ответ

Без потоковой передачи запрос возвращает один JSON-объект. Ниже приведён сокращённый пример.

idstringОпциональный

ID ответа. Сохраняйте его вместе с ID запроса для обращений в поддержку и сверки расходов.

modelstringОпциональный

Модель, сформировавшая ответ.

statusstringОпциональный

completed означает, что ответ завершён.

outputlist of objectsОпциональный

Выходные элементы: сообщения, рассуждения и вызовы инструментов. Свойство SDK output_text объединяет текстовые части ответа.

usageobjectОпциональный

Количество токенов. Стоимость рассчитывается по фактическому использованию.

Ошибки

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error
500
Internal Server Error
503
Service Unavailable Error