API
API
Nano Banana 2 API
ИзображениеNano Banana 2 API объединяет знания о мире в реальном времени с продвинутым reasoning, обеспечивая лучшее понимание промптов и более точные визуальные результаты. Создавайте согласованные изображения с несколькими объектами в нативном 4K, используйте гибкие соотношения сторон и качественную глобальную типографику в сложных композициях. Интегрируйте Nano Banana 2 API для более умных, масштабируемых и качественных image-workflow.
Тело
application/jsonmodelstringобязательноnano-banana-2input.promptstringобязательноОпишите изображение, которое нужно создать, или изменения для референсных изображений. Пробелы в начале и конце строки удаляются.
Максимальная длина: 5 000 символов
input.imagesstring[]необязательноНеобязательные URL референсных изображений. Используйте только общедоступные HTTPS URL. Для генерации изображений по тексту поле можно не передавать.
Максимум элементов: 14
input.aspect_ratiostringнеобязательноСоотношение ширины и высоты результата. Auto позволяет модели выбрать значение автоматически.
По умолчанию: auto
input.resolutionstringнеобязательноУровень разрешения результата; регистр символов не учитывается. Не передавайте поле или оставьте его пустым, чтобы использовать значение по умолчанию.
По умолчанию: 2k
Примеры запросов
POST /api/v1/createcurl -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": "2k"
}
}'POST /api/v1/create · HTTP 201{
"data": {
"task_id": "task_example",
"model": "nano-banana-2",
"status": "processing",
"credits": 30
}
}Опрашивайте этот endpoint с возвращённым ID задачи до её завершения или ошибки. Рекомендуем выполнять polling каждые 5 секунд для получения актуального статуса.
POST /api/v1/check{
"task_id": "task_example"
}Ответ
Статус задачи, возвращаемый POST /api/v1/check. ID, URL и временные метки ниже приведены для примера.
idstringобязательноИдентификатор задачи в data.id совпадает с task_id в запросе проверки.
statusstringобязательно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",
"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",
"status": "failed",
"data": null,
"failed_reason": "Generation failed."
}
}Расход кредитов
Расход кредитов на запрос, создающий одно изображение.
| Разрешение | 1K | 2K | 4K |
|---|---|---|---|
| Одно изображение | 20 | 30 | 40 |
Необязательные параметры не указаны: 20 кредитов
Явно укажите перечисленные параметры input, чтобы использовать соответствующий тариф. Запросы на несколько изображений могут расходовать больше кредитов.
Поле credits в ответе POST /api/v1/create показывает число кредитов, списанных за задачу.
