NezhaGate
POST https://nezhagate.com/v1/images/generations

Generación de imágenes (asíncrona, por trabajos) sobre Google Nano Banana 2 (Gemini 3.1 Flash Image). Texto a imagen solo necesita un prompt; imagen a imagen recibe la referencia en `image` (una URL, un data: URI o base64) y la repinta conservando el sujeto original. La llamada devuelve al instante un id de trabajo (HTTP 202); consulta GET /v1/images/jobs/{id} para obtener el resultado. Admite 7 relaciones de aspecto y 1K / 2K / 4K, es rápido y económico, y las peticiones fallidas no se cobran.

Probar en el Playground →

Autenticación

Header
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

Crea una clave API en la consola para empezar.

Cuerpo de la petición

ParámetroTipoObligatorioDescripción
model string ID del modelo; aquí nano-banana-2.
prompt string Prompt de texto que describe la imagen.
size string No Relación de aspecto de salida. Recomendado: pasa una relación (1:1, 3:4, 2:3, 9:16, 4:3, 3:2, 16:9) y el modelo renderiza de forma nativa con esa proporción, sin recortar el sujeto. También se aceptan tamaños en píxeles (p. ej. 1024x1024, 1024x1536, 1536x1024). Por defecto 1:1 (cuadrada).
n integer No Número de imágenes; por defecto 1.
image string No Imagen a imagen: una imagen de referencia como URL pública, data: URI o base64 en bruto. Si está presente, la petición ejecuta una verdadera transformación imagen a imagen que preserva la identidad en el tamaño y la proporción elegidos, equivalente a llamar a /v1/images/edits.
images array No Referencia con varias imágenes (hasta 8; se recomiendan ≤4 para mantener la coherencia del sujeto): pasa un array de cadenas o un array de objetos [{"image_url": "..."}]; cada elemento puede ser una URL pública, un data: URI o base64. Ejecuta imagen a imagen con múltiples referencias (fusionando los sujetos y el estilo de varias), equivalente a la entrada multiimagen de /v1/images/edits. Para una sola referencia también sirve el campo image de arriba.

Ejemplo de petición

cURL
# 1) submit -> 202 {"id":"img_...","status":"queued"}
curl https://nezhagate.com/v1/images/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "nano-banana-2", "prompt": "a serene ink-wash poster, lots of negative space", "size": "1024x1536"}'
# 2) poll until status=succeeded
curl https://nezhagate.com/v1/images/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'

Respuesta

200 · JSON
{
  "id": "img_3f9a...c2",
  "object": "image.generation.job",
  "status": "queued",
  "model": "nano-banana-2"
}

Imagen a imagen

Imagen a imagen: pon la referencia en `image` (una URL pública, un data: URI o base64 en bruto) para ejecutar una verdadera transformación que preserva la identidad: el modelo regenera a partir de ella con el tamaño y la proporción elegidos. Equivale a llamar a /v1/images/edits.

curl · Imagen a imagen
curl https://nezhagate.com/v1/images/generations -H "Authorization: Bearer YOUR_API_KEY" -H "Content-Type: application/json" -d '{"model": "nano-banana-2", "prompt": "sustituye el fondo por un cielo estrellado", "image": "https://example.com/ref.png", "size": "3:4"}'

Trabajos de imagen (enviar → consultar el resultado)

Renderizar una imagen suele tardar entre 1 y 3 minutos, así que los endpoints de imagen funcionan solo por trabajos: al enviar una petición recibes al instante un id de trabajo (HTTP 202) y consultas el resultado con ese id. El servidor sigue renderizando aunque se reinicie, así que la imagen nunca se pierde. Funciona igual para texto a imagen y para imagen a imagen. (El antiguo campo "async": true ya no hace falta; se acepta pero se ignora.)

curl · Paso 1 · Envía el trabajo (devuelve un id de inmediato, HTTP 202)
curl https://nezhagate.com/v1/images/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "nano-banana-2", "prompt": "un cartel de tinta china con mucho espacio negativo", "size": "3:4"}'
Ejemplo de respuesta
{ "id": "img_3f9a...c2", "object": "image.generation.job", "status": "queued", "model": "nano-banana-2" }
curl · Paso 2 · Consulta el resultado (cada 2-3 s hasta que status sea succeeded)
curl https://nezhagate.com/v1/images/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'
Ejemplo de respuesta
{
  "id": "img_3f9a...c2",
  "object": "image.generation.job",
  "status": "succeeded",
  "model": "nano-banana-2",
  "data": [{ "url": "https://img.nezhagate.com/i/9f86d081a8....png" }]
}

status es queued / processing / succeeded / failed. Si tiene éxito, la respuesta lleva data[].url. Un trabajo solo lo puede consultar la cuenta que lo creó. Los endpoints de imagen son siempre asíncronos: al enviar recibes un id de trabajo; "async": true se acepta únicamente por compatibilidad y se ignora.

Códigos de error

CodeDescripción
401Falta la clave API o no es válida
402Saldo insuficiente o clave por encima de su cuota
400Modelo o parámetro no soportado
429Límite de tasa del proveedor
502Fallaron todas las rutas de proveedor