Начало работы

Быстрый старт

Начните работу с Nano Banana API, используя Bearer-токен, JSON-тело запроса и два production endpoint: create и check.

Что понадобится

  • AАккаунт Nano Banana с доступными кредитами
  • API-ключ, созданный в панели API-ключей

Получить API-ключ

Войдите в аккаунт, откройте страница API-ключей, укажите название ключа и нажмите «Создать». Сразу скопируйте ключ: полностью он показывается только один раз.

Настройка HTTP-заголовка запроса

Базовый URL

HTTPS
https://nanobanana.io
HTTP
Authorization: Bearer sk_live_your_api_key
Content-Type: application/json

Быстрый старт

Отправьте JSON payload для создания асинхронной задачи генерации. Сохраните возвращённый task_id и используйте его для проверки статуса задачи.

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",
  "input": {
    "prompt": "Кинематографичная продуктовая фотография футуристической камеры в форме банана",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}'
Ответ
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

Создать задачу

Отправьте ID модели и объект input, чтобы создать асинхронную задачу генерации. Этот endpoint подтверждает постановку задачи в очередь и не ожидает готовности итогового медиа.

POST/api/v1/create

Авторизация

Поле
Тип
обязательно
Описание и ограничения
Authorizationstringобязательно
API-ключ передаётся как Bearer-токен в заголовке запроса. Пример: Authorization: Bearer sk_live_your_api_key

Тело запроса

application/json
Поле
Тип
обязательно
Описание и ограничения
modelstringобязательно
Публичный ID модели. Используйте модель из раздела API, например nano-banana-2.
inputobjectобязательно
Входные данные генерации. Они должны содержать непустой prompt. Остальные поля input зависят от модели; перед отправкой изображений, соотношения сторон, длительности, разрешения, количества и других параметров ознакомьтесь с документацией соответствующей модели.
JSON
{
  "model": "nano-banana-2",
  "input": {
    "prompt": "Кинематографичная продуктовая фотография футуристической камеры в форме банана",
    "aspect_ratio": "1:1",
    "resolution": "1k"
  }
}

Ответ на создание

application/json

Успешный ответ содержит ID задачи, ID модели, статус очереди и количество кредитов, зарезервированных для этой задачи.

HTTP 201
{
  "data": {
    "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
    "model": "nano-banana-2",
    "status": "processing",
    "credits": 20
  }
}

Получить статус задачи

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

POST/api/v1/check

Тело запроса

application/json
Поле
Тип
обязательно
Описание и ограничения
task_idstringобязательно
ID задачи, возвращаемый POST /api/v1/create. Используйте этот ID для получения статуса задачи и URL итоговых результатов.
JSON
{
  "task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617"
}

Ответ со статусом

application/json

После завершения обработки ответ содержит URL итоговых результатов и временные метаданные. Пока задача выполняется, data возвращается как null.

HTTP 200
{
  "id": "adc0e6ec-9c12-44fc-b45f-112187766c3",
  "created_at": 1788652800,
  "model": "nano-banana-2",
  "status": "completed",
  "data": {
    "results": [
      "https://cdn.nanobanana.io/api/predictions/example.mp4"
    ],
    "processing_time": 48
  }
}