Начало работы
Быстрый старт
Начните работу с Nano Banana API, используя Bearer-токен, JSON-тело запроса и два production endpoint: create и check.
Что понадобится
- AАккаунт Nano Banana с доступными кредитами
- API-ключ, созданный в панели API-ключей
Получить API-ключ
Войдите в аккаунт, откройте страница API-ключей, укажите название ключа и нажмите «Создать». Сразу скопируйте ключ: полностью он показывается только один раз.
Настройка HTTP-заголовка запроса
Базовый URL
https://nanobanana.ioAuthorization: Bearer sk_live_your_api_key
Content-Type: application/jsonБыстрый старт
Отправьте JSON payload для создания асинхронной задачи генерации. Сохраните возвращённый task_id и используйте его для проверки статуса задачи.
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": "1k"
}
}'Ответ{
"data": {
"task_id": "d0a8d9f2-5e01-4c5d-9f40-38d197a1c617",
"model": "nano-banana-2",
"status": "processing",
"credits": 20
}
}Создать задачу
Отправьте ID модели и объект input, чтобы создать асинхронную задачу генерации. Этот endpoint подтверждает постановку задачи в очередь и не ожидает готовности итогового медиа.
/api/v1/createАвторизация
AuthorizationstringобязательноAuthorization: Bearer sk_live_your_api_keyТело запроса
application/jsonmodelstringобязательно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 секунд для получения актуального статуса.
/api/v1/checkТело запроса
application/jsontask_idstringобязательно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
}
}