API
API
Nano Banana 2.1 API
ImagenLa API de Nano Banana 2.1 ofrece imágenes más nítidas y una edición más precisa. Crea imágenes a partir de prompts de texto o modifica imágenes de referencia, con relaciones de aspecto flexibles y resultados de hasta 4K. Integra la API para añadir generación y edición de imágenes de alta calidad a tu aplicación.
Cuerpo
application/jsonmodelstringobligatorionano-banana-2-1input.promptstringobligatorioDescribe la imagen que quieres crear o los cambios que deseas aplicar a tus imágenes de referencia. Los espacios en blanco se recortan.
input.imagesstring[]opcionalURL opcionales de imágenes de referencia. Usa únicamente URL HTTPS de acceso público. Omite este campo para generar imágenes a partir de texto.
input.aspect_ratiostringopcionalRelación entre el ancho y el alto de salida. Auto permite que el modelo elija.
Predeterminado: auto
input.resolutionstringopcionalNivel de resolución de la imagen de salida. Usa los valores en minúsculas 1k, 2k o 4k. Si se omite o se deja vacío, se utiliza 2k de forma predeterminada.
Predeterminado: 2k
Ejemplos de solicitud
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-1",
"input": {
"prompt": "Una foto de producto cinematográfica de una cámara futurista con forma de plátano",
"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
}
}Consulta este endpoint con el ID de tarea devuelto hasta que la tarea se complete o falle. Recomendamos consultar cada 5 segundos para comprobar el estado más reciente.
POST /api/v1/check{
"task_id": "task_example"
}Respuesta
Estado de la tarea devuelto por POST /api/v1/check. Los ID, URLs y marcas de tiempo siguientes son ilustrativos.
idstringobligatorioIdentificador de la tarea en data.id, igual al task_id enviado en la consulta.
statusstringobligatoriofailed_reasonstringopcionalSolo se devuelve cuando status es failed, para explicar el fallo. Se omite en completed y processing.
Completada · completed
Las URLs de descarga están en 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
}
}
}Otros estados
Con processing o failed, data.data es null. Este ejemplo muestra failed: solo failed incluye failed_reason. Continúa consultando con processing; detente con 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."
}
}Consumo de créditos
Créditos consumidos por una solicitud que genera una imagen.
| Resolución | 1K | 2K | 4K |
|---|---|---|---|
| Una imagen | 12 | 20 | 30 |
Sin parámetros opcionales: 12 créditos
Envía explícitamente los parámetros input indicados para usar la tarifa correspondiente. Las solicitudes que generan varias imágenes pueden consumir más créditos.
El campo credits de la respuesta de POST /api/v1/create muestra los créditos cobrados por la tarea.
