Passer au contenu principal

Vue d’ensemble

Utilisez cet endpoint pour un polling async unifié entre différents types de tâches tels que la génération de vidéo, d’image, de musique et de 3D. Si une réponse de création inclut poll_url, appelez ce chemin exact. Pour les workflows async plus récents, poll_url peut pointer vers /v1/tasks/{id}.

Paramètres de chemin

id
string
requis
L’ID de tâche renvoyé par la requête de création.

Réponse

id
string
Identifiant de la tâche.
task_id
string
Alias de l’identifiant de tâche asynchrone.
poll_url
string
URL de polling à privilégier lorsque la réponse de création la fournit.
status
string
Statut de la tâche, par exemple pending, processing, completed ou failed. Les tâches annulées sont représentées comme failed avec cancelled: true.
cancelled
boolean
true lorsqu’une tâche asynchrone en file d’attente a été annulée avant l’exécution.
cancellation_status
string
Marqueur d’annulation. Présent avec la valeur cancelled lorsque l’annulation réussit.
data
array
Pour les tâches d’image terminées, les résultats générés sont renvoyés ici. Les tâches d’image renvoient des URL dans data[].url.
progress
number
Valeur de progression facultative. Renvoyée uniquement lorsqu’une progression réelle est disponible ; utilisez status pour déterminer la fin de la tâche.
video_url
string
URL de l’asset de résultat lorsque la tâche est terminée et produit une vidéo.
error
string
Message d’erreur lorsque la tâche échoue.

Comportement d’erreur

Si la tâche n’existe plus, a expiré ou n’est plus disponible dans l’enregistrement public de tâche, TokenLab renvoie :
{
  "error": {
    "message": "Task not found or no longer available.",
    "type": "invalid_request_error",
    "code": "async_task_not_found"
  }
}

Exemples

curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"
Python
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())
JavaScript
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());