Перейти к основному содержанию

Эндпоинты

МетодЭндпоинтОписание
POST/api/v1/generateTask/nano-bananaСоздание задачи генерации
GET/api/v1/statusTask/nano-bananaЗапрос статуса задачи

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

Все запросы требуют API Key в заголовке:
Authorization: Bearer YOUR_API_KEY

Тело запроса

{
  "request_type": "async",
  "callback_url": "https://...",
  "provider": "auto",
  "input": {
    "mode": "text-to-image",
    "prompt": "...",
    "aspect_ratio": "16:9",
    "image_urls": ["..."],
    "output_format": "png"
  }
}

Параметры

request_type
string
по умолчанию:"async"
async (polling) или callback (webhook)
callback_url
string
URL callback, обязателен при request_type=callback (условно)
provider
string
по умолчанию:"auto"
Стратегия маршрутизации: auto, value или official
input
object
обязательно
Входные параметры модели
Варианты mode:
  • text-to-image — Генерация по текстовому описанию
  • image-to-image — Генерация с референсными изображениями

Пример

Text-to-Image
curl -X POST "https://api.apixo.ai/api/v1/generateTask/nano-banana" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "request_type": "async",
    "provider": "value",
    "input": {
      "mode": "text-to-image",
      "prompt": "a cozy cyberpunk cafe with neon lights",
      "aspect_ratio": "3:2",
      "output_format": "png"
    }
  }'
Image-to-Image
curl -X POST "https://api.apixo.ai/api/v1/generateTask/nano-banana" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "request_type": "callback",
    "callback_url": "https://your-server.com/callback",
    "provider": "official",
    "input": {
      "mode": "image-to-image",
      "prompt": "make this scene look like sunrise with warm golden light",
      "aspect_ratio": "4:5",
      "image_urls": ["https://example.com/ref1.jpg"],
      "output_format": "jpeg"
    }
  }'

Ответ

POST /api/v1/generateTask/nano-banana

При успехе возвращает taskId для последующих запросов статуса. Успех:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678"
  }
}
Ошибка:
{
  "code": 400,
  "message": "Insufficient credits",
  "data": null
}

GET /api/v1/statusTask/nano-banana

Запрос статуса и результатов задачи по taskId.
curl -X GET "https://api.apixo.ai/api/v1/statusTask/nano-banana?taskId=task_12345678" \
  -H "Authorization: Bearer YOUR_API_KEY"
Успех:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://r2.apixo.ai/image.png\"]}",
    "createTime": 1767965610929,
    "completeTime": 1767965652317,
    "costTime": 41388
  }
}
Ошибка:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "failed",
    "failCode": "CONTENT_VIOLATION",
    "failMsg": "Content does not meet safety guidelines"
  }
}

Поля ответа статуса

taskId
string
Уникальный идентификатор задачи.
state
string
Текущее состояние: pending, processing, success или failed.
resultJson
string
JSON-строка с массивом resultUrls. Только при успехе. Разбирайте через JSON.parse().
failCode
string
Код ошибки. Только при state = failed. См. Коды ошибок.
failMsg
string
Читаемое сообщение об ошибке. Только при state = failed.
createTime
integer
Время создания (Unix миллисекунды).
completeTime
integer
Время завершения (Unix миллисекунды).
costTime
integer
Время обработки в миллисекундах.

Коды ошибок

КодОписание
400Некорректные параметры или ошибка запроса
401Недействительный или отсутствующий API Key
429Превышен лимит запросов
Fail CodeОписание
CONTENT_VIOLATIONКонтент нарушает правила безопасности
INVALID_IMAGE_URLНет доступа к указанному URL изображения

Лимиты

ЛимитЗначение
Запросы10000 / мин
Одновременные задачи1000
При превышении возвращается ошибка 429. Подождите и повторите.

Советы

  • Время генерации: В среднем ~15–20 секунд. Отправьте задачу, подождите 10 секунд, затем опрашивайте каждые 3 секунды.
  • Скорость и цена: Nano Banana оптимален по скорости и стоимости, подходит для быстрого прототипирования и batch-генерации.
  • Режим callback: При высокой нагрузке используйте callback вместо частого polling.
  • Срок URL: URL результатов действительны 15 дней. Скачивайте важные результаты вовремя.
  • Модерация: Prompt должен соответствовать правилам безопасности. Нарушения возвращают CONTENT_VIOLATION.
  • Соотношения сторон:
    • 1:1: Квадрат, для аватарок и соцсетей
    • 3:2/4:3: Горизонтальный, для фото
    • 2:3/3:4: Портретный, для мобильных экранов
    • 16:9/21:9: Широкоэкранный, для баннеров и фонов
    • auto: Автовыбор оптимального соотношения
  • Формат:
    • png: Без потерь, прозрачность, больший размер (по умолчанию)
    • jpeg: Сжатие, меньший размер, удобно для передачи
  • Несколько референсов: Режим image-to-image поддерживает до 5 референсов; модель объединяет стили и контент.
  • Форматы изображений: image_urls поддерживает JPG, PNG, WebP, макс. 10MB на изображение.

URL результатов действительны 15 дней. Скачивайте важные результаты вовремя. При высокой нагрузке используйте режим callback.

См. также