Source: https://ailoot.ai/docs/ru/api/responses/
Canonical: https://ailoot.ai/docs/ru/api/responses/
Language: ru

[API](https://ailoot.ai/docs/ru/) 

# Responses

[Markdown](https://ailoot.ai/docs/ru/api/responses/index.md)

Новый формат OpenAI: один вход, типизированный выход, инструменты и рассуждения. Его использует Codex CLI.

POST`https://api.ailoot.ai/v1/responses`

Responses

```bash
curl https://api.ailoot.ai/v1/responses \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6.1-sol",
    "instructions": "Отвечай кратко.",
    "input": "Чем отличается TCP от UDP?"
  }' 
```

```python
from openai import OpenAI
import os

client = OpenAI(max_retries=0, base_url="https://api.ailoot.ai/v1", api_key=os.environ["AILOOT_API_KEY"])
resp = client.responses.create(
    model="gpt-6.1-sol",
    instructions="Отвечай кратко.",
    input="Чем отличается TCP от UDP?",
)
print(resp.output_text)
```

```js
import OpenAI from "openai";

const client = new OpenAI({ maxRetries: 0, baseURL: "https://api.ailoot.ai/v1", apiKey: process.env.AILOOT_API_KEY });
const resp = await client.responses.create({
  model: "gpt-6.1-sol",
  instructions: "Отвечай кратко.",
  input: "Чем отличается TCP от UDP?",
});
console.log(resp.output_text);
```

200 OK

```json
{
  "id": "resp_67f1…",
  "object": "response",
  "status": "completed",
  "model": "gpt-6.1-sol",
  "output": [
    {
      "type": "message",
      "role": "assistant",
      "content": [
        { "type": "output_text", "text": "TCP гарантирует доставку и порядок, UDP — нет, зато быстрее…" }
      ]
    }
  ],
  "usage": { "input_tokens": 24, "output_tokens": 61, "total_tokens": 85 }
}
```

## Авторизация

| Параметр | Тип | Обязательность | Описание |
| --- | --- | --- | --- |
| `Authorization` | header | обязательный | Ключ в виде `Bearer sk-…`. Также подойдут заголовки `x-api-key` или `x-goog-api-key`. |

## Тело запроса

| Параметр | Тип | Обязательность | Описание |
| --- | --- | --- | --- |
| `model` | string | обязательный | ID модели с форматом Responses. Таких в каталоге 53: GPT, Claude, DeepSeek, Qwen, Kimi, GLM, MiniMax, Grok. Модели Gemini в этом формате недоступны. |
| `input` | string \| array | обязательный | Текст запроса или массив сообщений и частей (текст, картинки). |
| `instructions` | string | необязательный | Системная инструкция. |
| `stream` | boolean | необязательный | Поток событий SSE; последнее событие — `response.completed`. Платный текст приходит одним блоком после расчёта стоимости. |
| `max_output_tokens` | integer | необязательный | Максимум токенов ответа, включая рассуждения. Если не указан, Ailoot подставляет 4096 (или меньше, если у модели лимит ответа меньше). Для длинных ответов задайте лимит явно. Запросы с `previous_response_id` и со встроенными инструментами `web_search` или `code_interpreter` для новых текстовых запросов учитывают отдельные оценки сохранённого контекста и работы инструментов; они не переходят автоматически к стоимости всего входного окна. Прежние принятые резервы сохраняют исходные условия. Для картинок, видео и звука на выходе резервируется полная стоимость результата. Если рассчитанный резерв не помещается в доступный баланс или лимит ключа, для поддерживаемой модели и метода Ailoot может уменьшить `max_tokens` (`max_output_tokens` в Responses) до оплачиваемого объёма, но не ниже 256 токенов или большего минимума данного метода, и сообщает об этом в заголовке `X-Ailoot-Max-Tokens-Capped`. Возможность уменьшения проверяется для точной текстовой модели и метода. Она применяется к поддерживаемым текстовым маршрутам Gemini в родном формате Gemini и в формате Anthropic Messages; `deepseek-ai/deepseek-v4.1-flash`, `meta/llama-3.2-11b-vision-instruct`, `meta/muse-glimmer-30b`, `nvidia/ising-calibration-1.5-31b`, `nvidia/nemotron-3-nano-omni-30b-a3b-reasoning`, `nvidia/nemotron-3-super-120b-a12b`, `nvidia/nemotron-3-ultra-550b-a55b`, `nvidia/nemotron-3.5-content-safety`, `nvidia/nemotron-3.5-lightning-30b-a3b`, `nvidia/riva-translate-4b-instruct-v1.1`, `nvidia/riva-translate-4b-instruct-v2`, `poolside/laguna-xs-2.1`, `z-ai/glm-5.3-flash` — в форматах Chat Completions и Messages (там, где модель их поддерживает). **Выход** для резерва нового текстового запроса оценивается по типичной длине ответа и принятым условиям. Запрошенный лимит задаётся через `max_tokens` (`max_output_tokens` в Responses). Запрошенный лимит не равен автоматически числу токенов, по которому рассчитан резерв, и не гарантирует фактическую длину ответа у модели без надёжного ограничения. Исходное значение 4096 применяется только к соответствующим маршрутам; конкретное правило зависит от модели и метода. |
| `reasoning` | object | необязательный | `{"effort": "low" \| "medium" \| "high"}` для рассуждающих моделей. |
| `tools` | array | необязательный | Функции, которые модель может вызвать. |
| `text` | object | необязательный | Формат ответа, например `{"format": {"type": "json_schema", ...}}`. |
| `temperature` | number | необязательный | Случайность ответа, если модель её поддерживает. |

## Ответ

| Параметр | Тип | Обязательность | Описание |
| --- | --- | --- | --- |
| `output` | array |  | Элементы ответа: сообщения (`message`), рассуждения, вызовы функций. В SDK удобно брать `output_text`. |
| `status` | string |  | `completed`, `incomplete` (упёрся в лимит) или `failed`. |
| `usage` | object |  | `input_tokens`, `output_tokens`, `total_tokens`. |

Остались вопросы? Пришлите Request ID и описание — поможем разобраться.[Написать в поддержку](mailto:support@ailoot.ai)

## Ailoot · Компания и портфель её проектов





Ailoot опирается на накопленный опыт работы, большую клиентскую базу, стабильный сервис и постоянный контроль KPI.





Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.





Этот опыт Ailoot использует для API-доступа к нейросетям в продуктах клиентов, агентах, приложениях и автоматизациях.
