Saltar al contenido principal

Endpoints

MétodoEndpointDescripción
POST/api/v1/generateTask/nano-banana-proCrear tarea de generación
GET/api/v1/statusTask/nano-banana-proConsultar estado de la tarea

Autenticación

Todas las solicitudes requieren una clave de API en el encabezado:
Authorization: Bearer YOUR_API_KEY

Cuerpo de la solicitud

{
  "request_type": "async",
  "callback_url": "https://...",
  "provider": "auto",
  "input": {
    "mode": "text-to-image",
    "prompt": "...",
    "aspect_ratio": "16:9",
    "resolution": "2K",
    "image_urls": ["..."],
    "output_format": "png"
  }
}

Parámetros

request_type
string
predeterminado:"async"
async (polling) o callback (webhook)
callback_url
string
URL de callback, requerida cuando request_type=callback (condicional)
provider
string
predeterminado:"auto"
Estrategia de enrutamiento: auto, value u official
input
object
requerido
Parámetros de entrada del modelo
Opciones de modo:
  • text-to-image — Generar desde descripción de texto
  • image-to-image — Generar con imágenes de referencia

Ejemplo

Text-to-Image
curl -X POST "https://api.apixo.ai/api/v1/generateTask/nano-banana-pro" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "request_type": "async",
    "provider": "value",
    "input": {
      "mode": "text-to-image",
      "prompt": "a cozy cyberpunk cafe with neon lights, ultra detailed",
      "aspect_ratio": "3:2",
      "resolution": "2K",
      "output_format": "png"
    }
  }'
Image-to-Image (múltiples referencias)
curl -X POST "https://api.apixo.ai/api/v1/generateTask/nano-banana-pro" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "request_type": "callback",
    "callback_url": "https://your-server.com/callback",
    "provider": "official",
    "input": {
      "mode": "image-to-image",
      "prompt": "combine these styles into a futuristic cityscape",
      "aspect_ratio": "16:9",
      "resolution": "4K",
      "image_urls": [
        "https://example.com/ref1.jpg",
        "https://example.com/ref2.jpg",
        "https://example.com/ref3.jpg"
      ],
      "output_format": "jpeg"
    }
  }'

Respuesta

POST /api/v1/generateTask/nano-banana-pro

Devuelve taskId en caso de éxito para consultas de estado posteriores. Éxito:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678"
  }
}
Error:
{
  "code": 400,
  "message": "Insufficient credits",
  "data": null
}

GET /api/v1/statusTask/nano-banana-pro

Consulta el estado de ejecución y resultados de la tarea vía taskId.
curl -X GET "https://api.apixo.ai/api/v1/statusTask/nano-banana-pro?taskId=task_12345678" \
  -H "Authorization: Bearer YOUR_API_KEY"
Éxito:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "success",
    "resultJson": "{\"resultUrls\":[\"https://r2.apixo.ai/image.png\"]}",
    "createTime": 1767965610929,
    "completeTime": 1767965652317,
    "costTime": 41388
  }
}
Fallido:
{
  "code": 200,
  "message": "success",
  "data": {
    "taskId": "task_12345678",
    "state": "failed",
    "failCode": "CONTENT_VIOLATION",
    "failMsg": "Content does not meet safety guidelines"
  }
}

Campos de respuesta de estado

taskId
string
Identificador único de la tarea.
state
string
Estado actual: pending, processing, success o failed.
resultJson
string
Cadena JSON que contiene el array resultUrls. Solo presente en éxito. Parsea con JSON.parse().
failCode
string
Código de error. Solo presente cuando state es failed. Consulta Códigos de error.
failMsg
string
Mensaje de error legible. Solo presente cuando state es failed.
createTime
integer
Marca temporal de creación (Unix milisegundos).
completeTime
integer
Marca temporal de finalización (Unix milisegundos).
costTime
integer
Duración del procesamiento en milisegundos.

Códigos de error

CódigoDescripción
400Parámetros inválidos o error de solicitud
401Clave de API inválida o ausente
429Límite de tasa superado
Código de falloDescripción
CONTENT_VIOLATIONEl contenido viola directrices de seguridad
INVALID_IMAGE_URLNo se puede acceder a la URL de imagen proporcionada

Límites de tasa

LímiteValor
Solicitudes10000 / minuto
Tareas simultáneas1000
Superar los límites devuelve error 429. Espera y reintenta.

Consejos

  • Tiempo de generación:
    • Resolución 1K: ~20-30 segundos
    • Resolución 2K: ~30-45 segundos
    • Resolución 4K: ~45-60 segundos
    • Envía la tarea, espera 20 segundos y luego consulta cada 3 segundos
  • Ventajas Pro:
    • Salida hasta 4K
    • Hasta 10 imágenes de referencia
    • Ricos detalles, mayor calidad
  • Modo callback: Para alta concurrencia o generación en alta resolución, usa modo callback.
  • Caducidad de imágenes: Las URLs de resultado son válidas 15 días. Descarga y almacena salidas importantes con prontitud.
  • Moderación de contenido: Los prompts deben cumplir las directrices de seguridad. Violaciones devuelven CONTENT_VIOLATION.
  • Selección de resolución:
    • 1K: Generación rápida, para vistas previas y redes sociales
    • 2K: Calidad y velocidad equilibradas, para la mayoría de escenarios
    • 4K: Máxima calidad, para impresión y uso profesional
  • Selección de proporción:
    • 1:1: Cuadrado, para avatares
    • 16:9: Apaisado, para fondos de escritorio
    • 9:16: Retrato, para fondos de móvil
    • 21:9: Ultra-ancho, para anuncios banner
  • Selección de formato:
    • png: Sin pérdidas, soporta transparencia, mayor archivo (por defecto)
    • jpeg: Compresión con pérdidas, menor archivo; usa para 4K para reducir tamaño
  • Fusión de múltiples referencias:
    • Soporta hasta 10 imágenes de referencia
    • El modelo combina inteligentemente estilo, composición y color
    • Más referencias = fusión más compleja
    • Se recomiendan 2-5 referencias para mejores resultados
  • Formatos de imagen: image_urls soporta JPG, PNG, WebP, máx. 10MB por imagen.
  • Consejos de prompt: Para salida en alta resolución, añade “ultra detailed”, “high quality” a los prompts para más detalle.

Las URLs de resultado caducan tras 15 días. Descarga y almacena salidas importantes con prontitud. Para escenarios de alta concurrencia, usa modo callback para evitar polling frecuente.

Relacionado