Генерация изображений
POST https://api.alltokens.ru/api/v1/images/generations
Content-Type: application/json
Совместимый с OpenAI маршрут API для генерации изображений через модели, которые поддерживают вывод изображений.
Заголовки
| Заголовок | Обязательный | Описание |
|---|---|---|
| Authorization | Да | Bearer <API_KEY> |
| Content-Type | Да | application/json |
Тело запроса
| Поле | Тип | Обязательный | Описание |
|---|---|---|---|
| model | string | Да | Идентификатор модели для генерации изображений, например google/gemini-3.1-flash-image-preview |
| prompt | string | Да | Текстовое описание изображения |
| size | string | Нет | Размер изображения. Рекомендуемые значения: 1024x1024, 1024x1536, 1536x1024 |
| response_format | string | Нет | Формат ответа: b64_json по умолчанию или url |
| background | string | Нет | Дополнительный параметр фона, если его поддерживает модель |
| metadata | object | Нет | Дополнительные метаданные маршрутизации |
| provider | object | Нет | Ограничения/настройки провайдера |
| extra_body | object | Нет | Дополнительные поля, которые нужно пробросить в upstream |
Поле n можно передавать для совместимости с клиентами OpenAI-формата, но текущий маршрут ориентирован на одиночную генерацию.
Пример (curl, base64 в ответе)
bash
curl -X POST "https://api.alltokens.ru/api/v1/images/generations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google/gemini-3.1-flash-image-preview",
"prompt": "A cinematic ginger cat sitting on a windowsill, soft morning light",
"size": "1024x1024"
}'Пример (curl, URL в ответе)
bash
curl -X POST "https://api.alltokens.ru/api/v1/images/generations" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "google/gemini-3.1-flash-image-preview",
"prompt": "A watercolor postcard of Saint Petersburg at sunrise",
"size": "1024x1536",
"response_format": "url"
}'Ответ (200)
Корневой объект:
| Поле | Тип | Описание |
|---|---|---|
| created | number | Unix-время создания |
| data | array | Список сгенерированных изображений |
Элемент data[]
| Поле | Тип | Описание |
|---|---|---|
| b64_json | string | Base64-представление изображения, если response_format не задан или равен b64_json |
| url | string | URL или data URL изображения, если запрошен response_format: "url" |
| revised_prompt | string | Опционально. Уточнённый промпт, если модель его вернула |
Пример ответа (b64_json)
json
{
"created": 1773330518,
"data": [
{
"b64_json": "iVBORw0KGgoAAAANSUhEUgAA..."
}
]
}Пример ответа (url)
json
{
"created": 1773330518,
"data": [
{
"url": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
}
]
}Совместимость
- Маршрут совместим с OpenAI-совместимыми SDK и клиентами, которые используют
POST /images/generations. - Внутри AllTokens может преобразовывать запрос в формат upstream-провайдера, но наружу сохраняет OpenAI-совместимый контракт.
- Если клиент ожидает ссылку, а не base64, явно передайте
"response_format": "url".
Коды ответов
| Код | Описание |
|---|---|
| 200 | Успех |
| 400 | Неверный JSON, пустой body или невалидные параметры |
| 401 | Не авторизован |
| 404 | Модель не найдена |
| 429 | Превышен лимит запросов |
| 500 | Внутренняя ошибка |