genmux API теперь доступен всем. Читать документацию →
genmux API

Nano Banana Pro API — генерация изображений

Генерация изображений повышенной детализации — для главных визуалов и крупных кадров под печать, с выводом в 1K, 2K и 4K. В тире 1K примерно вдвое дороже базовой модели.

от 4 кредитов ≈ 4,17 ₽ за изображение

Кратко

Идентификатор модели
nanobanana-pro
Возможности
image.generate
Разрешения
1K · 2K · 4K
Соотношения сторон
auto, 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5, 21:9
Изображений за запрос
4
Seed
поддерживается
Референсные изображения
до 14 за запрос
Негативный промпт
поддерживается
Длина промпта
до 2000 символов

Примеры генераций

Необработанные результаты этой модели, полученные через API.

  • Nano Banana Pro — пример: ceramic coffee cup on a concrete table soft window light

    ceramic coffee cup on a concrete table soft window light

Цены

Стоимость = кредиты за изображение × n. Кредиты резервируются при отправке запроса и полностью возвращаются, если генерация завершилось ошибкой или вы отменили его до начала работы.

РазрешениеКредитов за изображение₽ за изображение₽ за 4 изображения
1K44,17 ₽16,68 ₽
2K66,26 ₽25,02 ₽
4K88,34 ₽33,36 ₽

Суммы в рублях пересчитаны по цене пакета «Scale»; чем больше пакет, тем дешевле кредит. Полный список пакетов — на странице цен.

Все пакеты кредитов →

Прайс-листы других провайдеров

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

ПровайдерЗаявленная цена за изображениеПроверено
genmux API (1K)
4 кредита · по цене пакета «Scale»
4,17 ₽актуально
PiAPI (Nano Banana Pro)
Прайс реселлера, «от».
$0.1052026-09-06
Google (Gemini 3 Pro Image — “Nano Banana Pro”)
Официальный прайс Gemini API: $0.134 за изображение в 1K/2K, $0.24 в 4K.
$0.1342026-09-06

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

Создайте ключ в кабинете, отправьте запрос и опрашивайте статус генерации. Во втором запросе подставьте id, который вернул первый.

1. Отправьте запрос

cURL
curl -s -X POST https://api.genmux.tech/v1/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"model":"nanobanana-pro","prompt":"a red fox in fresh snow, low winter sun","n":1,"resolution":"1K","ratio":"1:1"}'
Response · 202 Accepted
{
  "id": "0d8b6a3e-2f1c-4a5b-9c1d-7e2f3a4b5c6d",
  "model": "nanobanana-pro",
  "status": "queued",
  "params": {"prompt": "a red fox in fresh snow, low winter sun", "n": 1, "resolution": "1K", "ratio": "1:1"},
  "cost": 4,
  "created_at": "2026-08-30T20:01:12.345Z"
}

2. Опрашивайте, пока status не станет succeeded (обычно 1–20 с)

cURL
curl -s https://api.genmux.tech/v1/generations/0d8b6a3e-2f1c-4a5b-9c1d-7e2f3a4b5c6d \
  -H "Authorization: Bearer $API_KEY"
Response · 200 OK
{
  "id": "0d8b6a3e-2f1c-4a5b-9c1d-7e2f3a4b5c6d",
  "model": "nanobanana-pro",
  "status": "succeeded",
  "cost": 4,
  "images": [
    {"index": 0, "url": "https://…/0.png?X-Amz-Expires=900&…", "expires_at": "2026-08-30T20:16:30Z", "mime": "image/png", "width": 1024, "height": 1024, "bytes": 1843201, "sha256": "9f2c…"}
  ],
  "created_at": "2026-08-30T20:01:12.345Z",
  "finished_at": "2026-08-30T20:01:19.802Z"
}
Python (requests)
import os, time, uuid, requests

BASE = "https://api.genmux.tech"
auth = {"Authorization": f"Bearer {os.environ['API_KEY']}"}

job = requests.post(
    f"{BASE}/v1/generations",
    headers={**auth, "Idempotency-Key": str(uuid.uuid4())},
    json={"model": "nanobanana-pro", "prompt": "a red fox in fresh snow, low winter sun", "n": 1, "resolution": "1K", "ratio": "1:1"},
    timeout=30,
).json()

while job["status"] in ("queued", "running"):
    time.sleep(1)
    job = requests.get(f"{BASE}/v1/generations/{job['id']}", headers=auth, timeout=30).json()

