Paramètres de chemin
L’ID de tâche retourné par la requête de création de vidéo.
Réponse
Statut de la tâche : pending, processing, completed, failed.
Pourcentage de progression (0-100).
URL de la vidéo générée (une fois terminée).
Message d’erreur (en cas d’échec).
Horodatage de fin (une fois terminée).
curl "https://api.lemondata.cc/v1/videos/generations/video_abc123" \
-H "Authorization: Bearer sk-your-api-key"
{
"task_id": "video_abc123",
"status": "pending",
"progress": 0,
"model": "kling-v2.6-pro",
"created_at": 1706000000
}
Bonnes pratiques de polling
- Effectuez un polling toutes les 5 à 10 secondes
- Implémentez un backoff exponentiel pour les tâches longues
- Définissez un délai d’attente maximum (ex : 10 minutes)
- Gérez le statut
failed de manière appropriée
import time
def wait_for_video(task_id, max_wait=600, interval=5):
"""Wait for video with timeout."""
start = time.time()
while time.time() - start < max_wait:
response = requests.get(
f"https://api.lemondata.cc/v1/videos/generations/{task_id}",
headers={"Authorization": "Bearer sk-your-api-key"}
)
data = response.json()
if data["status"] == "completed":
return data["video_url"]
elif data["status"] == "failed":
raise Exception(data.get("error", "Video generation failed"))
time.sleep(interval)
raise TimeoutError("Video generation timed out")