> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apiany.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Tareas

> Consulta trabajos de larga duración de imagen, vídeo y, próximamente, audio.

Usa `/v1/tasks/{task_id}` para consultar el estado de una tarea asíncrona.

```bash theme={null}
curl https://apiany.ai/v1/tasks/task_123 \
  -H "Authorization: Bearer $APIANY_API_KEY"
```

## Valores de estado

* `pending`
* `processing`
* `completed`
* `failed`
* `expired`

## Tarea completada

La forma de `result` depende del tipo de tarea.

Las tareas de **imagen** devuelven el formato de imagen de OpenAI: la URL de la imagen está en `result.data[0].url`:

```json theme={null}
{
  "task_id": "task_123",
  "status": "completed",
  "model": "gpt-image-2",
  "type": "image",
  "result": {
    "created": 1781597831,
    "data": [
      { "url": "https://s.apiany.ai/.../result.png" }
    ]
  },
  "error": null
}
```

Las tareas de **vídeo** y **audio** devuelven la URL principal en `result.video_url` / `result.audio_url`, y cada salida también se lista en `result.urls[]`:

```json theme={null}
{
  "task_id": "task_456",
  "status": "completed",
  "model": "seedance-2.0",
  "type": "video",
  "result": {
    "status": "completed",
    "video_url": "https://s.apiany.ai/.../result.mp4",
    "urls": ["https://s.apiany.ai/.../result.mp4"]
  },
  "error": null
}
```

## Tarea fallida

```json theme={null}
{
  "task_id": "task_123",
  "status": "failed",
  "error": {
    "type": "service_error",
    "message": "La tarea no se pudo completar."
  }
}
```
