Video ve materyaller
Video Durumunu Al
Bir video oluşturma görevinin durumunu ve sonucunu getirir
Yol Parametreleri
Oluşturma yanıtından dönen asenkron görev kimliği. id ve task_id aynı görevi ifade eder.
Bir create yanıtı poll_url döndürürse, tam olarak o URL’yi çağırın. Bu URL /v1/tasks/{id} adresine işaret ediyorsa, onu kanonik sabit durum uç noktası olarak kabul edin.
Süresi dolmuş veya kullanılamayan bir görev 404 async_task_not_found döndürebilir. Geçerli API anahtarının görev sahipliği doğrulanamazsa yanıt 403 task_not_owned olur.
Yanıt
Sonuç, hata, zaman damgası ve model alanları görev için mevcut olduğunda döndürülür.
Kanonik asenkron görev kimliği.
Asenkron görev kimliği takma adı.
Oluşturma yanıtının döndürdüğü öncelikli sorgulama URL'si.
Mutabakat tamamlandığında dönen TokenLab faturalama işlem kimliği. Dashboard / mutabakat için kullanılan işlem tanımlayıcısıdır ve asenkron id / task_id alanlarından ayrıdır.
Görev durumu: pending, processing, completed, failed.
İsteğe bağlı ilerleme değeri. Yalnızca gerçek bir ilerleme değeri varsa döner; tamamlanmayı belirlemek için status kullanın.
Oluşturulan videonun URL'i (tamamlandığında).
Mevcutsa url, duration, width ve height içeren tek video nesnesi.
Üretim görevi birden fazla çıktı döndürdüğünde video dizisi görünebilir.
Hata mesajı (başarısız olursa).
Oluşturulma zaman damgası.
Son güncelleme zaman damgası.
Görevde kullanılan model.
İstek
curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
-H "Authorization: Bearer sk-your-api-key"Yanıt
{
"id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"status": "pending",
"model": "veo3.1",
"created": 1706000000,
"updated": 1706000000
}Polling En İyi Uygulamaları
- Her 5-10 saniyede bir sorgulama yapın
- Uzun süreli görevler için üstel geri çekilme (exponential backoff) uygulayın
- Maksimum bir zaman aşımı süresi belirleyin (örneğin 10 dakika)
faileddurumunu uygun şekilde ele alın
import requests
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.tokenlab.sh/v1/tasks/{task_id}",
headers={"Authorization": "Bearer sk-your-api-key"}
)
response.raise_for_status()
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")Yetkilendirme
BearerAuth API Anahtarı kimlik doğrulaması. API anahtarlarını Dashboard > API > API Keys bölümünden oluşturun veya yönetin.
Konum: header
Yol parametreleri
id / task_id tarafından döndürülen veya poll_url içine gömülü olan asenkron görev kimliği
Yanıt
application/json
application/json
application/json
application/json