الفيديو والمواد

الحصول على حالة الفيديو

الحصول على حالة مهمة الفيديو ونتيجتها

GET
/v1/tasks/{id}

معاملات المسار (Path Parameters)

idstringpathمطلوب

معرف المهمة (task ID) الذي تم إرجاعه بواسطة طلب إنشاء الفيديو. id و task_id يشيران إلى نفس المهمة.

إذا كانت استجابة الإنشاء تتضمن poll_url، فقم باستدعاء ذلك الرابط مباشرة.

قد تُرجع المهمة العامة منتهية الصلاحية أو غير المتاحة الخطأ 404 async_task_not_found. إذا تعذر إثبات ملكية المهمة لمفتاح API الحالي، فستكون الاستجابة 403 task_not_owned.

الاستجابة (Response)

يتم إرجاع الحقول التي تصف النتائج، والأخطاء، والطوابع الزمنية، والنموذج عند توفرها للمهمة.

idstring

معرف المهمة.

task_idstring

نفس معرف المهمة الخاص بـ id.

poll_urlstring

رابط للتحقق من الحالة واسترجاع النتيجة.

billing_transaction_idstring

معرف معاملة الفوترة بعد التسوية. وهو منفصل عن معرف المهمة.

statusstring

حالة المهمة: pending (قيد الانتظار)، processing (قيد المعالجة)، completed (مكتملة)، failed (فاشلة).

progressnumber

قيمة اختيارية للتقدم. يتم إرجاعها فقط عند توفر قيمة تقدم حقيقية؛ استخدم status لتحديد حالة الاكتمال.

video_urlstring

رابط الفيديو الذي تم إنشاؤه (عند اكتماله). إذا كان الرابط يشير إلى TokenLab API، فقم بتنزيله باستخدام نفس ترويسة Authorization: Bearer المستخدمة لاستطلاع حالة المهمة. المؤسسة التي تمتلك المهمة هي فقط من يمكنها الوصول إلى النتيجة.

videoobject

نتيجة فيديو فردية مع url و duration و width و height عند توفرها.

videosarray

نتائج فيديو متعددة عندما تُرجع المهمة أكثر من مخرج واحد.

errorstring | object

رسالة الخطأ (في حال فشل المهمة).

createdinteger

الطابع الزمني للإنشاء.

updatedinteger

الطابع الزمني لآخر تحديث.

modelstring

النموذج المستخدم للمهمة.

الطلب

curl "https://api.tokenlab.sh/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \
  -H "Authorization: Bearer sk-your-api-key"

الاستجابة

{
  "id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "task_id": "ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "poll_url": "/v1/tasks/ldtask_aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "status": "pending",
  "model": "veo3.1",
  "created": 1706000000,
  "updated": 1706000000
}

الفاصل الزمني للتحقق (Check Interval)

  • تحقق كل 5–10 ثوانٍ.
  • قم بزيادة الفاصل الزمني للمهام التي تستغرق وقتًا طويلاً.
  • حدد أقصى وقت انتظار لتطبيقك.
  • توقف عندما تكون الحالة failed واعرض الخطأ المرجع في error.
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")

التفويض

BearerAuth
AuthorizationBearer <token>

مصادقة مفتاح API. قم بإنشاء أو إدارة مفاتيح API في Dashboard > API > API Keys.

الموضع: header

معاملات المسار

id*string

معرف المهمة غير المتزامنة الذي يتم إرجاعه بواسطة id / task_id، أو المضمن في poll_url

الاستجابة

application/json

application/json

application/json

application/json