API
API
Nano Banana Pro API
ImagenNano Banana Pro API ofrece generación de imágenes 2K de alta calidad con escalado a 4K, una mejor comprensión de prompts, representación de texto precisa, iluminación más refinada y mayor control de la composición. Integra la API para incorporar a tus aplicaciones una generación de imágenes más precisa y lista para producción.
Cuerpo
application/jsonmodelstringobligatorionano-banana-proinput.promptstringobligatorioDescribe la imagen que quieres crear o los cambios que deseas aplicar a tus imágenes de referencia. Los espacios en blanco se recortan.
Longitud máxima: 5.000 caracteres
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.
Máximo de elementos: 14
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 salida; los valores no distinguen entre mayúsculas y minúsculas. Omite el campo o déjalo vacío para usar el valor predeterminado.
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-pro",
"input": {
"prompt": "Una foto de producto cinematográfica de una cámara futurista con forma de plátano"
}
}'POST /api/v1/create · HTTP 201{
"data": {
"task_id": "task_example",
"model": "nano-banana-pro",
"status": "processing",
"credits": 50
}
}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-pro",
"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-pro",
"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 | 30 | 30 | 50 |
Sin parámetros opcionales: 50 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.