print(job["images"][0]["url"])  # presigned, valid for 15 minutes
Node.js (fetch)
const BASE = "https://api.genmux.tech";
const auth = { Authorization: `Bearer ${process.env.API_KEY}` };

let job = await fetch(`${BASE}/v1/generations`, {
  method: "POST",
  headers: { ...auth, "Idempotency-Key": crypto.randomUUID(), "Content-Type": "application/json" },
  body: JSON.stringify({ model: "nanobanana-pro", prompt: "a red fox in fresh snow, low winter sun", n: 1, resolution: "1K", ratio: "1:1" }),
}).then((r) => r.json());

while (job.status === "queued" || job.status === "running") {
  await new Promise((r) => setTimeout(r, 1000));
  job = await fetch(`${BASE}/v1/generations/${job.id}`, { headers: auth }).then((r) => r.json());
}

console.log(job.images[0].url); // presigned, valid for 15 minutes
Полный справочник API →

Частые вопросы

Что такое Nano Banana Pro API?
Nano Banana Pro — модель генерации изображений повышенного качества (capability image.generate) в каталоге genmux API, идентификатор «nanobanana-pro». Формат запроса тот же, что у базовой модели: тот же эндпоинт, тот же ключ, те же поля. Разница только в цене — больше кредитов за изображение в обмен на детализацию и более точное следование промпту.
Чем Nano Banana Pro отличается от базовой модели?
Она даёт больше деталей и точнее следует длинным промптам — это верный выбор для главных визуалов, предметной съёмки и всего, что пойдёт в печать или под кроп. В тире 1K она стоит примерно вдвое дороже, зато рендерит в 1K, 2K, 4K, тогда как базовая модель ограничена 1K. Для превью, черновиков и больших партий обычно выгоднее базовая модель.
Сколько стоит одно изображение Nano Banana Pro?
От 4 кредитов за изображение — это примерно 4,17 ₽ по цене пакета «Scale». Цена зависит от разрешения: 1K — 4 кредита · 2K — 6 кредитов · 4K — 8 кредитов. Запрос на n изображений стоит в n раз дороже.
Когда лучше взять базовую модель?
Когда объём важнее детализации каждого кадра: превью, мудборды, A/B-варианты — всё, что пользователь пролистает. У обеих моделей общий ключ и общий баланс, поэтому маршрутизировать можно на уровне запроса: итерации на базовой модели в 1K, а удачный кадр перерендерить здесь в более высоком тире — разница в одном поле.
Какие разрешения поддерживаются?
Разрешение задаётся тиром, а не числом пикселей: эта модель рендерит в 1K, 2K, 4K, а без поля resolution используется 1K. Тир вне этого списка отклоняется с ошибкой 400 validation_error — молча ничего не масштабируется. Старое поле size («1024x1024») по-прежнему принимается ради уже написанных интеграций: оно отображается на ближайший тир и соотношение сторон. В новом коде используйте resolution и ratio.
Какие соотношения сторон доступны?
auto, 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 5:4, 4:5, 21:9. Передаются в поле ratio; по умолчанию 1:1, а «auto» отдаёт выбор формы самой модели. На цену соотношение сторон не влияет — цену определяет только тир разрешения.
Можно ли передавать референсные изображения (image-to-image)?
Да. Передайте images — массив публичных https-ссылок, до 14 за запрос. В этом случае промпт описывает нужную правку или вариацию, а не всю сцену, и сам промпт становится необязательным. Ссылки должны быть доступны из интернета: приватные хосты и не-https отклоняются с ошибкой 400 validation_error.
Есть ли негативный промпт?
Да. Передайте negative_prompt рядом с prompt и опишите, чего в кадре быть не должно: артефакты, текст, водяные знаки, нежелательный цвет. Дополнительной платы за это нет.
Сколько изображений можно получить за один запрос?
До 4 штук — через поле n. Каждое изображение оплачивается отдельно, поэтому n=4 в тире 1K стоит в 4 раза дороже одного. Для больших объёмов отправляйте несколько запросов: пропускную способность ограничивает лимит одновременных генераций аккаунта (по умолчанию 20), а не n.
Можно ли воспроизвести результат? Поддерживается ли seed?
Да. Передайте целочисленный seed вместе с промптом — тот же seed при том же промпте, разрешении и соотношении сторон даёт воспроизводимый результат. Без seed каждый вызов сэмплируется заново.
Сколько времени занимает генерация?
Обычно 1–20 секунд от отправки до статуса succeeded — зависит от размера и очереди. API асинхронный: POST /v1/generations возвращает id генерации за миллисекунды, дальше вы либо опрашиваете GET /v1/generations/{id}, либо ждёте вебхук.
Есть ли вебхуки или нужно опрашивать статус?
Работают оба способа. Передайте webhook_url (только https, публичный хост) при создании генерации — мы отправим POST по завершении и будем повторять с экспоненциальной задержкой до 8 попыток, пока ваш эндпоинт не вернёт 2xx. Каждая доставка подписана HMAC-SHA256 секретом вебхуков вашего аккаунта. Опрос тоже допустим: чтение статуса генерации дешёвое.
Что будет, если генерация не удалась?
Списания не произойдёт. Кредиты резервируются при создании генерации и возвращаются полностью, если генерация завершилась ошибкой, была отменена в очереди или модель временно недоступна (503 model_unavailable). У неудачной генерации есть объект error с кодом — например, content_policy, — по которому удобно ветвить логику.
Как устроены кредиты?
Кредиты предоплачены и не сгорают по месячному циклу: купили пакет один раз и тратите по мере генерации. Подписки нет. Одно изображение в тире 1K на этой модели стоит 4 кредита; баланс и полная история операций видны в кабинете и через GET /v1/account.
Что защищает от двойного списания при повторе запроса?
Каждый POST /v1/generations требует заголовок Idempotency-Key. Повторная отправка с тем же ключом вернёт исходную генерацию с кодом 200 и ничего не спишет — таймаут сети можно безопасно ретраить. Тот же ключ с другим телом запроса отклоняется с ошибкой 422 idempotency_key_mismatch.
Можно ли использовать изображения в коммерческих целях?
Да: по нашим условиям использования права на результат генерации, которые мы можем передать, переходят к вам, и их можно использовать коммерчески — при условии, что промпт и сценарий использования не нарушают условия и контент-политику провайдера модели. Перед запуском публичного продукта прочитайте условия.
Сколько живут ссылки на изображения?
Ссылки временные и действуют 15 минут с момента выдачи. Если изображения нужны надолго, скачайте их в своё хранилище; повторный запрос генерации выдаёт новые ссылки.
Как потом перейти на другую модель?
Поменяйте поле model в теле запроса — всё остальное остаётся тем же. Идентификаторы возвращает GET /v1/models вместе с тирами разрешения, соотношениями сторон и ценами, так что каталог можно показывать в своём интерфейсе без передеплоя. Неизвестный id вернёт 404 model_not_found.
Есть ли ограничение на длину промпта?
Промпт — от 1 до 2000 символов. Более длинный отклоняется с ошибкой 400 validation_error; размер всего тела запроса ограничен 64 КБ.

