BazaarLinkBazaarLink
Войти
ДокументацияAPI СсылкаSDK СсылкаАгентное использованиеAI Навыки
Ответы

Создать ответ

Запрашивает ответ модели, используя форму запроса OpenAI Responses API (входные данные/инструкции); внутренне преобразуется в формат дополнений чата и перенаправляется в любую поддерживаемую модель — это уровень перевода, а не отдельный путь вывода. Это конечная точка без сохранения состояния: передача store: true или ненулевое значение previous_response_id возвращает 400 (см. запись 400 ниже, где представлена ​​отчетливая форма ошибки) — каждый вызов должен содержать на входе полный диалог. При потоковой передаче рассуждения отображаются через события response.reasoning_text.delta и элемент вывода type:"reasoning".

POST/v1/responses

Авторизация

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

Ключ API как Bearer-токен в заголовке Authorization.

Тело

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

Используемая модель с указанием поставщика, например. «опенай/gpt-5.2».

minLength: 1
Example: "openai/gpt-5.4"
inputобязательно
string | InputItem[]

Входные данные диалога — либо одна строка, либо структурированный массив элементов (сообщение/вызов_функции/вызов_функции_выход). Сообщения могут использовать обычный текст или массив блоков контента, включая input_image.

instructions
string

Инструкции системного уровня, вставленные в качестве первого системного сообщения в начале преобразованного массива сообщений.

stream
boolean

true передает ответ как события Responses-API SSE (response.created, response.output_item.added, response.output_text.delta, response.reasoning_text.delta, response.completed и другие); Если значение опущено или имеет значение false, возвращается один ответ JSON.

max_output_tokens
integer

Максимальное количество токенов, которые может сгенерировать ответ (преобразованные в max_tokens для восходящих завершений чата).

tools
Tool[]

Список определений инструментов/функций, которые может вызывать модель. Принимает плоскую фигуру спецификации ответов {type:"function", name,description, options} (рекомендуется), а также вложенную фигуру Chat Completions {type:"function", function:{...}} (принимается для обратной совместимости, передается как есть). Поле инструментов объекта ответа отображает то, что на самом деле было отправлено сюда.

tool_choice
string | object

Определяет, будет ли/как модель вызывать инструмент, например. {type:"function", name:"..."} (плоская форма, рекомендуется, автоматически преобразуется для восходящего потока) или "auto". Полеtool_choice объекта ответа повторяет все, что было отправлено сюда, и по умолчанию имеет значение «авто», если оно опущено.

parallel_tool_calls
boolean

Разрешить ли параллельные вызовы инструментов, когда инструменты предоставляются. По умолчанию установлено значение true, если оно опущено; Поле Parallel_tool_calls объекта ответа отображает все, что было отправлено сюда.

plugins
object[]

Массив плагинов (например, {id:"web"} для веб-поиска). Поддерживается только на некоторых маршрутах моделей, в остальных случаях не действует; :online включает веб-поиск на поддерживаемых маршрутах. Поиск через plugins, :online или web_search_options может повлечь дополнительную плату upstream по используемому ключу: платформенному ключу BazaarLink или вашему BYOK-ключу.

store
boolean

⚠️ Эта конечная точка не имеет состояния — передача true немедленно возвращает 400, она никогда не принимается и не игнорируется молча. Опускание этого параметра или передача false — единственное допустимое использование.

previous_response_id
string

⚠️ Эта конечная точка не имеет состояния — при передаче любого ненулевого значения немедленно возвращается 400, оно никогда не принимается и не игнорируется молча. Чтобы продолжить разговор, вместо этого отправьте полную историю во входном массиве.

models
string[]

Список резервных моделей — пробуется по порядку, только после исчерпания группы кандидатов основной модели. Каждая резервная модель маршрутизируется BazaarLink и тарифицируется по клиентской цене BazaarLink для этой модели; список не передается upstream.

reasoning
object

Объект управления мышлением модели рассуждения (например, {effort, max_tokens}), пересылаемый как есть — никакие значения по умолчанию не вводятся.

reasoning_effort
string

Плоское сокращение для рассуждения.усилие.

lowmediumhigh
thinking
object

Аддитивный бюджет токенов Клода с расширенным мышлением (например, {type:"enabled", Budget_tokens:2048}) поверх max_output_tokens — пересылается как есть, без введения значений по умолчанию.

enable_thinking
boolean

Подумываю о включении/выключении моделей семейства Qwen3/GLM, отправлено как есть.

POST /v1/responses
curl https://api.bazaarlink.ai/v1/responses \
  -H "Authorization: Bearer $BAZAARLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-5.4",
    "input": "What is the capital of France?"
  }'
Примеры ответов

BazaarLink возвращает стандартизированный ответ и удаляет специфичные для upstream поля. usage.cost — сумма в USD, списанная с клиента за этот запрос. Используйте непрозрачный ID запроса BazaarLink из response id или заголовка x-request-id для GET /v1/generation; в нестриминговом ответе тот же ID есть в x-generation-id. Статистика может появиться через несколько секунд; повторяйте запрос при 404 недолго. Длительные нестриминговые запросы Chat, Messages и Responses (примерно от 12 секунд) могут содержать пробелы keep-alive перед JSON-телом. Стандартные JSON-парсеры принимают начальные пробелы.

{
  "id": "85e6f35c71a31f19-SJC",
  "object": "response",
  "created_at": 1753500000,
  "completed_at": 1753500002,
  "status": "completed",
  "model": "openai/gpt-5.4",
  "output": [
    {
      "type": "reasoning",
      "id": "bazaarlink-reasoning-item-id",
      "status": "completed",
      "summary": [],
      "content": [
        {
          "type": "reasoning_text",
          "text": "The user is asking a simple geography fact..."
        }
      ]
    },
    {
      "type": "message",
      "id": "bazaarlink-message-item-id",
      "role": "assistant",
      "status": "completed",
      "content": [
        {
          "type": "output_text",
          "text": "The capital of France is Paris.",
          "annotations": []
        }
      ]
    }
  ],
  "usage": {
    "input_tokens": 14,
    "output_tokens": 32,
    "total_tokens": 46,
    "cost": 0.00021,
    "bz_cost": 0.00021,
    "output_tokens_details": {
      "reasoning_tokens": 18
    }
  },
  "error": null,
  "incomplete_details": null,
  "tool_choice": "auto",
  "tools": [],
  "truncation": "auto",
  "parallel_tool_calls": true,
  "metadata": {},
  "store": false
}
Поддержка
Поддержка
Здравствуйте! Чем мы можем помочь?
Отправьте сообщение, и мы ответим в ближайшее время.
Создать ответ — BazaarLink API