Crea Gratis
ImagenTexto a imagenIlimitado0 $ por petición

PicassoIA Image

Crea una o dos imágenes a partir de un prompt, en siete formatos de aspecto y en JPG, WebP o PNG. Fija una semilla para reproducir un resultado.

Probar el modeloVer documentación
curl -s -X POST https://api.picassoia.com/v1/models/picassoia/picassoia-image/predictions \  -H "Authorization: Bearer $PICASSOIA_API_KEY" \  -H "Content-Type: application/json" \  -d '{"input":{"prompt":"a lighthouse at sunset, oil painting"}}'

Cómo hacer la llamada

Cada generación son tres peticiones: crear la predicción, consultarla hasta que termine y leer el resultado. El código y las respuestas de abajo son de este modelo y del modo que elegiste.

Antes de empezar

Crea una API key y guárdala en tu servidor, en la variable de entorno PICASSOIA_API_KEY. Cada petición la envía en la cabecera Authorization.

Consigue tu API key
  1. Crea la predicción

    Envía el input en un POST. La API responde 201 al momento, sin esperar al resultado: la predicción está en estado starting, con una estimación en eta y la dirección que hay que consultar en urls.get.

    Petición
    curl -s -X POST https://api.picassoia.com/v1/models/picassoia/picassoia-image/predictions \
      -H "Authorization: Bearer $PICASSOIA_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{"input":{"prompt":"a lighthouse at sunset, oil painting"}}'
    Respuesta · 201 Createdstarting
    {
      "id": "api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60",
      "model": "picassoia/picassoia-image",
      "input": {
        "prompt": "a lighthouse at sunset, oil painting",
        "aspect_ratio": "1:1",
        "num_outputs": 1,
        "output_format": "jpg",
        "output_quality": 80
      },
      "output": null,
      "error": null,
      "status": "starting",
      "created_at": "2026-10-01T09:30:00.000Z",
      "started_at": null,
      "completed_at": null,
      "metrics": {
        "predict_time": null
      },
      "urls": {
        "get": "https://api.picassoia.com/v1/predictions/api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60",
        "cancel": "https://api.picassoia.com/v1/predictions/api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60/cancel"
      },
      "eta": {
        "seconds": 12,
        "next_poll_in_seconds": 6
      }
    }
  2. Consúltala hasta que termine

    Vuelve a pedir urls.get pasados eta.next_poll_in_seconds segundos: a la mitad del tiempo estimado, al llegar a la estimación y después cada 2 segundos. Consultar más a menudo no te da el resultado antes.

    Estados:startingprocessingsucceeded·failed·canceled

    Petición
    # Repeat after eta.next_poll_in_seconds until status is
    # succeeded, failed or canceled.
    curl -s https://api.picassoia.com/v1/predictions/api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60 \
      -H "Authorization: Bearer $PICASSOIA_API_KEY"
    Respuesta · 200 OK · en cursoprocessing
    {
      "id": "api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60",
      "status": "processing",
      "output": null,
      "eta": {
        "seconds": 6,
        "next_poll_in_seconds": 6
      }
    }

    Solo se muestran los campos que cambian; el resto, como en el paso 1.

  3. Lee el resultado

    Cuando status es succeeded, output es una lista de URLs de imágenes. Descarga los archivos que quieras conservar.

    Si status es failed, error dice por qué; canceled significa que se canceló antes de terminar. Estos tres estados son finales: la predicción ya no cambia.

    Petición
    # The last poll holds the result: "output" when "status" is succeeded,
    # "error" when it is failed. With jq, just those three fields:
    curl -s https://api.picassoia.com/v1/predictions/api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60 \
      -H "Authorization: Bearer $PICASSOIA_API_KEY" | jq '.status, .output, .error'
    Respuesta · 200 OK · terminadasucceeded
    {
      "id": "api_3f9c2b7e8d1a4c6f9e0b1a2c3d4e5f60",
      "status": "succeeded",
      "output": [
        "https://…/output-1.jpg"
      ],
      "error": null,
      "completed_at": "2026-10-01T09:30:08.000Z",
      "metrics": {
        "predict_time": 6.4
      },
      "eta": null
    }

    Solo se muestran los campos que cambian; el resto, como en el paso 1.

Los ids, tiempos y URLs de estas respuestas son de ejemplo: los tuyos llegan en cada respuesta.

Este modelo en la API

Crea una predicción con un POST y consúltala hasta que termine. Estos son los parámetros del modelo:

Endpoint

POST https://api.picassoia.com/v1/models/picassoia/picassoia-image/predictions

picassoia/picassoia-image

CampoTipoPor defectoNotas
promptcadena, 1–4000 caracteresobligatorioLo que debe mostrar la imagen.
aspect_ratio1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:31:1
num_outputsentero, 1–21Cuántas imágenes generar.
output_formatwebp, jpg, pngjpg
output_qualityentero, 0–10080Solo para JPG y WebP.
seedenteroaleatorioFíjalo para reproducir un resultado.

Salida: una lista de 1 o 2 URL de imágenes.

Abrir la referencia completa de la API

Compara con otros proveedores

Mira cómo quedan nuestros precios frente a lo que cobran otros proveedores por el modelo del mismo nombre.

ModeloPicasso IAOtros proveedores
PicassoIA Image · Texto a imagenIlimitado0 $ por petición$0.02/MP

Comparativa basada en los precios públicos de otros proveedores a 1 de octubre de 2026. En Picasso IA, las predicciones de la API son gratis con el plan Infinite, con hasta 5 en curso a la vez.