Images
Obtenir le statut de l'image
Obtenir le statut et le résultat d'une tâche de génération d'image asynchrone
Paramètres de chemin
L'ID de tâche retourné par la requête de génération d'image initiale.
Si la réponse de création inclut poll_url, privilégiez l'appel de cette URL exacte pour le polling. Certaines tâches d'image peuvent afficher une poll_url sous /v1/tasks/{id} au lieu du chemin de statut spécifique à l'image.
Vous pouvez aussi interroger les IDs publics de tâche image comme ldtask_... via /v1/images/{id}. Cet alias de compatibilité utilise les mêmes contrôles d’autorisation et de propriété, les mêmes en-têtes de facturation, snapshots terminaux et forme de réponse que /v1/images/generations/{id}.
Une tâche publique expirée ou indisponible peut renvoyer 404 async_task_not_found. Si son appartenance à la clé API actuelle ne peut pas être établie, la réponse est 403 task_not_owned.
Réponse
Les champs de résultat, d’erreur, d’horodatage et de modèle sont renvoyés lorsqu’ils sont disponibles pour la tâche.
Identifiant de la tâche.
URL de polling à privilégier lorsque la réponse de création la fournit.
Horodatage Unix de la création.
L'identifiant de la tâche.
Statut de la tâche : pending, processing, completed, ou failed.
Tableau d'images générées (rempli lorsque le status est completed).
Chaque objet contient :
url(string) : URL de l'image généréerevised_prompt(string): Révision optionnelle du prompt lorsque le modèle sélectionné la renvoie
Message d'erreur (présent uniquement lorsque le status est failed).
Requête
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
-H "Authorization: Bearer sk-your-api-key"Réponse
{
"created": 1706000000,
"id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"status": "pending",
"data": []
}Bonnes pratiques de polling
Interrogez toutes les 3 à 5 secondes pendant pending ou processing, puis arrêtez à completed ou failed.
import requests
import time
def poll_image_task(task_id, api_key, max_wait=300, interval=3):
"""Poll for image generation result with timeout."""
url = f"https://api.tokenlab.sh/v1/tasks/{task_id}"
headers = {"Authorization": f"Bearer {api_key}"}
start_time = time.time()
while time.time() - start_time < max_wait:
response = requests.get(url, headers=headers, timeout=30)
response.raise_for_status()
data = response.json()
if data["status"] == "completed":
return data["data"][0]["url"]
elif data["status"] == "failed":
raise Exception(data.get("error", "Generation failed"))
time.sleep(interval)
raise TimeoutError(f"Task {task_id} did not complete within {max_wait}s")
# Usage
image_url = poll_image_task("ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "sk-your-api-key")
print(f"Generated image: {image_url}")Autorisation
BearerAuth Authentification par clé API. Créez ou gérez vos clés API dans Dashboard > API > API Keys.
Emplacement: header
Paramètres de chemin
L'ID de tâche asynchrone renvoyé par id / task_id, ou intégré dans poll_url
Réponse
application/json
application/json
application/json
application/json