Inicio rápido
Desde la clave API hasta tareas asíncronas, webhooks y descargas.
SpicyAPI ofrece tareas asíncronas para imágenes y video, y generación de texto mediante /v1/chat/completions con respuesta completa o streaming. Sigue estos tres pasos para obtener tu primer resultado.
GET /api/v1/models?includeSchema=1&includeExamples=1
# choose an item where enabled && available
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: render-001" \
-d '{
"model": "MODEL_ID_FROM_CATALOG",
"input": { "prompt": "a folded paper lantern, hard side light" }
}'Enviar y esperar con el SDK
client.run(payload, options) reúne el envío de la tarea y la espera del resultado en una sola llamada de función. Internamente sigue realizando varias solicitudes HTTP. El intervalo de sondeo predeterminado aumenta desde unos 2 segundos hasta un máximo de 10. En producción, prioriza los webhooks y usa directamente las output.assets[].url que estén listas.
1. Crea una clave API
Crea la clave en la consola y guárdala en el servidor como SPICY_API_KEY. No la incluyas en navegadores, aplicaciones móviles ni repositorios públicos.
2. Crea una tarea
Envía model e input a POST /api/v1/jobs/createTask. El data.taskId devuelto se usa después para consultar el estado, reintentar y descargar. Una tarea aceptada no se puede cancelar.
3. Recibe el resultado
En producción, usa webhooks como canal principal y GET /api/v1/jobs/recordInfo como sondeo de recuperación. La generación solo tuvo éxito si data.state es succeeded.
Descarga el resultado directamente desde output.assets[].url, sin enviar la clave API. expiresAt suele estar a 20 minutos y nunca supera los 14 días de conservación. Consulta de nuevo para renovar el enlace; download-url es opcional.
Consulta el contrato OpenAPI 3.1 para ver la definición completa de los campos.