Другие модели

Тот же ключ и тот же формат запроса — достаточно поменять поле model.

  • Nano Banana API

    nanobanana

    Быстрая универсальная генерация изображений по тексту и по референсам в 1K — через один HTTP-эндпоинт. Оплата в кредитах за изображение, при неудаче кредиты возвращаются автоматически.

    от 2 кредитов ≈ 2,09 ₽ за изображение

  • Qwen-Image 2.0 API

    qwen-image-2

    Qwen-Image 2.0 от Alibaba — модель, ориентированная на разборчивый текст внутри изображения, в том числе на китайском; принимает референсные изображения, вывод в 1K и 2K.

    от 3 кредитов ≈ 3,13 ₽ за изображение

  • Qwen-Image Max API

    qwen-image-max

    Qwen-Image Max — флагман линейки Qwen-Image от Alibaba: приём референсных изображений, вывод в 1K и 2K и фиксированный набор из пяти соотношений сторон.

    от 8 кредитов ≈ 8,34 ₽ за изображение

  • Seedream 5.0 API

    seedream-5

    ByteDance Seedream 5.0 — модель высокого разрешения для фотореалистичных кадров и текста в кадре; отдаётся только в 2K и 4K. Принимает референсные изображения, оплата в кредитах за изображение.

    от 16 кредитов ≈ 16,68 ₽ за изображение

  • Wan 2.7 Image API

    wan-2-7-image

    wan2.7-image из линейки Tongyi Wanxiang (Alibaba) — генерация по тексту и по референсам в 1K и 2K, через тот же эндпоинт и API-ключ, что и остальной каталог.

    от 2 кредитов ≈ 2,09 ₽ за изображение