API

Nano Banana 2.1 API

Изображение

API Nano Banana 2.1 обеспечивает более чёткие изображения и точное редактирование. Создавайте изображения по текстовым промптам или редактируйте референсы с гибкими соотношениями сторон и разрешением до 4K. Интегрируйте API, чтобы добавить в приложение генерацию и редактирование изображений высокого качества.

Авторизация

Bearerstringheaderобязательно

API-ключ для авторизации запросов

Тело

application/json
modelstringобязательно
nano-banana-2-1
input.promptstringобязательно

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

input.imagesstring[]необязательно

Необязательные URL референсных изображений. Используйте только общедоступные HTTPS URL. Для генерации изображений по тексту поле можно не передавать.

input.aspect_ratiostringнеобязательно

Соотношение ширины и высоты результата. Auto позволяет модели выбрать значение автоматически.

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

auto1:12:33:23:44:34:55:49:1616:921:91:44:11:88:1
input.resolutionstringнеобязательно

Уровень разрешения итогового изображения. Используйте значения 1k, 2k или 4k в нижнем регистре. Если поле не указано или оставлено пустым, по умолчанию используется 2k.

По умолчанию: 2k

1k2k4k

Примеры запросов

POST /api/v1/create
curl -X POST https://nanobanana.io/api/v1/create \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "nano-banana-2-1",
  "input": {
    "prompt": "Кинематографичная продуктовая фотография футуристической камеры в форме банана",
    "aspect_ratio": "1:1",
    "resolution": "2k"
  }
}'
POST /api/v1/create · HTTP 201
{
  "data": {
    "task_id": "task_example",
    "model": "nano-banana-2-1",
    "status": "processing",
    "credits": 20
  }
}

Опрашивайте этот endpoint с возвращённым ID задачи до её завершения или ошибки. Рекомендуем выполнять polling каждые 5 секунд для получения актуального статуса.

POST /api/v1/check
{
  "task_id": "task_example"
}

Ответ

Статус задачи, возвращаемый POST /api/v1/check. ID, URL и временные метки ниже приведены для примера.

idstringобязательно

Идентификатор задачи в data.id совпадает с task_id в запросе проверки.

statusstringобязательно
completed означает успешную генерацию, а data.data содержит результаты. При других статусах data.data равно null.
failed_reasonstringнеобязательно

Возвращается только при status failed и объясняет причину ошибки. Для completed и processing это поле отсутствует.

Завершено · completed

Ссылки для скачивания находятся в data.data.results.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2-1",
    "status": "completed",
    "data": {
      "results": [
        "https://example.com/generated.png"
      ],
      "processing_time": 18
    }
  }
}

Другие статусы

При processing или failed значение data.data равно null. Этот пример показывает failed: только failed содержит failed_reason. При processing продолжайте проверку, при failed прекратите её.

POST /api/v1/check · HTTP 200
{
  "data": {
    "id": "task_example",
    "created_at": 1791244800,
    "model": "nano-banana-2-1",
    "status": "failed",
    "data": null,
    "failed_reason": "Generation failed."
  }
}

Расход кредитов

Расход кредитов на запрос, создающий одно изображение.

Расход кредитов на запрос, создающий одно изображение.
Разрешение1K2K4K
Одно изображение122030

Необязательные параметры не указаны: 12 кредитов

Явно укажите перечисленные параметры input, чтобы использовать соответствующий тариф. Запросы на несколько изображений могут расходовать больше кредитов.

Поле credits в ответе POST /api/v1/create показывает число кредитов, списанных за задачу.