Trabajos asíncronos
Obtener estado de la tarea
Recupera el estado y el resultado de cualquier tarea async usando el poll_url devuelto por los endpoints de creación
Descripción general
Usa este endpoint para un sondeo async unificado entre tipos de tareas como generación de video, imagen, música y 3D.
Si una respuesta de creación incluye poll_url, llama a esa ruta exacta. Para flujos de trabajo async más recientes, poll_url puede apuntar a /v1/tasks/{id}.
Parámetros de ruta
El ID de la tarea devuelto por la solicitud de creación.
Respuesta
Los campos de resultado, error, marcas de tiempo y modelo se devuelven cuando están disponibles para la tarea.
Identificador de la tarea.
Alias del identificador de tarea asíncrona.
URL de sondeo preferida cuando la respuesta de creación la proporciona.
Estado de la tarea, como pending, processing, completed o failed. Las tareas canceladas se representan como failed con cancelled: true.
true cuando una tarea asíncrona en cola se canceló antes de la ejecución.
Marcador de cancelación. Presente como cancelled cuando la cancelación se realiza correctamente.
Para tareas de imagen completadas, los resultados generados se devuelven aquí. Las tareas de imagen devuelven URL en data[].url.
Valor de progreso opcional. Solo se devuelve cuando hay un progreso real disponible; usa status para determinar la finalización.
URL del recurso resultante cuando la tarea se completa y produce un video.
Objeto de video único con url, duration, width y height cuando estén disponibles.
Múltiples cargas útiles de video cuando la tarea de generación devuelve más de una salida.
Marca de tiempo de creación.
Marca de tiempo de la última actualización.
Modelo usado para la tarea.
Mensaje de error cuando la tarea falla.
Comportamiento de error
Una tarea pública caducada o no disponible puede devolver 404 async_task_not_found. Si no se puede confirmar que pertenece a la clave API actual, devuelve 403 task_not_owned.
{
"error": {
"message": "Task not found or no longer available.",
"type": "invalid_request_error",
"code": "async_task_not_found"
}
}Ejemplos
Solicitud
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
-H "Authorization: Bearer sk-your-api-key"import requests
poll_url = "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
response = requests.get(
f"https://api.tokenlab.sh{poll_url}",
headers={"Authorization": "Bearer sk-your-api-key"},
)
print(response.json())const pollUrl = '/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
const response = await fetch(`https://api.tokenlab.sh${pollUrl}`, {
headers: { Authorization: 'Bearer sk-your-api-key' },
});
console.log(await response.json());{ "id": "string", "status": "pending", "progress": 0, "created": 0, "updated": 0, "model": "string", "video": { "url": "string", "duration": 0, "width": 0, "height": 0 }, "error": "string", "error_details": { "projection_version": 0, "status": 400, "message": "string", "type": "string", "code": "string", "param": "string", "retryable": true, "upstream": { "source": "string", "code": "string", "message": "string", "param": "string" } }, "task_id": "string", "poll_url": "string", "cancelled": true, "cancellation_status": "cancelled", "billing_transaction_id": "string", "video_url": "string", "videos": [ {} ], "data": [ {} ], "audio_url": "string", "title": "string", "lyrics": "string", "model_url": "string", "glb_url": "string", "fbx_url": "string"}Autorización
BearerAuth Autenticación con API Key. Cree o gestione API keys en Dashboard > API > API Keys.
Ubicación: header
Parámetros de ruta
El ID de tarea asíncrona devuelto por id / task_id, o incrustado en poll_url
Respuesta
application/json
application/json
application/json
application/json