فيديوهاتيالتوثيق

بدء رفع مجزّأ أو استئنافه

بدء رفع مجزّأ أو استئنافه

POST/v1/videos/{id}/upload/start

تدعم هذه العملية مصادقة ملف ارتباط جلسة لوحة التحكم. استدعها من شيفرة خادم موثوقة فقط، ولا تنشئ المتصفحات ملف الجلسة أو تكشفه.

الخطوة الثانية: يعلن الحجم ونوع المحتوى ويعيد uploadUrlTemplate. استبدل {partNumber} برقم يبدأ من 1 وأرسل كل جزء بحجم partSize عبر PUT؛ ويجوز أن يكون الجزء الأخير أقصر. يعيد idempotencyKey نفسه الجلسة الحالية. يطبّق حدود الرصيد والتخزين ودقائق الترميز، ويحتاج المفتاح إلى write.

رموز الخطأ: unauthorized (401), insufficient_scope (403), account_not_approved (403), invalid_project_id (400), not_found (404), video_not_found (404), invalid_size (400), invalid_checksum_sha256 (400), file_too_large (400), upload_limit_exceeded (429), insufficient_balance (402 — account effective balance under the −$2 floor; top up to continue), storage_quota_exceeded (402 — Trial projects at/over the 25 GB storage cap), encoding_quota_exceeded (402 — Trial projects past the 60 bundled encoding minutes).

المصادقة

  • apiKey — مفتاح المشروع في ترويسة Authorization: Bearer بصيغة vh_live_... للوضع الفعلي أو vh_test_... للوضع التجريبي، ويحمل صلاحية read و/أو write.
  • sessionCookie — ملف ارتباط جلسة لوحة التحكم الذي يضبطه POST /v1/auth/login. تتطلب مسارات الفيديو والتشغيل أيضًا معامل projectId عند استخدام الجلسة.

المعاملات

الاسمالموضعالنوعإلزاميالوصف
idpathstring (Ulid)نعم

جسم الطلب

إلزامي

نوع المحتوى: application/json

المخطّط: UploadStartRequest

{
  "sizeBytes": 10485760,
  "contentType": "video/mp4",
  "idempotencyKey": "lecture-01-v1"
}

الاستجابات

الرمزالمعنى
201جلسة الرفع جاهزة؛ أرسل الأجزاء عبر PUT إلى uploadUrlTemplate.
400فشل التحقق من جسم الطلب أو معاملاته. يذكر وصف العملية قيم error.code الدقيقة.
401لم تُقدَّم بيانات اعتماد صالحة.
403بيانات الاعتماد صالحة لكنها لا تسمح بهذا الإجراء. يذكر وصف العملية قيم error.code الدقيقة.
404المورد غير موجود أو غير مرئي لهذا المستدعي.
429تم تجاوز حد المعدّل.

مثال على الطلب

{
  "sizeBytes": 10485760,
  "contentType": "video/mp4",
  "idempotencyKey": "lecture-01-v1"
}

جرّبها

POST
/v1/videos/{id}/upload/start
وضع الاختبار فقط

منصة API التفاعلية

أرسل طلبًا حيًا إلى api.videohati.com بمفتاح وضع الاختبار.

تحجب هذه المنصة مفاتيح vh_live_. استخدم مفتاحًا يبدأ بـ vh_test_ فقط؛ لن يغادر أي طلب بمفتاح حي متصفحك.

يُحفظ المفتاح في متصفحك على docs.videohati.com فقط.

https://api.staging.videohati.com/v1/videos/{id}/upload/start