{
  "aboutHtml": "<p>يولّد Seedance 1.0 Lite Text-to-Video فيديو من مشهد مكتوب. معرّف الاختيار الدقيق doubao-seedance-1-0-lite-t2v-250428 هو نموذج تحويل النص إلى فيديو ضمن إصدار Lite. استخدمه عندما يمكن وصف الموضوع والمكان والحركة مباشرةً: منتج على سطح طاولة، أو لقطة تأسيسية لموقع، أو فعل قصير لشخصية. المخرج مقطع فيديو؛ ولا يولّد إصدار 1.0 صوتًا متزامنًا.</p><p>اكتب المشهد بالترتيب الذي ينبغي أن يراه المشاهد. حدّد الموضوع ومظهره والموقع والفعل وحجم اللقطة وحركة الكاميرا، ثم صف التكوين النهائي. قد يصف موجز منتج مفيد زجاجة على قاعدة حجرية فاتحة، وضوء الشمس يتحرك عبر الملصق، وتقدمًا بطيئًا نحو الغطاء. هذه تعليمات لمشهد جديد وليست ادعاءً بأن النموذج يعيد إنتاج صورة منتج مقدّمة. اجعل الفعل الظاهر مناسبًا لطول المقطع المختار.</p><p>معرّف تحويل النص إلى فيديو هذا متميز عن معرّف Lite المنفصل لتحويل الصورة إلى فيديو. يُقدَّم محتواه كعنصر text في مصفوفة content. يمكن لجملة أن تصف شخصًا أو شيئًا أو أسلوبًا، لكنها لا ترفق صورة مرجعية ولا تثبت هوية بصرية دقيقة من ملف لم يُرَ. لمشهد يجب أن يأتي تكوينه الافتتاحي من صورة موجودة، اختر إصدارًا يدعم الصور بدل افتراض أن هوية Lite t2v تغيّر الأنماط عند إضافة حقل وسائط.</p><p>نطاق المدة الموثّق لـ1.0 من ثانيتين إلى اثنتي عشرة ثانية، مع مدة افتراضية قدرها خمس ثوانٍ ومعدل إطارات ثابت يبلغ 24 fps. يتيح Lite مستويات دقة 480p و720p و1080p، مع 720p افتراضيًا بحسب التوثيق. تشمل نسب الأبعاد الثابتة 16:9 و4:3 و1:1 و3:4 و9:16 و21:9. اختر الإطار وفق وجهته قبل التوليد: عموديًا لعرض رأسي، أو مربعًا للوحة منتج مدمجة، أو أفقيًا لمشهد عريض. تصف مستويات الدقة ونسب الأبعاد المخرجات المطلوبة؛ افحص المقطع الذي نُزّل لمعرفة أبعاده الفعلية بالبكسل وتأطيره.</p><p>يتيح الطلب عناصر تحكم في seed والعلامة المائية والكاميرا. قيمة seed عدد صحيح من -1 إلى 2^32-1، حيث تختار -1 العشوائية. يضيف طلب تثبيت الكاميرا تعليمة بكاميرا ثابتة، ويصرّح التوثيق بأن الأثر غير مضمون. اجعل توجيه الكاميرا متسقًا بين المشهد المكتوب وعنصر التحكم المنفصل. تتقدم تعليمات المعاملات المضمّنة في النص على المعاملات الاختيارية المنفصلة، لذا تجنّب إعطاء تعليمات متعارضة للمدة أو الدقة أو التأطير في الموضعين.</p><p>يُقاس الاستخدام برموز الفيديو: عرض الفيديو الناتج × ارتفاع الفيديو الناتج × معدل الإطارات × مدة الفيديو الناتج / 1024. تُبلغ المهمة المكتملة عن هذه الكمية في usage.completion_tokens. احتفظ بالاستخدام المبلّغ عنه مع المقطع النهائي وإعداداته المطلوبة.</p><p>التوليد غير متزامن. يُرجع الإرسال معرّف مهمة، ويوفر الاستعلام عن المهمة حالة معالجتها، وبعد النجاح رابط الفيديو في content.video_url. احتفظ بمعرّف المهمة ما دامت في قائمة الانتظار أو قيد التنفيذ، واحفظ المقطع المكتمل للمراجعة التالية. مدة الاحتفاظ الموثّقة بالملفات المولّدة سبعة أيام. وللطلب أيضًا مهلة انتهاء تُقاس من إنشاء المهمة، تصبح بعدها المهمة غير المكتملة منتهية الصلاحية؛ والقيمة الافتراضية الموثّقة 172800 ثانية، مع قيم من 3600 إلى 259200 ثانية.</p><p>راجع المقطع كاملًا بالرجوع إلى الموجز: هل يظهر الموضوع المقصود، ويحدث الفعل بالترتيب الصحيح، وتتبع الكاميرا الاتجاه المطلوب، ويصلح الإطار النهائي للاستخدام؟ غيّر تعليمة محددة للنسخة التالية مع الحفاظ على بنية المشهد الناجحة. ولسلسلة لقطات، احتفظ بكل موجّه وإعدادات مطلوبة وفيديو مكتمل، حتى يمكن تخطيط المشهد التالي انطلاقًا من النتيجة الفعلية.</p>",
  "aboutText": "يولّد Seedance 1.0 Lite Text-to-Video فيديو من مشهد مكتوب. معرّف الاختيار الدقيق doubao-seedance-1-0-lite-t2v-250428 هو نموذج تحويل النص إلى فيديو ضمن إصدار Lite. استخدمه عندما يمكن وصف الموضوع والمكان والحركة مباشرةً: منتج على سطح طاولة، أو لقطة تأسيسية لموقع، أو فعل قصير لشخصية. المخرج مقطع فيديو؛ ولا يولّد إصدار 1.0 صوتًا متزامنًا.\n\nاكتب المشهد بالترتيب الذي ينبغي أن يراه المشاهد. حدّد الموضوع ومظهره والموقع والفعل وحجم اللقطة وحركة الكاميرا، ثم صف التكوين النهائي. قد يصف موجز منتج مفيد زجاجة على قاعدة حجرية فاتحة، وضوء الشمس يتحرك عبر الملصق، وتقدمًا بطيئًا نحو الغطاء. هذه تعليمات لمشهد جديد وليست ادعاءً بأن النموذج يعيد إنتاج صورة منتج مقدّمة. اجعل الفعل الظاهر مناسبًا لطول المقطع المختار.\n\nمعرّف تحويل النص إلى فيديو هذا متميز عن معرّف Lite المنفصل لتحويل الصورة إلى فيديو. يُقدَّم محتواه كعنصر text في مصفوفة content. يمكن لجملة أن تصف شخصًا أو شيئًا أو أسلوبًا، لكنها لا ترفق صورة مرجعية ولا تثبت هوية بصرية دقيقة من ملف لم يُرَ. لمشهد يجب أن يأتي تكوينه الافتتاحي من صورة موجودة، اختر إصدارًا يدعم الصور بدل افتراض أن هوية Lite t2v تغيّر الأنماط عند إضافة حقل وسائط.\n\nنطاق المدة الموثّق لـ1.0 من ثانيتين إلى اثنتي عشرة ثانية، مع مدة افتراضية قدرها خمس ثوانٍ ومعدل إطارات ثابت يبلغ 24 fps. يتيح Lite مستويات دقة 480p و720p و1080p، مع 720p افتراضيًا بحسب التوثيق. تشمل نسب الأبعاد الثابتة 16:9 و4:3 و1:1 و3:4 و9:16 و21:9. اختر الإطار وفق وجهته قبل التوليد: عموديًا لعرض رأسي، أو مربعًا للوحة منتج مدمجة، أو أفقيًا لمشهد عريض. تصف مستويات الدقة ونسب الأبعاد المخرجات المطلوبة؛ افحص المقطع الذي نُزّل لمعرفة أبعاده الفعلية بالبكسل وتأطيره.\n\nيتيح الطلب عناصر تحكم في seed والعلامة المائية والكاميرا. قيمة seed عدد صحيح من -1 إلى 2^32-1، حيث تختار -1 العشوائية. يضيف طلب تثبيت الكاميرا تعليمة بكاميرا ثابتة، ويصرّح التوثيق بأن الأثر غير مضمون. اجعل توجيه الكاميرا متسقًا بين المشهد المكتوب وعنصر التحكم المنفصل. تتقدم تعليمات المعاملات المضمّنة في النص على المعاملات الاختيارية المنفصلة، لذا تجنّب إعطاء تعليمات متعارضة للمدة أو الدقة أو التأطير في الموضعين.\n\nيُقاس الاستخدام برموز الفيديو: عرض الفيديو الناتج × ارتفاع الفيديو الناتج × معدل الإطارات × مدة الفيديو الناتج / 1024. تُبلغ المهمة المكتملة عن هذه الكمية في usage.completion_tokens. احتفظ بالاستخدام المبلّغ عنه مع المقطع النهائي وإعداداته المطلوبة.\n\nالتوليد غير متزامن. يُرجع الإرسال معرّف مهمة، ويوفر الاستعلام عن المهمة حالة معالجتها، وبعد النجاح رابط الفيديو في content.video_url. احتفظ بمعرّف المهمة ما دامت في قائمة الانتظار أو قيد التنفيذ، واحفظ المقطع المكتمل للمراجعة التالية. مدة الاحتفاظ الموثّقة بالملفات المولّدة سبعة أيام. وللطلب أيضًا مهلة انتهاء تُقاس من إنشاء المهمة، تصبح بعدها المهمة غير المكتملة منتهية الصلاحية؛ والقيمة الافتراضية الموثّقة 172800 ثانية، مع قيم من 3600 إلى 259200 ثانية.\n\nراجع المقطع كاملًا بالرجوع إلى الموجز: هل يظهر الموضوع المقصود، ويحدث الفعل بالترتيب الصحيح، وتتبع الكاميرا الاتجاه المطلوب، ويصلح الإطار النهائي للاستخدام؟ غيّر تعليمة محددة للنسخة التالية مع الحفاظ على بنية المشهد الناجحة. ولسلسلة لقطات، احتفظ بكل موجّه وإعدادات مطلوبة وفيديو مكتمل، حتى يمكن تخطيط المشهد التالي انطلاقًا من النتيجة الفعلية.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "0153ce1e343cd052dfe44a39705dc33e685ece412ead5eeb52298882e0588859",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "ar",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">ByteDance: Seedance 1.0 Lite Text-to-Video</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"إغلاق\">×</button></div><div class=\"idline\"><span>ByteDance /</span><code>doubao-seedance-1-0-lite-t2v-250428</code><button type=\"button\" id=\"copy-id\">نسخ ID</button></div><nav class=\"card-jump-nav\" aria-label=\"أقسام بطاقة النموذج\"><button type=\"button\" data-card-jump=\"overview\">البداية</button><button type=\"button\" data-card-jump=\"methods\">المدخلات والطرائق</button><button type=\"button\" data-card-jump=\"pricing\">الباقات</button><button type=\"button\" data-card-jump=\"examples\">أمثلة</button><button type=\"button\" data-card-jump=\"results\">النتائج</button><button type=\"button\" data-card-jump=\"aliases\">الأسماء البديلة</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"طرائق API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|videos|/v1/videos|doubao-seedance-1-0-lite-t2v-250428\">فيديو</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">البداية</h3><p class=\"mdesc-full\">يحوّل Seedance 1.0 Lite Text-to-Video مشهدًا مكتوبًا إلى فيديو صامت. يستخدم معرّف اختيار Lite هذا النص بدل صورة مرجعية، مع مدة 2–12 ثانية ومعدل 24 fps وتأطير أفقي أو عمودي أو مربع أو سينمائي.</p><dl class=\"card-io\" data-card-io><div><dt>المدخلات المقبولة</dt><dd>النص</dd></div><div><dt>النتائج</dt><dd>فيديو</dd></div></dl><details class=\"card-about\"><summary>عن النموذج</summary><p class=\"note-s\" data-model-method-boundary>يغطي هذا الوصف قدرات النموذج. وترد أدناه المدخلات والمخرجات والخيارات المتاحة في Ailoot للطريقة المحددة.</p><div class=\"mabout\" id=\"m-about\"><p>يولّد Seedance 1.0 Lite Text-to-Video فيديو من مشهد مكتوب. معرّف الاختيار الدقيق doubao-seedance-1-0-lite-t2v-250428 هو نموذج تحويل النص إلى فيديو ضمن إصدار Lite. استخدمه عندما يمكن وصف الموضوع والمكان والحركة مباشرةً: منتج على سطح طاولة، أو لقطة تأسيسية لموقع، أو فعل قصير لشخصية. المخرج مقطع فيديو؛ ولا يولّد إصدار 1.0 صوتًا متزامنًا.</p><p>اكتب المشهد بالترتيب الذي ينبغي أن يراه المشاهد. حدّد الموضوع ومظهره والموقع والفعل وحجم اللقطة وحركة الكاميرا، ثم صف التكوين النهائي. قد يصف موجز منتج مفيد زجاجة على قاعدة حجرية فاتحة، وضوء الشمس يتحرك عبر الملصق، وتقدمًا بطيئًا نحو الغطاء. هذه تعليمات لمشهد جديد وليست ادعاءً بأن النموذج يعيد إنتاج صورة منتج مقدّمة. اجعل الفعل الظاهر مناسبًا لطول المقطع المختار.</p><p>معرّف تحويل النص إلى فيديو هذا متميز عن معرّف Lite المنفصل لتحويل الصورة إلى فيديو. يُقدَّم محتواه كعنصر text في مصفوفة content. يمكن لجملة أن تصف شخصًا أو شيئًا أو أسلوبًا، لكنها لا ترفق صورة مرجعية ولا تثبت هوية بصرية دقيقة من ملف لم يُرَ. لمشهد يجب أن يأتي تكوينه الافتتاحي من صورة موجودة، اختر إصدارًا يدعم الصور بدل افتراض أن هوية Lite t2v تغيّر الأنماط عند إضافة حقل وسائط.</p><p>نطاق المدة الموثّق لـ1.0 من ثانيتين إلى اثنتي عشرة ثانية، مع مدة افتراضية قدرها خمس ثوانٍ ومعدل إطارات ثابت يبلغ 24 fps. يتيح Lite مستويات دقة 480p و720p و1080p، مع 720p افتراضيًا بحسب التوثيق. تشمل نسب الأبعاد الثابتة 16:9 و4:3 و1:1 و3:4 و9:16 و21:9. اختر الإطار وفق وجهته قبل التوليد: عموديًا لعرض رأسي، أو مربعًا للوحة منتج مدمجة، أو أفقيًا لمشهد عريض. تصف مستويات الدقة ونسب الأبعاد المخرجات المطلوبة؛ افحص المقطع الذي نُزّل لمعرفة أبعاده الفعلية بالبكسل وتأطيره.</p><p>يتيح الطلب عناصر تحكم في seed والعلامة المائية والكاميرا. قيمة seed عدد صحيح من -1 إلى 2^32-1، حيث تختار -1 العشوائية. يضيف طلب تثبيت الكاميرا تعليمة بكاميرا ثابتة، ويصرّح التوثيق بأن الأثر غير مضمون. اجعل توجيه الكاميرا متسقًا بين المشهد المكتوب وعنصر التحكم المنفصل. تتقدم تعليمات المعاملات المضمّنة في النص على المعاملات الاختيارية المنفصلة، لذا تجنّب إعطاء تعليمات متعارضة للمدة أو الدقة أو التأطير في الموضعين.</p><p>يُقاس الاستخدام برموز الفيديو: عرض الفيديو الناتج × ارتفاع الفيديو الناتج × معدل الإطارات × مدة الفيديو الناتج / 1024. تُبلغ المهمة المكتملة عن هذه الكمية في usage.completion_tokens. احتفظ بالاستخدام المبلّغ عنه مع المقطع النهائي وإعداداته المطلوبة.</p><p>التوليد غير متزامن. يُرجع الإرسال معرّف مهمة، ويوفر الاستعلام عن المهمة حالة معالجتها، وبعد النجاح رابط الفيديو في content.video_url. احتفظ بمعرّف المهمة ما دامت في قائمة الانتظار أو قيد التنفيذ، واحفظ المقطع المكتمل للمراجعة التالية. مدة الاحتفاظ الموثّقة بالملفات المولّدة سبعة أيام. وللطلب أيضًا مهلة انتهاء تُقاس من إنشاء المهمة، تصبح بعدها المهمة غير المكتملة منتهية الصلاحية؛ والقيمة الافتراضية الموثّقة 172800 ثانية، مع قيم من 3600 إلى 259200 ثانية.</p><p>راجع المقطع كاملًا بالرجوع إلى الموجز: هل يظهر الموضوع المقصود، ويحدث الفعل بالترتيب الصحيح، وتتبع الكاميرا الاتجاه المطلوب، ويصلح الإطار النهائي للاستخدام؟ غيّر تعليمة محددة للنسخة التالية مع الحفاظ على بنية المشهد الناجحة. ولسلسلة لقطات، احتفظ بكل موجّه وإعدادات مطلوبة وفيديو مكتمل، حتى يمكن تخطيط المشهد التالي انطلاقًا من النتيجة الفعلية.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">متاح في Ailoot · المدخلات والطرائق</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · فيديو</b> <code>POST /v1/videos</code></summary><dl class=\"method-capabilities\"><div><dt>الإدخال</dt><dd><code>text</code></dd></div><div><dt>الإخراج</dt><dd><code>video</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>الحقل</th><th>النوع</th><th>المتطلب</th><th>القيم والحدود</th><th>القيمة الافتراضية</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>string</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>doubao-seedance-1-0-lite-t2v-250428</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"unspecified\"><span class=\"card-cell-label\">القيمة الافتراضية</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">content</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>array</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>الشروط: كائنات نصية أو وسائط بصيغتها الأصلية؛ يجب ألا تكون المصفوفة الخارجية فارغة. لا يتحقق مُنشئ الطلبات العام هذا في Ailoot من أنواع العُقد المتداخلة.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"unspecified\"><span class=\"card-cell-label\">القيمة الافتراضية</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>integer</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>اختياري</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>الحد الأدنى: ⁦2⁩</div><div>الحد الأقصى: ⁦12⁩</div><div>الشروط: المخطط الأساسي للإصدار 1.x يحدد 2–12؛ ويصف نص مشترك لاحق الإصدار 1.5 بأنه 4–12 أو -1. يستخدم المثال القيمة 5 الموثّقة في الموضعين.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>⁦5⁩</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>string</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>اختياري</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>480p, 720p, 1080p</div><div>الشروط: تعداد مشترك؛ تُستبعد 1080p عند استخدام صور مرجعية ومع 1.5. يسرد الوصف المضمّن لـpro القيمتين 480p/1080p، بينما يتضمن التعداد في المستوى الأعلى 720p؛ ولا يوجد ضمان محسوم لدعم 720p في pro.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>720p</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">ratio</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>string</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>اختياري</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive</div><div>الشروط: تختلف القيم الافتراضية باختلاف المشهد والنموذج؛ ويوصي توثيق إدخال الصور باستخدام adaptive.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"unspecified\"><span class=\"card-cell-label\">القيمة الافتراضية</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">service_tier</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>string</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>اختياري</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>default, flex</div><div>الشروط: default=online، flex=offline؛ اختر قبل الإنشاء.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>default</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">seed</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>integer</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>الحد الأدنى: ⁦‎-1⁩</div><div>الحد الأقصى: ⁦4,294,967,295⁩</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>⁦‎-1⁩</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">camerafixed</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>boolean</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>الشروط: مطلوب من Ailoot؛ يوضح التوثيق أن التحكم بالكاميرا باستخدام صورة مرجعية غير مدعوم، ولا يُضمن تأثيره.</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>false</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">watermark</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>boolean</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>false</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">execution_expires_after</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span><code>integer</code></td><td data-cell-label=\"المتطلب\"><span class=\"card-cell-label\">المتطلب</span>مطلوب</td><td data-cell-label=\"القيم والحدود\"><span class=\"card-cell-label\">القيم والحدود</span><div>الحد الأدنى: ⁦3,600⁩</div><div>الحد الأقصى: ⁦259,200⁩</div><div>الوحدة: ثوانٍ</div></td><td data-cell-label=\"القيمة الافتراضية\" data-default=\"known\"><span class=\"card-cell-label\">القيمة الافتراضية</span>⁦172,800⁩</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>تركيبات مواد الإدخال</summary><p class=\"note-s\"><b></b></p></details><details class=\"note-s\" data-method-contract><summary>معلمات الطريقة ودورة حياتها</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>المعلمة</th><th>المواصفات</th></tr></thead><tbody><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>content_type</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>application/json</td></tr><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>required</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>camerafixed, content, execution_expires_after, model, seed, watermark</td></tr><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>optional</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>duration, resolution, ratio, service_tier</td></tr><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>material_types</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>text</td></tr><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>additional_properties</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>true</td></tr><tr><th data-cell-label=\"المعلمة\" scope=\"row\"><span class=\"card-cell-label\">المعلمة</span><code>validation_scope</code></th><td data-cell-label=\"المواصفات\"><span class=\"card-cell-label\">المواصفات</span>تتحقق Ailoot من أنواع الحقول المطلوبة ومن أن قيمة model ومصفوفة content غير فارغتين. تُحفظ حقول الطلب الأخرى للنموذج المختار.</td></tr></tbody></table></div><p>الأسماء البديلة للطريقة: <code>/v1/videos/generations</code></p><p>دورة الحياة: <code>submit_once_poll_original</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}/content</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}/content</code></p><p class=\"note-s\">أنشئ مرة واحدة واحتفظ بالقيم المُعادة للحقلين العامين id/polling_url.</p><p class=\"note-s\">استعلم دورياً عن المهمة الأصلية؛ ونزّل المحتوى الفعلي المملوك لك في content.video_url بعد succeeded.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">الباقات</h3><div class=\"card-result-process\" data-billing-basis><h5>كيفية احتساب الرسوم النهائية</h5><p class=\"note-s\">تقدّر التعرفات المعروضة التكلفة قبل التوليد. تُحسب الرسوم النهائية من التكلفة المسجّلة لعملية التوليد الأصلية. مدة المخرجات المقاسة والكميات المتوقعة ليست الكمية النهائية الخاضعة للفوترة.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>مراجع التسعير لا تضيف خيارات للطلب. المعلمات المدعومة مذكورة للطريقة المحددة.</p><dl data-price-conditions><dt>الوضع السريع</dt><dd>غير محدد <span class=\"note-s\">عند اختيار الوضع السريع</span></dd><dt>الوضع المرن</dt><dd>غير محدد <span class=\"note-s\">عند اختيار وضع flex</span></dd><dt>أقصى جهد للاستدلال</dt><dd>غير محدد <span class=\"note-s\">عندما يُطبَّق الضبط الافتراضي default مع أقصى جهد للاستدلال</span></dd></dl></div><div data-declared-tariff-pricing><h4>تعرفات تقديرية للمقارنة</h4><h4>الأسعار حسب الإعدادات</h4><p class=\"note-s\">طابق كل رسم مع الشروط المعروضة. طبّق تعرفة واحدة لكل مجموعة من الإعدادات البديلة.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>الإعدادات</th><th>جدول التعرفة</th><th>الكمية المتوقعة</th><th>وحدة الفوترة</th><th>الرسوم</th></tr></thead><tbody><tr><th data-cell-label=\"الإعدادات\" scope=\"row\"><span class=\"card-cell-label\">الإعدادات</span>التعرفات الأساسية للرموز</th><td data-cell-label=\"جدول التعرفة\"><span class=\"card-cell-label\">جدول التعرفة</span>التعرفة الأساسية</td><td data-cell-label=\"الكمية المتوقعة\"><span class=\"card-cell-label\">الكمية المتوقعة</span>—</td><td data-cell-label=\"وحدة الفوترة\"><span class=\"card-cell-label\">وحدة الفوترة</span>—</td><td data-cell-label=\"الرسوم\"><span class=\"card-cell-label\">الرسوم</span><div><span>الإدخال · رموز الإدخال · تقدير للمقارنة فقط</span> <b>—</b> <span class=\"price-unit\">/ 1K من الرموز</span></div><div><span>الإخراج · رموز الإخراج · تقدير للمقارنة فقط</span> <b>—</b> <span class=\"price-unit\">/ 1K من الرموز</span></div><div><span>الإدخال · قراءة ذاكرة التخزين المؤقت · تقدير للمقارنة فقط</span> <b>—</b> <span class=\"price-unit\">/ 1K من الرموز</span></div><div><span>الإدخال · الكتابة إلى ذاكرة التخزين المؤقت · تقدير للمقارنة فقط</span> <b>—</b> <span class=\"price-unit\">/ 1K من الرموز</span></div><div><span>الإدخال · الكتابة إلى ذاكرة التخزين المؤقت، 1 ساعة · تقدير للمقارنة فقط</span> <b>—</b> <span class=\"price-unit\">/ 1K من الرموز</span></div></td></tr><tr><th data-cell-label=\"الإعدادات\" scope=\"row\"><span class=\"card-cell-label\">الإعدادات</span>Ultra</th><td data-cell-label=\"جدول التعرفة\"><span class=\"card-cell-label\">جدول التعرفة</span>—</td><td data-cell-label=\"الكمية المتوقعة\"><span class=\"card-cell-label\">الكمية المتوقعة</span>—</td><td data-cell-label=\"وحدة الفوترة\"><span class=\"card-cell-label\">وحدة الفوترة</span>لكل 1K من رموز الفيديو</td><td data-cell-label=\"الرسوم\"><span class=\"card-cell-label\">الرسوم</span><div><span>الإخراج · تقدير للمقارنة فقط</span> <b>$0.003</b> <span class=\"price-unit\">لكل 1K من رموز الفيديو</span></div></td></tr><tr><th data-cell-label=\"الإعدادات\" scope=\"row\"><span class=\"card-cell-label\">الإعدادات</span>تكلفة التوليد التقديرية</th><td data-cell-label=\"جدول التعرفة\"><span class=\"card-cell-label\">جدول التعرفة</span>—</td><td data-cell-label=\"الكمية المتوقعة\"><span class=\"card-cell-label\">الكمية المتوقعة</span>تقدير لتوليد واحد</td><td data-cell-label=\"وحدة الفوترة\"><span class=\"card-cell-label\">وحدة الفوترة</span>—</td><td data-cell-label=\"الرسوم\"><span class=\"card-cell-label\">الرسوم</span><div><span>الإخراج · تكلفة التوليد التقديرية · تقدير للمقارنة فقط</span> <b>$0.144</b> <span class=\"price-unit\">تقدير قبل الإنشاء</span></div><p class=\"note-s\">هذا التقدير ليس رسومًا إضافية ولا تعرفة ثابتة لعملية التوليد المكتملة.</p></td></tr></tbody></table></div></div><p class=\"note-s\">تحجز Ailoot مبلغًا تقديريًا قبل الطلب. وبعد ظهور النتيجة، تُسوّي الرسوم النهائية بناءً على الاستخدام المقاس. وتستخدم تسوية البث سجل الاستخدام النهائي. <a href=\"/docs/ar/billing/reserve/\">كيفية عمل حجز المبلغ وتسوية الرسوم →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">أمثلة للطلبات</h3><h4>Ailoot Ultra · فيديو</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"خيارات الشيفرة\"><button class=\"cg-tab\" id=\"model-code-2775-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2775-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · أنشئ فيديو</button><button class=\"cg-tab\" id=\"model-code-2775-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2775-panel-1\" aria-selected=\"false\" tabindex=\"-1\">curl · اقرأ المهمة الأصلية</button><button class=\"cg-tab\" id=\"model-code-2775-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2775-panel-2\" aria-selected=\"false\" tabindex=\"-1\">curl · نزّل الفيديو الذي تملكه</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"نسخ الشيفرة\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-2775-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2775-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncat &gt; request.json &lt;&lt;&#39;JSON_REQUEST&#39;\n{&quot;model&quot;:&quot;doubao-seedance-1-0-lite-t2v-250428&quot;,&quot;content&quot;:[{&quot;type&quot;:&quot;text&quot;,&quot;text&quot;:&quot;女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动&quot;}],&quot;resolution&quot;:&quot;480p&quot;,&quot;ratio&quot;:&quot;1:1&quot;,&quot;duration&quot;:5,&quot;service_tier&quot;:&quot;default&quot;,&quot;seed&quot;:-1,&quot;camerafixed&quot;:false,&quot;watermark&quot;:false,&quot;execution_expires_after&quot;:172800}\nJSON_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2775-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2775-tab-1\" hidden><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_POLL&#39;\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote,urljoin,urlsplit\nr=json.loads(Path(&quot;result.json&quot;).read_text())\ni=r.get(&quot;id&quot;)\nif not isinstance(i,str) or not i.startswith(&quot;native302_&quot;):raise SystemExit(&quot;Keep original response/headers/id; do not resubmit creation.&quot;)\nu=urljoin(&quot;https://api.ailoot.ai&quot;,r.get(&quot;polling_url&quot;) or &quot;/v1/videos/&quot;+quote(i,safe=&quot;&quot;))\np=urlsplit(u)\nif p.scheme!=&quot;https&quot; or p.netloc!=&quot;api.ailoot.ai&quot; or not p.path.startswith(&quot;/v1/videos/&quot;):raise SystemExit(&quot;Use actual Ailoot lookup path.&quot;)\nPath(&quot;poll-url.txt&quot;).write_text(u)\nPY_POLL\ncurl --fail-with-body --silent --show-error &quot;$(cat poll-url.txt)&quot; -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -D status-headers.txt -o status.json\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2775-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2775-tab-2\" hidden><pre data-lang=\"bash\"><code>set -eu\npython3 - &lt;&lt;&#39;PY_ASSETS&#39;\nimport json\nfrom pathlib import Path\nfrom urllib.parse import urlsplit\nr=json.loads(Path(&quot;status.json&quot;).read_text())\nif r.get(&quot;status&quot;)!=&quot;succeeded&quot;:raise SystemExit(&quot;Poll same original job until an owned result is returned.&quot;)\nu=r.get(&quot;content&quot;,{}).get(&quot;video_url&quot;)\nurls=[u] if isinstance(u,str) else u\nif not isinstance(urls,list) or not urls:raise SystemExit(&quot;No completed video URL.&quot;)\nfor u in urls:\n    if not isinstance(u,str):raise SystemExit(&quot;Invalid returned URL.&quot;)\n    p=urlsplit(u)\n    if p.scheme!=&quot;https&quot; or p.netloc!=&quot;api.ailoot.ai&quot; or not p.path.startswith(&quot;/v1/media/assets/&quot;) or not p.path.endswith(&quot;/content&quot;) or not p.query:raise SystemExit(&quot;Wait for actual Ailoot-owned signed result.&quot;)\nPath(&quot;asset-urls.txt&quot;).write_text(&quot;\\n&quot;.join(urls)+&quot;\\n&quot;)\nPY_ASSETS\nindex=0\nwhile IFS= read -r asset_url; do\n  curl --fail-with-body --silent --show-error &quot;$asset_url&quot; -o &quot;video-${index}.bin&quot;\n  index=$((index + 1))\ndone &lt; asset-urls.txt\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">استلام النتائج وحفظها</h3><h4>Ailoot Ultra · فيديو</h4><p class=\"note-s\">JSON أصلي يتضمن id/polling_url عامين. بعد النشر، يحتوي content.video_url على عنوان URL موقّع أو أكثر تابع لـAiloot؛ وقبل النشر تُفرَّغ عناوين URL للمخرجات المختارة.</p><ul class=\"card-result-paths\"><li><code>GET /v1/videos/{request_id}</code></li><li><code>GET /v1/videos/generations/{request_id}</code></li><li><code>GET /v1/videos/{request_id}/content</code></li><li><code>GET /v1/videos/generations/{request_id}/content</code></li></ul><div class=\"card-result-process\" data-all-results><h5>الاحتفاظ بكل النتائج المكتملة</h5><p class=\"note-s\">احفظ كل فيديو مكتمل أو ملف مُرجع؛ ونزّل كل أصل من URL الخاص به الذي تم إرجاعه فعليًا.</p><p class=\"note-s\">احتفظ بكل عنوان URL فعلي في content.video_url؛ ويجب أن يحدد index مخرجاً فعلياً مُعاداً.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>عند الحاجة إلى التحقق من الاستجابة الأصلية</h5><p class=\"note-s\">احتفظ بالاستجابة والترويسات والمعرّف الأصلية، واستعلم دورياً عن تلك العملية؛ ولا تعِد إرسال طلب إنشاء مجهول النتيجة مطلقاً.</p></div><details class=\"card-about\" data-output-fields><summary>حقول الاستجابة</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>الحقل</th><th>النوع</th></tr></thead><tbody><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">id</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>string</td></tr><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">provider_task_id</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>string</td></tr><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">polling_url</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>string</td></tr><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">status</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>string when supplied</td></tr><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">content.video_url</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>string|string[]</td></tr><tr><th data-cell-label=\"الحقل\" scope=\"row\"><span class=\"card-cell-label\">الحقل</span><code class=\"card-field-name\">usage</code></th><td data-cell-label=\"النوع\" data-field-type><span class=\"card-cell-label\">النوع</span>object when supplied</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>الأخطاء والخطوات التالية</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>الاستجابة</th><th>الشرط</th><th>الخطوة التالية</th></tr></thead><tbody><tr><th data-cell-label=\"الاستجابة\" scope=\"row\"><span class=\"card-cell-label\">الاستجابة</span>⁦400⁩ · <code>invalid_request_error</code></th><td data-cell-label=\"الشرط\"><span class=\"card-cell-label\">الشرط</span>JSON أو النموذج أو أنواع الحقول المطلوبة أو فهرس المحتوى غير صالحة.</td><td data-cell-label=\"الخطوة التالية\"><span class=\"card-cell-label\">الخطوة التالية</span></td></tr><tr><th data-cell-label=\"الاستجابة\" scope=\"row\"><span class=\"card-cell-label\">الاستجابة</span>⁦401⁩ · <code>authentication_error</code></th><td data-cell-label=\"الشرط\"><span class=\"card-cell-label\">الشرط</span>مفتاح API الخاص بـAiloot غير صالح.</td><td data-cell-label=\"الخطوة التالية\"><span class=\"card-cell-label\">الخطوة التالية</span></td></tr><tr><th data-cell-label=\"الاستجابة\" scope=\"row\"><span class=\"card-cell-label\">الاستجابة</span>⁦404⁩ · <code>not_found_error</code></th><td data-cell-label=\"الشرط\"><span class=\"card-cell-label\">الشرط</span>المهمة أو المخرج غير موجود، أو غير مملوك للمستخدم ومفتاح API والمجموعة نفسها.</td><td data-cell-label=\"الخطوة التالية\"><span class=\"card-cell-label\">الخطوة التالية</span></td></tr><tr><th data-cell-label=\"الاستجابة\" scope=\"row\"><span class=\"card-cell-label\">الاستجابة</span>⁦502⁩ · <code>result_pending_check</code></th><td data-cell-label=\"الشرط\"><span class=\"card-cell-label\">الشرط</span>الإرسال الأصلي أو حالته غير مكتملين؛ احتفظ بالمعرّف الأصلي ولا تعِد الإرسال.</td><td data-cell-label=\"الخطوة التالية\"><span class=\"card-cell-label\">الخطوة التالية</span></td></tr><tr><th data-cell-label=\"الاستجابة\" scope=\"row\"><span class=\"card-cell-label\">الاستجابة</span>⁦503⁩ · <code>result_pending_check</code></th><td data-cell-label=\"الشرط\"><span class=\"card-cell-label\">الشرط</span>الوسائط أو المسار أو التسوية الأصلية قيد التحقق؛ تابع العملية الأصلية.</td><td data-cell-label=\"الخطوة التالية\"><span class=\"card-cell-label\">الخطوة التالية</span></td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">الأسماء البديلة</h3><h4>الأسماء البديلة للنموذج</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=doubao-seedance-1-0-lite-t2v-250428&amp;route=Ultra&amp;caller=doubao-seedance-1-0-lite-t2v-250428&amp;fmt=videos\"><code>doubao-seedance-1-0-lite-t2v-250428</code></a></span></p><h4>الأسماء البديلة لمسارات الطرائق</h4><p class=\"note-s\"><code>/v1/videos/generations</code></p><h4>معرّفات النماذج ذات الصلة IDs</h4><p class=\"note-s\"><a href=\"#m=doubao-seedance-1-0-lite-t2v-250428&amp;route=Ultra&amp;caller=doubao-seedance-1-0-lite-t2v-250428&amp;fmt=videos\"><code>doubao-seedance-1-0-lite-t2v-250428</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|doubao-seedance-1-0-lite-t2v-250428",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "تقدّر التعرفات المعروضة التكلفة قبل التوليد. تُحسب الرسوم النهائية من التكلفة المسجّلة لعملية التوليد الأصلية. مدة المخرجات المقاسة والكميات المتوقعة ليست الكمية النهائية الخاضعة للفوترة.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "errors": [
              {
                "condition": "JSON أو النموذج أو أنواع الحقول المطلوبة أو فهرس المحتوى غير صالحة.",
                "http_status": 400,
                "type": "invalid_request_error"
              },
              {
                "condition": "مفتاح API الخاص بـAiloot غير صالح.",
                "http_status": 401,
                "type": "authentication_error"
              },
              {
                "condition": "المهمة أو المخرج غير موجود، أو غير مملوك للمستخدم ومفتاح API والمجموعة نفسها.",
                "http_status": 404,
                "type": "not_found_error"
              },
              {
                "condition": "الإرسال الأصلي أو حالته غير مكتملين؛ احتفظ بالمعرّف الأصلي ولا تعِد الإرسال.",
                "http_status": 502,
                "type": "result_pending_check"
              },
              {
                "condition": "الوسائط أو المسار أو التسوية الأصلية قيد التحقق؛ تابع العملية الأصلية.",
                "http_status": 503,
                "type": "result_pending_check"
              }
            ],
            "ignored_fields": [],
            "lifecycle": {
              "cancel_endpoint": null,
              "completed_states": [
                "succeeded"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "content_pending": "Original status JSON until publication.",
              "content_ready": {
                "http_status": 303,
                "location": "actual signed Ailoot-owned asset URL"
              },
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed",
                "expired"
              ],
              "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
              "mode": "submit_once_poll_original",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "pending_states": [
                "queued",
                "running"
              ],
              "signed_asset_lifetime_seconds": 86400,
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 200,
              "unknown": "احتفظ بالاستجابة والترويسات والمعرّف الأصلية، واستعلم دورياً عن تلك العملية؛ ولا تعِد إرسال طلب إنشاء مجهول النتيجة مطلقاً.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              [
                "text"
              ]
            ],
            "operation_modes": [
              "text_to_video"
            ],
            "outputs": {
              "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
              "all_results": "احتفظ بكل عنوان URL فعلي في content.video_url؛ ويجب أن يحدد index مخرجاً فعلياً مُعاداً.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "status",
                  "type": "string when supplied"
                },
                {
                  "description": null,
                  "name": "content.video_url",
                  "type": "string|string[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object when supplied"
                }
              ],
              "format": null,
              "maximum_outputs": null,
              "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
              "result": "JSON أصلي يتضمن id/polling_url عامين. بعد النشر، يحتوي content.video_url على عنوان URL موقّع أو أكثر تابع لـAiloot؛ وقبل النشر تُفرَّغ عناوين URL للمخرجات المختارة."
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-0-lite-t2v-250428"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "كائنات نصية أو وسائط بصيغتها الأصلية؛ يجب ألا تكون المصفوفة الخارجية فارغة. لا يتحقق مُنشئ الطلبات العام هذا في Ailoot من أنواع العُقد المتداخلة.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minItems": 1,
                "name": "content",
                "required": true,
                "type": "array"
              },
              {
                "availability": "source_interface",
                "conditions": "المخطط الأساسي للإصدار 1.x يحدد 2–12؛ ويصف نص مشترك لاحق الإصدار 1.5 بأنه 4–12 أو -1. يستخدم المثال القيمة 5 الموثّقة في الموضعين.",
                "default": 5,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 12,
                "minimum": 2,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "تعداد مشترك؛ تُستبعد 1080p عند استخدام صور مرجعية ومع 1.5. يسرد الوصف المضمّن لـpro القيمتين 480p/1080p، بينما يتضمن التعداد في المستوى الأعلى 720p؛ ولا يوجد ضمان محسوم لدعم 720p في pro.",
                "default": "720p",
                "default_known": true,
                "enum": [
                  "480p",
                  "720p",
                  "1080p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "تختلف القيم الافتراضية باختلاف المشهد والنموذج؛ ويوصي توثيق إدخال الصور باستخدام adaptive.",
                "default": null,
                "default_known": false,
                "enum": [
                  "16:9",
                  "4:3",
                  "1:1",
                  "3:4",
                  "9:16",
                  "21:9",
                  "adaptive"
                ],
                "enum_known": true,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "default=online، flex=offline؛ اختر قبل الإنشاء.",
                "default": "default",
                "default_known": true,
                "enum": [
                  "default",
                  "flex"
                ],
                "enum_known": true,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": -1,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": true,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "مطلوب من Ailoot؛ يوضح التوثيق أن التحكم بالكاميرا باستخدام صورة مرجعية غير مدعوم، ولا يُضمن تأثيره.",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "camerafixed",
                "required": true,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "watermark",
                "required": true,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": 172800,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": true,
                "type": "integer",
                "unit": "ثوانٍ"
              }
            ],
            "profile_binding": "Exact model ID and documented Ailoot video interface.",
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "camerafixed": {
                  "type": "boolean"
                },
                "content": {
                  "items": {
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "duration": {
                  "maximum": 12,
                  "minimum": 2,
                  "type": "integer"
                },
                "execution_expires_after": {
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "model": {
                  "const": "doubao-seedance-1-0-lite-t2v-250428",
                  "type": "string"
                },
                "ratio": {
                  "enum": [
                    "16:9",
                    "4:3",
                    "1:1",
                    "3:4",
                    "9:16",
                    "21:9",
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "default": "720p",
                  "enum": [
                    "480p",
                    "720p",
                    "1080p"
                  ],
                  "type": "string"
                },
                "seed": {
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "enum": [
                    "default",
                    "flex"
                  ],
                  "type": "string"
                },
                "watermark": {
                  "type": "boolean"
                }
              },
              "required": [
                "camerafixed",
                "content",
                "execution_expires_after",
                "model",
                "seed",
                "watermark"
              ],
              "type": "object"
            },
            "source_ambiguities": [
              "Primary content.items.required says type+text even for its image example without text; preserve intended example branches and outer-array validation boundary."
            ],
            "unsupported": [
              "Separate cancel/delete for this generic method",
              "Separate edit/extension endpoint for this method"
            ]
          },
          "hints": [
            "أنشئ مرة واحدة واحتفظ بالقيم المُعادة للحقلين العامين id/polling_url.",
            "استعلم دورياً عن المهمة الأصلية؛ ونزّل المحتوى الفعلي المملوك لك في content.video_url بعد succeeded."
          ],
          "input": {
            "additional_properties": true,
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier"
            ],
            "required": [
              "camerafixed",
              "content",
              "execution_expires_after",
              "model",
              "seed",
              "watermark"
            ],
            "validation_scope": "تتحقق Ailoot من أنواع الحقول المطلوبة ومن أن قيمة model ومصفوفة content غير فارغتين. تُحفظ حقول الطلب الأخرى للنموذج المختار."
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "completed_states": [
              "succeeded"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "content_pending": "Original status JSON until publication.",
            "content_ready": {
              "http_status": 303,
              "location": "actual signed Ailoot-owned asset URL"
            },
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed",
              "expired"
            ],
            "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
            "mode": "submit_once_poll_original",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "pending_states": [
              "queued",
              "running"
            ],
            "signed_asset_lifetime_seconds": 86400,
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 200,
            "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
            "unknown_no_replay": true
          },
          "manufacturer_capability": {
            "documented_material_types": [
              "text"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video"
          ],
          "output": {
            "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
            "all_results": "Retain every actual URL in content.video_url; index must identify a real returned output.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "polling_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string when supplied"
              },
              {
                "description": null,
                "name": "content.video_url",
                "type": "string|string[]"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object when supplied"
              }
            ],
            "format": null,
            "maximum_outputs": null,
            "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
            "result": "Native JSON with public id/polling_url. After publication content.video_url contains Ailoot-owned signed URL(s); before publication selected output URLs are blanked."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.003000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_output_token"
              }
            ]
          },
          {
            "basis": "هذا التقدير ليس رسومًا إضافية ولا تعرفة ثابتة لعملية التوليد المكتملة.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "تكلفة التوليد التقديرية",
            "units": [
              {
                "amount": "0.144",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.144",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON_REQUEST'\n{\"model\":\"doubao-seedance-1-0-lite-t2v-250428\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}],\"resolution\":\"480p\",\"ratio\":\"1:1\",\"duration\":5,\"service_tier\":\"default\",\"seed\":-1,\"camerafixed\":false,\"watermark\":false,\"execution_expires_after\":172800}\nJSON_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n",
            "label": "curl · create video",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_POLL'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote,urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\ni=r.get(\"id\")\nif not isinstance(i,str) or not i.startswith(\"native302_\"):raise SystemExit(\"Keep original response/headers/id; do not resubmit creation.\")\nu=urljoin(\"https://api.ailoot.ai\",r.get(\"polling_url\") or \"/v1/videos/\"+quote(i,safe=\"\"))\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or not p.path.startswith(\"/v1/videos/\"):raise SystemExit(\"Use actual Ailoot lookup path.\")\nPath(\"poll-url.txt\").write_text(u)\nPY_POLL\ncurl --fail-with-body --silent --show-error \"$(cat poll-url.txt)\" -H \"Authorization: Bearer $AILOOT_API_KEY\" -D status-headers.txt -o status.json\n",
            "label": "curl · read original task",
            "language": "bash"
          },
          {
            "code": "set -eu\npython3 - <<'PY_ASSETS'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import urlsplit\nr=json.loads(Path(\"status.json\").read_text())\nif r.get(\"status\")!=\"succeeded\":raise SystemExit(\"Poll same original job until an owned result is returned.\")\nu=r.get(\"content\",{}).get(\"video_url\")\nurls=[u] if isinstance(u,str) else u\nif not isinstance(urls,list) or not urls:raise SystemExit(\"No completed video URL.\")\nfor u in urls:\n    if not isinstance(u,str):raise SystemExit(\"Invalid returned URL.\")\n    p=urlsplit(u)\n    if p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or not p.path.startswith(\"/v1/media/assets/\") or not p.path.endswith(\"/content\") or not p.query:raise SystemExit(\"Wait for actual Ailoot-owned signed result.\")\nPath(\"asset-urls.txt\").write_text(\"\\n\".join(urls)+\"\\n\")\nPY_ASSETS\nindex=0\nwhile IFS= read -r asset_url; do\n  curl --fail-with-body --silent --show-error \"$asset_url\" -o \"video-${index}.bin\"\n  index=$((index + 1))\ndone < asset-urls.txt\n",
            "label": "curl · download owned video",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "hints": [
          "Create once and retain returned public id/polling_url.",
          "Poll the original job; download actual owned content.video_url after succeeded."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "فيديو",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.003000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_output_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.144",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.144",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}",
          "GET /v1/videos/{request_id}/content",
          "GET /v1/videos/generations/{request_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.003000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.000003",
            "native_quantity": 1,
            "public_unit_label": "per 1,000 video tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_output_token"
          },
          {
            "amount": "0.144",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.144",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    }
  ],
  "model_id": "doubao-seedance-1-0-lite-t2v-250428",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "74266e8df8750d803742d4b75018dc0d86a2ce209af3d2d0a4d3a08a05cff5ba",
    "input_html_sha256": "0dd3665586dcf318aee73608a67b3769cbf5b65ada54f397354cb0c2d30eae52",
    "private_audit_sha256": "d10dd9c44ba46f9ac5229aaf0e84039c0c72f95e5fbcb633f74ce67172ccdec4",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/ar/doubao-seedance-1-0-lite-t2v-250428/",
    "description": "يحوّل Seedance 1.0 Lite Text-to-Video مشهدًا مكتوبًا إلى فيديو صامت. يستخدم معرّف اختيار Lite هذا النص بدل صورة مرجعية، مع مدة 2–12 ثانية ومعدل 24 fps وتأطير أفقي أو عمودي أو مربع أو سينمائي.",
    "locale": "ar",
    "md_url": "https://ailoot.ai/models/ar/doubao-seedance-1-0-lite-t2v-250428/index.md",
    "title": "ByteDance: Seedance 1.0 Lite Text-to-Video — Ailoot",
    "url": "https://ailoot.ai/models/ar/doubao-seedance-1-0-lite-t2v-250428/"
  },
  "rawModel": {
    "about": "يولّد Seedance 1.0 Lite Text-to-Video فيديو من مشهد مكتوب. معرّف الاختيار الدقيق doubao-seedance-1-0-lite-t2v-250428 هو نموذج تحويل النص إلى فيديو ضمن إصدار Lite. استخدمه عندما يمكن وصف الموضوع والمكان والحركة مباشرةً: منتج على سطح طاولة، أو لقطة تأسيسية لموقع، أو فعل قصير لشخصية. المخرج مقطع فيديو؛ ولا يولّد إصدار 1.0 صوتًا متزامنًا.\n\nاكتب المشهد بالترتيب الذي ينبغي أن يراه المشاهد. حدّد الموضوع ومظهره والموقع والفعل وحجم اللقطة وحركة الكاميرا، ثم صف التكوين النهائي. قد يصف موجز منتج مفيد زجاجة على قاعدة حجرية فاتحة، وضوء الشمس يتحرك عبر الملصق، وتقدمًا بطيئًا نحو الغطاء. هذه تعليمات لمشهد جديد وليست ادعاءً بأن النموذج يعيد إنتاج صورة منتج مقدّمة. اجعل الفعل الظاهر مناسبًا لطول المقطع المختار.\n\nمعرّف تحويل النص إلى فيديو هذا متميز عن معرّف Lite المنفصل لتحويل الصورة إلى فيديو. يُقدَّم محتواه كعنصر text في مصفوفة content. يمكن لجملة أن تصف شخصًا أو شيئًا أو أسلوبًا، لكنها لا ترفق صورة مرجعية ولا تثبت هوية بصرية دقيقة من ملف لم يُرَ. لمشهد يجب أن يأتي تكوينه الافتتاحي من صورة موجودة، اختر إصدارًا يدعم الصور بدل افتراض أن هوية Lite t2v تغيّر الأنماط عند إضافة حقل وسائط.\n\nنطاق المدة الموثّق لـ1.0 من ثانيتين إلى اثنتي عشرة ثانية، مع مدة افتراضية قدرها خمس ثوانٍ ومعدل إطارات ثابت يبلغ 24 fps. يتيح Lite مستويات دقة 480p و720p و1080p، مع 720p افتراضيًا بحسب التوثيق. تشمل نسب الأبعاد الثابتة 16:9 و4:3 و1:1 و3:4 و9:16 و21:9. اختر الإطار وفق وجهته قبل التوليد: عموديًا لعرض رأسي، أو مربعًا للوحة منتج مدمجة، أو أفقيًا لمشهد عريض. تصف مستويات الدقة ونسب الأبعاد المخرجات المطلوبة؛ افحص المقطع الذي نُزّل لمعرفة أبعاده الفعلية بالبكسل وتأطيره.\n\nيتيح الطلب عناصر تحكم في seed والعلامة المائية والكاميرا. قيمة seed عدد صحيح من -1 إلى 2^32-1، حيث تختار -1 العشوائية. يضيف طلب تثبيت الكاميرا تعليمة بكاميرا ثابتة، ويصرّح التوثيق بأن الأثر غير مضمون. اجعل توجيه الكاميرا متسقًا بين المشهد المكتوب وعنصر التحكم المنفصل. تتقدم تعليمات المعاملات المضمّنة في النص على المعاملات الاختيارية المنفصلة، لذا تجنّب إعطاء تعليمات متعارضة للمدة أو الدقة أو التأطير في الموضعين.\n\nيُقاس الاستخدام برموز الفيديو: عرض الفيديو الناتج × ارتفاع الفيديو الناتج × معدل الإطارات × مدة الفيديو الناتج / 1024. تُبلغ المهمة المكتملة عن هذه الكمية في usage.completion_tokens. احتفظ بالاستخدام المبلّغ عنه مع المقطع النهائي وإعداداته المطلوبة.\n\nالتوليد غير متزامن. يُرجع الإرسال معرّف مهمة، ويوفر الاستعلام عن المهمة حالة معالجتها، وبعد النجاح رابط الفيديو في content.video_url. احتفظ بمعرّف المهمة ما دامت في قائمة الانتظار أو قيد التنفيذ، واحفظ المقطع المكتمل للمراجعة التالية. مدة الاحتفاظ الموثّقة بالملفات المولّدة سبعة أيام. وللطلب أيضًا مهلة انتهاء تُقاس من إنشاء المهمة، تصبح بعدها المهمة غير المكتملة منتهية الصلاحية؛ والقيمة الافتراضية الموثّقة 172800 ثانية، مع قيم من 3600 إلى 259200 ثانية.\n\nراجع المقطع كاملًا بالرجوع إلى الموجز: هل يظهر الموضوع المقصود، ويحدث الفعل بالترتيب الصحيح، وتتبع الكاميرا الاتجاه المطلوب، ويصلح الإطار النهائي للاستخدام؟ غيّر تعليمة محددة للنسخة التالية مع الحفاظ على بنية المشهد الناجحة. ولسلسلة لقطات، احتفظ بكل موجّه وإعدادات مطلوبة وفيديو مكتمل، حتى يمكن تخطيط المشهد التالي انطلاقًا من النتيجة الفعلية.",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.144",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.144",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ],
        "summary": "التسعير الكامل للتكوين في التفاصيل."
      }
    ],
    "ctx": null,
    "display_name": "ByteDance: Seedance 1.0 Lite Text-to-Video",
    "formats": [
      "videos"
    ],
    "id": "doubao-seedance-1-0-lite-t2v-250428",
    "input": [
      "text"
    ],
    "kind": "video",
    "locale": "en",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "تقدّر التعرفات المعروضة التكلفة قبل التوليد. تُحسب الرسوم النهائية من التكلفة المسجّلة لعملية التوليد الأصلية. مدة المخرجات المقاسة والكميات المتوقعة ليست الكمية النهائية الخاضعة للفوترة.",
          "forecast_quantity_is_estimate": true,
          "physical_output_is_billable_quantity": false,
          "version": "original_invoice_usd_v1"
        },
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "errors": [
              {
                "condition": "JSON أو النموذج أو أنواع الحقول المطلوبة أو فهرس المحتوى غير صالحة.",
                "http_status": 400,
                "type": "invalid_request_error"
              },
              {
                "condition": "مفتاح API الخاص بـAiloot غير صالح.",
                "http_status": 401,
                "type": "authentication_error"
              },
              {
                "condition": "المهمة أو المخرج غير موجود، أو غير مملوك للمستخدم ومفتاح API والمجموعة نفسها.",
                "http_status": 404,
                "type": "not_found_error"
              },
              {
                "condition": "الإرسال الأصلي أو حالته غير مكتملين؛ احتفظ بالمعرّف الأصلي ولا تعِد الإرسال.",
                "http_status": 502,
                "type": "result_pending_check"
              },
              {
                "condition": "الوسائط أو المسار أو التسوية الأصلية قيد التحقق؛ تابع العملية الأصلية.",
                "http_status": 503,
                "type": "result_pending_check"
              }
            ],
            "ignored_fields": [],
            "lifecycle": {
              "cancel_endpoint": null,
              "completed_states": [
                "succeeded"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "content_pending": "Original status JSON until publication.",
              "content_ready": {
                "http_status": 303,
                "location": "actual signed Ailoot-owned asset URL"
              },
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed",
                "expired"
              ],
              "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
              "mode": "submit_once_poll_original",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "pending_states": [
                "queued",
                "running"
              ],
              "signed_asset_lifetime_seconds": 86400,
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 200,
              "unknown": "احتفظ بالاستجابة والترويسات والمعرّف الأصلية، واستعلم دورياً عن تلك العملية؛ ولا تعِد إرسال طلب إنشاء مجهول النتيجة مطلقاً.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              [
                "text"
              ]
            ],
            "operation_modes": [
              "text_to_video"
            ],
            "outputs": {
              "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
              "all_results": "احتفظ بكل عنوان URL فعلي في content.video_url؛ ويجب أن يحدد index مخرجاً فعلياً مُعاداً.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "status",
                  "type": "string when supplied"
                },
                {
                  "description": null,
                  "name": "content.video_url",
                  "type": "string|string[]"
                },
                {
                  "description": null,
                  "name": "usage",
                  "type": "object when supplied"
                }
              ],
              "format": null,
              "maximum_outputs": null,
              "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
              "result": "JSON أصلي يتضمن id/polling_url عامين. بعد النشر، يحتوي content.video_url على عنوان URL موقّع أو أكثر تابع لـAiloot؛ وقبل النشر تُفرَّغ عناوين URL للمخرجات المختارة."
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-0-lite-t2v-250428"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "كائنات نصية أو وسائط بصيغتها الأصلية؛ يجب ألا تكون المصفوفة الخارجية فارغة. لا يتحقق مُنشئ الطلبات العام هذا في Ailoot من أنواع العُقد المتداخلة.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minItems": 1,
                "name": "content",
                "required": true,
                "type": "array"
              },
              {
                "availability": "source_interface",
                "conditions": "المخطط الأساسي للإصدار 1.x يحدد 2–12؛ ويصف نص مشترك لاحق الإصدار 1.5 بأنه 4–12 أو -1. يستخدم المثال القيمة 5 الموثّقة في الموضعين.",
                "default": 5,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 12,
                "minimum": 2,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "تعداد مشترك؛ تُستبعد 1080p عند استخدام صور مرجعية ومع 1.5. يسرد الوصف المضمّن لـpro القيمتين 480p/1080p، بينما يتضمن التعداد في المستوى الأعلى 720p؛ ولا يوجد ضمان محسوم لدعم 720p في pro.",
                "default": "720p",
                "default_known": true,
                "enum": [
                  "480p",
                  "720p",
                  "1080p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "تختلف القيم الافتراضية باختلاف المشهد والنموذج؛ ويوصي توثيق إدخال الصور باستخدام adaptive.",
                "default": null,
                "default_known": false,
                "enum": [
                  "16:9",
                  "4:3",
                  "1:1",
                  "3:4",
                  "9:16",
                  "21:9",
                  "adaptive"
                ],
                "enum_known": true,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "default=online، flex=offline؛ اختر قبل الإنشاء.",
                "default": "default",
                "default_known": true,
                "enum": [
                  "default",
                  "flex"
                ],
                "enum_known": true,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": -1,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": true,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "مطلوب من Ailoot؛ يوضح التوثيق أن التحكم بالكاميرا باستخدام صورة مرجعية غير مدعوم، ولا يُضمن تأثيره.",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "camerafixed",
                "required": true,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "watermark",
                "required": true,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": 172800,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": true,
                "type": "integer",
                "unit": "ثوانٍ"
              }
            ],
            "profile_binding": "Exact model ID and documented Ailoot video interface.",
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "camerafixed": {
                  "type": "boolean"
                },
                "content": {
                  "items": {
                    "type": "object"
                  },
                  "minItems": 1,
                  "type": "array"
                },
                "duration": {
                  "maximum": 12,
                  "minimum": 2,
                  "type": "integer"
                },
                "execution_expires_after": {
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "model": {
                  "const": "doubao-seedance-1-0-lite-t2v-250428",
                  "type": "string"
                },
                "ratio": {
                  "enum": [
                    "16:9",
                    "4:3",
                    "1:1",
                    "3:4",
                    "9:16",
                    "21:9",
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "default": "720p",
                  "enum": [
                    "480p",
                    "720p",
                    "1080p"
                  ],
                  "type": "string"
                },
                "seed": {
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "enum": [
                    "default",
                    "flex"
                  ],
                  "type": "string"
                },
                "watermark": {
                  "type": "boolean"
                }
              },
              "required": [
                "camerafixed",
                "content",
                "execution_expires_after",
                "model",
                "seed",
                "watermark"
              ],
              "type": "object"
            },
            "source_ambiguities": [
              "Primary content.items.required says type+text even for its image example without text; preserve intended example branches and outer-array validation boundary."
            ],
            "unsupported": [
              "Separate cancel/delete for this generic method",
              "Separate edit/extension endpoint for this method"
            ]
          },
          "hints": [
            "أنشئ مرة واحدة واحتفظ بالقيم المُعادة للحقلين العامين id/polling_url.",
            "استعلم دورياً عن المهمة الأصلية؛ ونزّل المحتوى الفعلي المملوك لك في content.video_url بعد succeeded."
          ],
          "input": {
            "additional_properties": true,
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier"
            ],
            "required": [
              "camerafixed",
              "content",
              "execution_expires_after",
              "model",
              "seed",
              "watermark"
            ],
            "validation_scope": "تتحقق Ailoot من أنواع الحقول المطلوبة ومن أن قيمة model ومصفوفة content غير فارغتين. تُحفظ حقول الطلب الأخرى للنموذج المختار."
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "completed_states": [
              "succeeded"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "content_pending": "Original status JSON until publication.",
            "content_ready": {
              "http_status": 303,
              "location": "actual signed Ailoot-owned asset URL"
            },
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed",
              "expired"
            ],
            "id_source": "Actual returned id or X-Ailoot-Task-Id; provider_task_id is separate. Use returned polling_url.",
            "mode": "submit_once_poll_original",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "pending_states": [
              "queued",
              "running"
            ],
            "signed_asset_lifetime_seconds": 86400,
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 200,
            "unknown": "Preserve original response/headers/id and poll that operation; never resubmit unknown creation.",
            "unknown_no_replay": true
          },
          "manufacturer_capability": {
            "documented_material_types": [
              "text"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video"
          ],
          "output": {
            "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
            "all_results": "Retain every actual URL in content.video_url; index must identify a real returned output.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "polling_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string when supplied"
              },
              {
                "description": null,
                "name": "content.video_url",
                "type": "string|string[]"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object when supplied"
              }
            ],
            "format": null,
            "maximum_outputs": null,
            "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
            "result": "Native JSON with public id/polling_url. After publication content.video_url contains Ailoot-owned signed URL(s); before publication selected output URLs are blanked."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.003000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_output_token"
              }
            ]
          },
          {
            "basis": "هذا التقدير ليس رسومًا إضافية ولا تعرفة ثابتة لعملية التوليد المكتملة.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "تكلفة التوليد التقديرية",
            "units": [
              {
                "amount": "0.144",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.144",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON_REQUEST'\n{\"model\":\"doubao-seedance-1-0-lite-t2v-250428\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}],\"resolution\":\"480p\",\"ratio\":\"1:1\",\"duration\":5,\"service_tier\":\"default\",\"seed\":-1,\"camerafixed\":false,\"watermark\":false,\"execution_expires_after\":172800}\nJSON_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o result.json\n",
            "label": "curl · create video",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_POLL'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote,urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\ni=r.get(\"id\")\nif not isinstance(i,str) or not i.startswith(\"native302_\"):raise SystemExit(\"Keep original response/headers/id; do not resubmit creation.\")\nu=urljoin(\"https://api.ailoot.ai\",r.get(\"polling_url\") or \"/v1/videos/\"+quote(i,safe=\"\"))\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or not p.path.startswith(\"/v1/videos/\"):raise SystemExit(\"Use actual Ailoot lookup path.\")\nPath(\"poll-url.txt\").write_text(u)\nPY_POLL\ncurl --fail-with-body --silent --show-error \"$(cat poll-url.txt)\" -H \"Authorization: Bearer $AILOOT_API_KEY\" -D status-headers.txt -o status.json\n",
            "label": "curl · read original task",
            "language": "bash"
          },
          {
            "code": "set -eu\npython3 - <<'PY_ASSETS'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import urlsplit\nr=json.loads(Path(\"status.json\").read_text())\nif r.get(\"status\")!=\"succeeded\":raise SystemExit(\"Poll same original job until an owned result is returned.\")\nu=r.get(\"content\",{}).get(\"video_url\")\nurls=[u] if isinstance(u,str) else u\nif not isinstance(urls,list) or not urls:raise SystemExit(\"No completed video URL.\")\nfor u in urls:\n    if not isinstance(u,str):raise SystemExit(\"Invalid returned URL.\")\n    p=urlsplit(u)\n    if p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or not p.path.startswith(\"/v1/media/assets/\") or not p.path.endswith(\"/content\") or not p.query:raise SystemExit(\"Wait for actual Ailoot-owned signed result.\")\nPath(\"asset-urls.txt\").write_text(\"\\n\".join(urls)+\"\\n\")\nPY_ASSETS\nindex=0\nwhile IFS= read -r asset_url; do\n  curl --fail-with-body --silent --show-error \"$asset_url\" -o \"video-${index}.bin\"\n  index=$((index + 1))\ndone < asset-urls.txt\n",
            "label": "curl · download owned video",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "hints": [
          "Create once and retain returned public id/polling_url.",
          "Poll the original job; download actual owned content.video_url after succeeded."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "فيديو",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Ultra",
            "units": [
              {
                "amount": "0.003000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000003",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_output_token"
              }
            ]
          },
          {
            "basis": "This estimate is not an additional charge or a fixed rate for the completed generation.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Estimated generation cost",
            "units": [
              {
                "amount": "0.144",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "forecast_usd",
                "label": "Estimated generation cost",
                "native_amount_usd_per_unit": "0.144",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "request_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}",
          "GET /v1/videos/{request_id}/content",
          "GET /v1/videos/generations/{request_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.003000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.000003",
            "native_quantity": 1,
            "public_unit_label": "per 1,000 video tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_output_token"
          },
          {
            "amount": "0.144",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "forecast_usd",
            "label": "Estimated generation cost",
            "native_amount_usd_per_unit": "0.144",
            "native_quantity": 1,
            "public_unit_label": "estimate before generation",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "request_estimate"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "request_model_id": "doubao-seedance-1-0-lite-t2v-250428",
        "route_label": "Ultra"
      }
    ],
    "name": "ByteDance: Seedance 1.0 Lite Text-to-Video",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.144,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.144,
      "varies": false
    },
    "short": "يحوّل Seedance 1.0 Lite Text-to-Video مشهدًا مكتوبًا إلى فيديو صامت. يستخدم معرّف اختيار Lite هذا النص بدل صورة مرجعية، مع مدة 2–12 ثانية ومعدل 24 fps وتأطير أفقي أو عمودي أو مربع أو سينمائي."
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "يحوّل Seedance 1.0 Lite Text-to-Video مشهدًا مكتوبًا إلى فيديو صامت. يستخدم معرّف اختيار Lite هذا النص بدل صورة مرجعية، مع مدة 2–12 ثانية ومعدل 24 fps وتأطير أفقي أو عمودي أو مربع أو سينمائي.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "87f89d181b4c079370bb96266f4b793f09c7c68d6b931f3986ba7cbb7be4ffb2",
    "renderer_sha256": "081ee0fd5b6b1b60564b02c52d62547e01e922c8c0a16e91a0d055073e76a10e"
  },
  "sourceRevision": "de58c94f3a3682e942f00a92a1ec6c25df3b22274fa4a770bb609ac3cf744dc4"
}
