{
  "aboutHtml": "<p>Seedance 1.5 Pro мәтіннен немесе кескіннен бейне жасайды және дыбысты суретпен бірге генерациялай алады. Нақты селектор — doubao-seedance-1-5-pro-251215. Дыбыс параметрі оны дыбыссыз Seedance 1.0 профильдерінен ерекшелейді: generate_audio=true синхрондалған дыбысты, ал false дыбыссыз бейнені сұрайды. Жаңа тұжырым үшін жазбаша көріністі, ал бастапқы нысан мен композицияны белгілеу үшін кескінді пайдаланыңыз.</p><p>Көрінетін әрекет пен дыбысты бір көріністің бөліктері ретінде сипаттаңыз. Нысанды, ортаны, қозғалысты және камераны көрсетіп, көзделген дауыстарды, дыбыстық әсерлерді немесе фондық музыканы түсіндіріңіз. Портрет көрінісінде адам көзін ашып, камера баяу шегінгенде айналада жел болуы мүмкін. Тауар көрінісінде байланыссыз әсерлер тізімін қоспай, дыбысты қақпақтың ашылуы немесе заттың тірек бетке тиюі сияқты көрінетін оқиғамен байланыстырыңыз.</p><p>Модель мәтіндік сұрау мен визуалды мазмұннан дауыстарды, әсерлерді және фондық музыканы жасай алады. Нұсқаулық айтылатын диалогті қос тырнақшаға алуды ұсынады. Сөйлеуді сұралған әрекет пен үзілістерге сыятындай қысқа ұстаңыз және бірнеше кейіпкер болса, кім сөйлейтінін ажыратыңыз. Нақты сөздерді, дауыстың қай кейіпкерге тиесілі екенін және суретпен синхрондалуын тексеріңіз. Дыбыс нұсқауы жасалатын орындауды бағыттайды; бұл профильдің құжатталған сұрауында ол бөлек жүктелген дауыс референсі болып саналмайды.</p><p>Кескіннен бейне жасау мәтінмен бірге image_url элементін пайдаланады. Қолжетімді кескін URL мекенжайын немесе JPEG, PNG, WEBP, BMP, TIFF не GIF пішіміндегі Base64 data URL беріңіз. Құжатталған кескін шектері: 30 MB-тан аз, екі өлшемі қатаң түрде 300 бен 6000 пиксель арасында, енінің биіктігіне қатынасы қатаң түрде 0.4 пен 2.5 арасында. Қажетті кадрлауды және нысанды анық дайындап, сол композициядан басталатын қозғалысты сипаттаңыз. Кескін мысалы референске еру үшін adaptive арақатынасын пайдаланады.</p><p>Профильге арналған ұзақтық нұсқаулығы төрттен он екіге дейінгі бүтін секундтарды немесе сол диапазонда ұзақтықты модель таңдауы үшін -1 мәнін көрсетеді. Әдепкі ұзақтық — бес секунд. Seedance 1.5 Pro әдепкісі — 720p; сақталған профиль кестесі 480p және 720p-ді құжаттайды, ал арнайы жұмыс нұсқаулығы 1.5 Pro үшін 1080p ұсынбайды. Тұрақты арақатынастар: 16:9, 4:3, 1:1, 3:4, 9:16 және 21:9; құжатталған 1.5 әдепкісі — adaptive. Сұралған мәндерді дайын қайтарылған материал деп қабылдамай, нақты клиптің ұзақтығы мен пропорцияларын тексеріңіз.</p><p>Сұрау екі өңдеу деңгейін ұсынады. service_tier=default online өңдеуін, ал flex көбірек кідіріске шыдайтын жұмыс үшін offline өңдеуін таңдайды. Тапсырма жіберілген соң бұл деңгейді өзгертуге болмайды. Оны жұмыс барысының уақыт талаптарына сай таңдап, сұрау жазбасында сақтаңыз. Дыбыс режимі мен өңдеу деңгейі — бөлек таңдаулар: дыбыссыз клип автоматты түрде offline тапсырмаға айналмайды, ал дыбысты қосу өңдеу деңгейін таңдамайды.</p><p>Бастапқы мәнді, сутаңбаны және камера нұсқауларын көрініспен үйлестіріңіз. Мәтінге енгізілген параметр командалары бөлек қосымша параметрлерден басым. Камераны бекіту басқаруы референс кескін сценарийінде алынып тасталған және қолданылатын жерде де көріністі толық бекітуге кепілдік бермейді. Кескінге негізделген анимация үшін камераны басқару планды сипаттау қажеттілігін жояды деп ойламай, көзделген қозғалысты тікелей түсіндіріңіз.</p><p>Пайдалану көлемі бейнетокендермен өлшенеді: шығыс ені × шығыс биіктігі × кадр жиілігі × шығыс ұзақтығы / 1024. Аяқталған тапсырма бұл мөлшерді usage.completion_tokens арқылы хабарлайды. Хабарланған пайдалану мөлшерін дайын клиппен және оның сұралған баптауларымен бірге сақтаңыз. Дыбыстың қосылуы не өшірілуі және online не flex өңдеуі пайдалануға негізделген төлемде бөлек санаттар болып қалады.</p><p>Жіберу асинхронды тапсырма идентификаторын қайтарады. Тапсырманы аяқталғанша қадағалап, содан кейін content.video_url арқылы берілген бейнені сақтаңыз. Жасалған файлдың құжатталған сақтау мерзімі — жеті күн. Жарамдылық параметрі жасалған сәттен есептеледі, әдепкісі — 172800 секунд, қабылдайтын мәндері 3600 мен 259200 секунд аралығында; берілген аралық өткенде аяқталмаған тапсырма expired күйіне ауысады. Соңғы клипті, бастапқы кескінді және дәл визуалды-дыбыстық тапсырманы бірге сақтап, толық нәтижедегі әрекетті, сәйкестікті, камера сабақтастығын және дыбыс сәйкестігін тексеріңіз.</p>",
  "aboutText": "Seedance 1.5 Pro мәтіннен немесе кескіннен бейне жасайды және дыбысты суретпен бірге генерациялай алады. Нақты селектор — doubao-seedance-1-5-pro-251215. Дыбыс параметрі оны дыбыссыз Seedance 1.0 профильдерінен ерекшелейді: generate_audio=true синхрондалған дыбысты, ал false дыбыссыз бейнені сұрайды. Жаңа тұжырым үшін жазбаша көріністі, ал бастапқы нысан мен композицияны белгілеу үшін кескінді пайдаланыңыз.\n\nКөрінетін әрекет пен дыбысты бір көріністің бөліктері ретінде сипаттаңыз. Нысанды, ортаны, қозғалысты және камераны көрсетіп, көзделген дауыстарды, дыбыстық әсерлерді немесе фондық музыканы түсіндіріңіз. Портрет көрінісінде адам көзін ашып, камера баяу шегінгенде айналада жел болуы мүмкін. Тауар көрінісінде байланыссыз әсерлер тізімін қоспай, дыбысты қақпақтың ашылуы немесе заттың тірек бетке тиюі сияқты көрінетін оқиғамен байланыстырыңыз.\n\nМодель мәтіндік сұрау мен визуалды мазмұннан дауыстарды, әсерлерді және фондық музыканы жасай алады. Нұсқаулық айтылатын диалогті қос тырнақшаға алуды ұсынады. Сөйлеуді сұралған әрекет пен үзілістерге сыятындай қысқа ұстаңыз және бірнеше кейіпкер болса, кім сөйлейтінін ажыратыңыз. Нақты сөздерді, дауыстың қай кейіпкерге тиесілі екенін және суретпен синхрондалуын тексеріңіз. Дыбыс нұсқауы жасалатын орындауды бағыттайды; бұл профильдің құжатталған сұрауында ол бөлек жүктелген дауыс референсі болып саналмайды.\n\nКескіннен бейне жасау мәтінмен бірге image_url элементін пайдаланады. Қолжетімді кескін URL мекенжайын немесе JPEG, PNG, WEBP, BMP, TIFF не GIF пішіміндегі Base64 data URL беріңіз. Құжатталған кескін шектері: 30 MB-тан аз, екі өлшемі қатаң түрде 300 бен 6000 пиксель арасында, енінің биіктігіне қатынасы қатаң түрде 0.4 пен 2.5 арасында. Қажетті кадрлауды және нысанды анық дайындап, сол композициядан басталатын қозғалысты сипаттаңыз. Кескін мысалы референске еру үшін adaptive арақатынасын пайдаланады.\n\nПрофильге арналған ұзақтық нұсқаулығы төрттен он екіге дейінгі бүтін секундтарды немесе сол диапазонда ұзақтықты модель таңдауы үшін -1 мәнін көрсетеді. Әдепкі ұзақтық — бес секунд. Seedance 1.5 Pro әдепкісі — 720p; сақталған профиль кестесі 480p және 720p-ді құжаттайды, ал арнайы жұмыс нұсқаулығы 1.5 Pro үшін 1080p ұсынбайды. Тұрақты арақатынастар: 16:9, 4:3, 1:1, 3:4, 9:16 және 21:9; құжатталған 1.5 әдепкісі — adaptive. Сұралған мәндерді дайын қайтарылған материал деп қабылдамай, нақты клиптің ұзақтығы мен пропорцияларын тексеріңіз.\n\nСұрау екі өңдеу деңгейін ұсынады. service_tier=default online өңдеуін, ал flex көбірек кідіріске шыдайтын жұмыс үшін offline өңдеуін таңдайды. Тапсырма жіберілген соң бұл деңгейді өзгертуге болмайды. Оны жұмыс барысының уақыт талаптарына сай таңдап, сұрау жазбасында сақтаңыз. Дыбыс режимі мен өңдеу деңгейі — бөлек таңдаулар: дыбыссыз клип автоматты түрде offline тапсырмаға айналмайды, ал дыбысты қосу өңдеу деңгейін таңдамайды.\n\nБастапқы мәнді, сутаңбаны және камера нұсқауларын көрініспен үйлестіріңіз. Мәтінге енгізілген параметр командалары бөлек қосымша параметрлерден басым. Камераны бекіту басқаруы референс кескін сценарийінде алынып тасталған және қолданылатын жерде де көріністі толық бекітуге кепілдік бермейді. Кескінге негізделген анимация үшін камераны басқару планды сипаттау қажеттілігін жояды деп ойламай, көзделген қозғалысты тікелей түсіндіріңіз.\n\nПайдалану көлемі бейнетокендермен өлшенеді: шығыс ені × шығыс биіктігі × кадр жиілігі × шығыс ұзақтығы / 1024. Аяқталған тапсырма бұл мөлшерді usage.completion_tokens арқылы хабарлайды. Хабарланған пайдалану мөлшерін дайын клиппен және оның сұралған баптауларымен бірге сақтаңыз. Дыбыстың қосылуы не өшірілуі және online не flex өңдеуі пайдалануға негізделген төлемде бөлек санаттар болып қалады.\n\nЖіберу асинхронды тапсырма идентификаторын қайтарады. Тапсырманы аяқталғанша қадағалап, содан кейін content.video_url арқылы берілген бейнені сақтаңыз. Жасалған файлдың құжатталған сақтау мерзімі — жеті күн. Жарамдылық параметрі жасалған сәттен есептеледі, әдепкісі — 172800 секунд, қабылдайтын мәндері 3600 мен 259200 секунд аралығында; берілген аралық өткенде аяқталмаған тапсырма expired күйіне ауысады. Соңғы клипті, бастапқы кескінді және дәл визуалды-дыбыстық тапсырманы бірге сақтап, толық нәтижедегі әрекетті, сәйкестікті, камера сабақтастығын және дыбыс сәйкестігін тексеріңіз.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "007834d764c147b04389dcc93b3d6a23130002fffe57703615d1b35959fedcea",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "kk",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">ByteDance: Seedance 1.5 Pro</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Жабу\">×</button></div><div class=\"idline\"><span>ByteDance /</span><code>doubao-seedance-1-5-pro-251215</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-5-pro-251215\">Бейне</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.5 Pro мәтіннен немесе кескіннен бейне жасайды және синхрондалған дауыстарды, әсерлерді, фондық музыканы жасай алады. Дыбысты қосуға не өшіруге болады; құжатталған профиль 4–12 секундтық көріністерді, бейімделмелі кадрлауды және online немесе flex өңдеуін ұсынады.</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.5 Pro мәтіннен немесе кескіннен бейне жасайды және дыбысты суретпен бірге генерациялай алады. Нақты селектор — doubao-seedance-1-5-pro-251215. Дыбыс параметрі оны дыбыссыз Seedance 1.0 профильдерінен ерекшелейді: generate_audio=true синхрондалған дыбысты, ал false дыбыссыз бейнені сұрайды. Жаңа тұжырым үшін жазбаша көріністі, ал бастапқы нысан мен композицияны белгілеу үшін кескінді пайдаланыңыз.</p><p>Көрінетін әрекет пен дыбысты бір көріністің бөліктері ретінде сипаттаңыз. Нысанды, ортаны, қозғалысты және камераны көрсетіп, көзделген дауыстарды, дыбыстық әсерлерді немесе фондық музыканы түсіндіріңіз. Портрет көрінісінде адам көзін ашып, камера баяу шегінгенде айналада жел болуы мүмкін. Тауар көрінісінде байланыссыз әсерлер тізімін қоспай, дыбысты қақпақтың ашылуы немесе заттың тірек бетке тиюі сияқты көрінетін оқиғамен байланыстырыңыз.</p><p>Модель мәтіндік сұрау мен визуалды мазмұннан дауыстарды, әсерлерді және фондық музыканы жасай алады. Нұсқаулық айтылатын диалогті қос тырнақшаға алуды ұсынады. Сөйлеуді сұралған әрекет пен үзілістерге сыятындай қысқа ұстаңыз және бірнеше кейіпкер болса, кім сөйлейтінін ажыратыңыз. Нақты сөздерді, дауыстың қай кейіпкерге тиесілі екенін және суретпен синхрондалуын тексеріңіз. Дыбыс нұсқауы жасалатын орындауды бағыттайды; бұл профильдің құжатталған сұрауында ол бөлек жүктелген дауыс референсі болып саналмайды.</p><p>Кескіннен бейне жасау мәтінмен бірге image_url элементін пайдаланады. Қолжетімді кескін URL мекенжайын немесе JPEG, PNG, WEBP, BMP, TIFF не GIF пішіміндегі Base64 data URL беріңіз. Құжатталған кескін шектері: 30 MB-тан аз, екі өлшемі қатаң түрде 300 бен 6000 пиксель арасында, енінің биіктігіне қатынасы қатаң түрде 0.4 пен 2.5 арасында. Қажетті кадрлауды және нысанды анық дайындап, сол композициядан басталатын қозғалысты сипаттаңыз. Кескін мысалы референске еру үшін adaptive арақатынасын пайдаланады.</p><p>Профильге арналған ұзақтық нұсқаулығы төрттен он екіге дейінгі бүтін секундтарды немесе сол диапазонда ұзақтықты модель таңдауы үшін -1 мәнін көрсетеді. Әдепкі ұзақтық — бес секунд. Seedance 1.5 Pro әдепкісі — 720p; сақталған профиль кестесі 480p және 720p-ді құжаттайды, ал арнайы жұмыс нұсқаулығы 1.5 Pro үшін 1080p ұсынбайды. Тұрақты арақатынастар: 16:9, 4:3, 1:1, 3:4, 9:16 және 21:9; құжатталған 1.5 әдепкісі — adaptive. Сұралған мәндерді дайын қайтарылған материал деп қабылдамай, нақты клиптің ұзақтығы мен пропорцияларын тексеріңіз.</p><p>Сұрау екі өңдеу деңгейін ұсынады. service_tier=default online өңдеуін, ал flex көбірек кідіріске шыдайтын жұмыс үшін offline өңдеуін таңдайды. Тапсырма жіберілген соң бұл деңгейді өзгертуге болмайды. Оны жұмыс барысының уақыт талаптарына сай таңдап, сұрау жазбасында сақтаңыз. Дыбыс режимі мен өңдеу деңгейі — бөлек таңдаулар: дыбыссыз клип автоматты түрде offline тапсырмаға айналмайды, ал дыбысты қосу өңдеу деңгейін таңдамайды.</p><p>Бастапқы мәнді, сутаңбаны және камера нұсқауларын көрініспен үйлестіріңіз. Мәтінге енгізілген параметр командалары бөлек қосымша параметрлерден басым. Камераны бекіту басқаруы референс кескін сценарийінде алынып тасталған және қолданылатын жерде де көріністі толық бекітуге кепілдік бермейді. Кескінге негізделген анимация үшін камераны басқару планды сипаттау қажеттілігін жояды деп ойламай, көзделген қозғалысты тікелей түсіндіріңіз.</p><p>Пайдалану көлемі бейнетокендермен өлшенеді: шығыс ені × шығыс биіктігі × кадр жиілігі × шығыс ұзақтығы / 1024. Аяқталған тапсырма бұл мөлшерді usage.completion_tokens арқылы хабарлайды. Хабарланған пайдалану мөлшерін дайын клиппен және оның сұралған баптауларымен бірге сақтаңыз. Дыбыстың қосылуы не өшірілуі және online не flex өңдеуі пайдалануға негізделген төлемде бөлек санаттар болып қалады.</p><p>Жіберу асинхронды тапсырма идентификаторын қайтарады. Тапсырманы аяқталғанша қадағалап, содан кейін content.video_url арқылы берілген бейнені сақтаңыз. Жасалған файлдың құжатталған сақтау мерзімі — жеті күн. Жарамдылық параметрі жасалған сәттен есептеледі, әдепкісі — 172800 секунд, қабылдайтын мәндері 3600 мен 259200 секунд аралығында; берілген аралық өткенде аяқталмаған тапсырма expired күйіне ауысады. Соңғы клипті, бастапқы кескінді және дәл визуалды-дыбыстық тапсырманы бірге сақтап, толық нәтижедегі әрекетті, сәйкестікті, камера сабақтастығын және дыбыс сәйкестігін тексеріңіз.</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>, <code>image</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-5-pro-251215</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>Шарттар: Бастапқы 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</div><div>Шарттар: Seedance 1.5 Pro 480p және 720p қолдайды; 1080p қолданылмайды. Құжатталған әдепкі ажыратымдылық — 720p.</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>Шарттар: Seedance 1.5 Pro үшін құжатталған әдепкі жақтар арақатынасы — adaptive. Тұрақты арақатынас нұсқалары өзгермейді.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"known\"><span class=\"card-cell-label\">Әдепкі</span>adaptive</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><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">generate_audio</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>Шарттар: Тек 1.5 үшін: жасалған бейнеге кірістірілген синхрондалған дыбыс.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"known\"><span class=\"card-cell-label\">Әдепкі</span>true</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Кіріс материалдарының үйлесімдері</summary><p class=\"note-s\"><b></b></p><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, generate_audio</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, image</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><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>image_constraints</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>{&quot;formats&quot;:[&quot;jpeg&quot;,&quot;png&quot;,&quot;webp&quot;,&quot;bmp&quot;,&quot;tiff&quot;,&quot;gif&quot;],&quot;aspect_ratio_exclusive&quot;:[0.4,2.5],&quot;dimensions_px_exclusive&quot;:[300,6000],&quot;file_size_mb_exclusive&quot;:30,&quot;mb_bytes_definition&quot;:null}</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\">Бастапқы тапсырманың күйін мезгіл-мезгіл сұраңыз; succeeded күйінен кейін иелігіңіздегі нақты content.video_url бойынша файлды жүктеп алыңыз.</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><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>—</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>Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбысы бар нәтиже.</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>flex</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.0024</b> <span class=\"price-unit\">1K бейне токені үшін</span></div></td></tr><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбыссыз нәтиже.</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>flex</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.0012</b> <span class=\"price-unit\">1K бейне токені үшін</span></div></td></tr><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Өңдеу деңгейі: онлайн (default). Синхрондалған дыбысы бар нәтиже.</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>default</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.0048</b> <span class=\"price-unit\">1K бейне токені үшін</span></div></td></tr><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Өңдеу деңгейі: онлайн (default). Синхрондалған дыбыссыз нәтиже.</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>default</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.0024</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>—</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.1152</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/kk/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-2778-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2778-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · бейне құрыңыз</button><button class=\"cg-tab\" id=\"model-code-2778-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2778-panel-1\" aria-selected=\"false\" tabindex=\"-1\">curl · бастапқы тапсырманы оқыңыз</button><button class=\"cg-tab\" id=\"model-code-2778-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2778-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-2778-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2778-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-5-pro-251215&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,&quot;generate_audio&quot;:false}\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-2778-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2778-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-2778-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2778-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\">Ашық id/polling_url бар төл JSON. Жарияланғаннан кейін content.video_url ішінде Ailoot иелігіндегі қолтаңбасы бар URL мекенжайлары болады; жарияланғанға дейін таңдалған шығыс 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\">content.video_url ішіндегі әрбір нақты URL мәнін сақтаңыз; index нақты қайтарылған шығыс нәтижесін көрсетуі керек.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Бастапқы жауапты тексеру қажет болса</h5><p class=\"note-s\">Бастапқы жауапты, тақырыптарды және id мәнін сақтап, сол операцияның күйін мезгіл-мезгіл сұраңыз; нәтижесі белгісіз жасау сұрауын ешқашан қайта жібермеңіз.</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>Ailoot 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>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>Бастапқы жіберу немесе күй мәліметі толық емес; бастапқы ID мәнін сақтап, қайта жібермеңіз.</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-5-pro-251215&amp;route=Ultra&amp;caller=doubao-seedance-1-5-pro-251215&amp;fmt=videos\"><code>doubao-seedance-1-5-pro-251215</code></a></span></p><h4>Әдіс жолдарының балама атаулары</h4><p class=\"note-s\"><code>/v1/videos/generations</code></p><h4>Шақыруға арналған байланысты ID</h4><p class=\"note-s\"><a href=\"#m=doubao-seedance-1-5-pro-251215&amp;route=Ultra&amp;caller=doubao-seedance-1-5-pro-251215&amp;fmt=videos\"><code>doubao-seedance-1-5-pro-251215</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "doubao-seedance-1-5-pro-251215",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "doubao-seedance-1-5-pro-251215",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|doubao-seedance-1-5-pro-251215",
      "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": "Ailoot API кілті жарамсыз.",
                "http_status": 401,
                "type": "authentication_error"
              },
              {
                "condition": "Тапсырма немесе шығыс нәтижесі жоқ не сол пайдаланушыға, API кілтіне немесе топқа тиесілі емес.",
                "http_status": 404,
                "type": "not_found_error"
              },
              {
                "condition": "Бастапқы жіберу немесе күй мәліметі толық емес; бастапқы ID мәнін сақтап, қайта жібермеңіз.",
                "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": "Бастапқы жауапты, тақырыптарды және id мәнін сақтап, сол операцияның күйін мезгіл-мезгіл сұраңыз; нәтижесі белгісіз жасау сұрауын ешқашан қайта жібермеңіз.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              [
                "text"
              ],
              [
                "text",
                "image"
              ]
            ],
            "operation_modes": [
              "text_to_video",
              "image_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": "content.video_url ішіндегі әрбір нақты 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": "Ашық id/polling_url бар төл JSON. Жарияланғаннан кейін content.video_url ішінде Ailoot иелігіндегі қолтаңбасы бар URL мекенжайлары болады; жарияланғанға дейін таңдалған шығыс URL мекенжайлары босатылады."
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-5-pro-251215"
                ],
                "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,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "Seedance 1.5 Pro 480p және 720p қолдайды; 1080p қолданылмайды. Құжатталған әдепкі ажыратымдылық — 720p.",
                "default": "720p",
                "default_known": true,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "Seedance 1.5 Pro үшін құжатталған әдепкі жақтар арақатынасы — adaptive. Тұрақты арақатынас нұсқалары өзгермейді.",
                "default": "adaptive",
                "default_known": true,
                "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": "секунд"
              },
              {
                "availability": "source_interface",
                "conditions": "Тек 1.5 үшін: жасалған бейнеге кірістірілген синхрондалған дыбыс.",
                "default": true,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "generate_audio",
                "required": false,
                "type": "boolean"
              }
            ],
            "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": {
                  "type": "integer"
                },
                "execution_expires_after": {
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "generate_audio": {
                  "type": "boolean"
                },
                "model": {
                  "const": "doubao-seedance-1-5-pro-251215",
                  "type": "string"
                },
                "ratio": {
                  "default": "adaptive",
                  "enum": [
                    "16:9",
                    "4:3",
                    "1:1",
                    "3:4",
                    "9:16",
                    "21:9",
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "default": "720p",
                  "enum": [
                    "480p",
                    "720p"
                  ],
                  "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": [
              "1.5 bounds conflict: primary 1.x 2–12 versus later model-specific 4–12 or -1. No resolved bound for this persisted1.x path.",
              "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 мәндерін сақтаңыз.",
            "Бастапқы тапсырманың күйін мезгіл-мезгіл сұраңыз; succeeded күйінен кейін иелігіңіздегі нақты content.video_url бойынша файлды жүктеп алыңыз."
          ],
          "input": {
            "additional_properties": true,
            "content_type": "application/json",
            "image_constraints": {
              "aspect_ratio_exclusive": [
                0.4,
                2.5
              ],
              "dimensions_px_exclusive": [
                300,
                6000
              ],
              "file_size_mb_exclusive": 30,
              "formats": [
                "jpeg",
                "png",
                "webp",
                "bmp",
                "tiff",
                "gif"
              ],
              "mb_bytes_definition": null
            },
            "material_types": [
              "text",
              "image"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier",
              "generate_audio"
            ],
            "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",
              "image"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video",
            "image_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": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбысы бар нәтиже.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбыссыз нәтиже.",
            "units": [
              {
                "amount": "0.0012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000012",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Өңдеу деңгейі: онлайн (default). Синхрондалған дыбысы бар нәтиже.",
            "units": [
              {
                "amount": "0.0048000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000048",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Өңдеу деңгейі: онлайн (default). Синхрондалған дыбыссыз нәтиже.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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.1152",
                "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.1152",
                "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-5-pro-251215\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}],\"resolution\":\"480p\",\"ratio\":\"1:1\",\"duration\":5,\"service_tier\":\"default\",\"seed\":-1,\"camerafixed\":false,\"watermark\":false,\"execution_expires_after\":172800,\"generate_audio\":false}\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",
          "image"
        ],
        "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": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Offline service tier (flex). Output with synchronized audio.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Offline service tier (flex). Output without synchronized audio.",
            "units": [
              {
                "amount": "0.0012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000012",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Online service tier (default). Output with synchronized audio.",
            "units": [
              {
                "amount": "0.0048000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000048",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Online service tier (default). Output without synchronized audio.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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.1152",
                "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.1152",
                "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-5-pro-251215",
        "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.0024000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_flex_with_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000024",
            "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.0012000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_flex_without_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000012",
            "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.0048000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_online_with_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000048",
            "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.0024000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_online_without_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000024",
            "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.1152",
            "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.1152",
            "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-5-pro-251215",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "37d693735d3e3155d4199f674b784e7ff0a55b0bedd4269475bce04e49c7d3be",
    "input_html_sha256": "5759ea798739b6cf6689a44ab64dbbb06ff8c433474ede599113d917ca553459",
    "private_audit_sha256": "0bcada8ab388d4f04e5ea4c92c331015decb76627c02e335d85c0dd6459445f5",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/kk/doubao-seedance-1-5-pro-251215/",
    "description": "Seedance 1.5 Pro мәтіннен немесе кескіннен бейне жасайды және синхрондалған дауыстарды, әсерлерді, фондық музыканы жасай алады. Дыбысты қосуға не өшіруге болады; құжатталған профиль 4–12 секундтық көріністерді, бейімделмелі кадрлауды және online немесе flex өңдеуін ұсынады.",
    "locale": "kk",
    "md_url": "https://ailoot.ai/models/kk/doubao-seedance-1-5-pro-251215/index.md",
    "title": "ByteDance: Seedance 1.5 Pro — Ailoot",
    "url": "https://ailoot.ai/models/kk/doubao-seedance-1-5-pro-251215/"
  },
  "rawModel": {
    "about": "Seedance 1.5 Pro мәтіннен немесе кескіннен бейне жасайды және дыбысты суретпен бірге генерациялай алады. Нақты селектор — doubao-seedance-1-5-pro-251215. Дыбыс параметрі оны дыбыссыз Seedance 1.0 профильдерінен ерекшелейді: generate_audio=true синхрондалған дыбысты, ал false дыбыссыз бейнені сұрайды. Жаңа тұжырым үшін жазбаша көріністі, ал бастапқы нысан мен композицияны белгілеу үшін кескінді пайдаланыңыз.\n\nКөрінетін әрекет пен дыбысты бір көріністің бөліктері ретінде сипаттаңыз. Нысанды, ортаны, қозғалысты және камераны көрсетіп, көзделген дауыстарды, дыбыстық әсерлерді немесе фондық музыканы түсіндіріңіз. Портрет көрінісінде адам көзін ашып, камера баяу шегінгенде айналада жел болуы мүмкін. Тауар көрінісінде байланыссыз әсерлер тізімін қоспай, дыбысты қақпақтың ашылуы немесе заттың тірек бетке тиюі сияқты көрінетін оқиғамен байланыстырыңыз.\n\nМодель мәтіндік сұрау мен визуалды мазмұннан дауыстарды, әсерлерді және фондық музыканы жасай алады. Нұсқаулық айтылатын диалогті қос тырнақшаға алуды ұсынады. Сөйлеуді сұралған әрекет пен үзілістерге сыятындай қысқа ұстаңыз және бірнеше кейіпкер болса, кім сөйлейтінін ажыратыңыз. Нақты сөздерді, дауыстың қай кейіпкерге тиесілі екенін және суретпен синхрондалуын тексеріңіз. Дыбыс нұсқауы жасалатын орындауды бағыттайды; бұл профильдің құжатталған сұрауында ол бөлек жүктелген дауыс референсі болып саналмайды.\n\nКескіннен бейне жасау мәтінмен бірге image_url элементін пайдаланады. Қолжетімді кескін URL мекенжайын немесе JPEG, PNG, WEBP, BMP, TIFF не GIF пішіміндегі Base64 data URL беріңіз. Құжатталған кескін шектері: 30 MB-тан аз, екі өлшемі қатаң түрде 300 бен 6000 пиксель арасында, енінің биіктігіне қатынасы қатаң түрде 0.4 пен 2.5 арасында. Қажетті кадрлауды және нысанды анық дайындап, сол композициядан басталатын қозғалысты сипаттаңыз. Кескін мысалы референске еру үшін adaptive арақатынасын пайдаланады.\n\nПрофильге арналған ұзақтық нұсқаулығы төрттен он екіге дейінгі бүтін секундтарды немесе сол диапазонда ұзақтықты модель таңдауы үшін -1 мәнін көрсетеді. Әдепкі ұзақтық — бес секунд. Seedance 1.5 Pro әдепкісі — 720p; сақталған профиль кестесі 480p және 720p-ді құжаттайды, ал арнайы жұмыс нұсқаулығы 1.5 Pro үшін 1080p ұсынбайды. Тұрақты арақатынастар: 16:9, 4:3, 1:1, 3:4, 9:16 және 21:9; құжатталған 1.5 әдепкісі — adaptive. Сұралған мәндерді дайын қайтарылған материал деп қабылдамай, нақты клиптің ұзақтығы мен пропорцияларын тексеріңіз.\n\nСұрау екі өңдеу деңгейін ұсынады. service_tier=default online өңдеуін, ал flex көбірек кідіріске шыдайтын жұмыс үшін offline өңдеуін таңдайды. Тапсырма жіберілген соң бұл деңгейді өзгертуге болмайды. Оны жұмыс барысының уақыт талаптарына сай таңдап, сұрау жазбасында сақтаңыз. Дыбыс режимі мен өңдеу деңгейі — бөлек таңдаулар: дыбыссыз клип автоматты түрде offline тапсырмаға айналмайды, ал дыбысты қосу өңдеу деңгейін таңдамайды.\n\nБастапқы мәнді, сутаңбаны және камера нұсқауларын көрініспен үйлестіріңіз. Мәтінге енгізілген параметр командалары бөлек қосымша параметрлерден басым. Камераны бекіту басқаруы референс кескін сценарийінде алынып тасталған және қолданылатын жерде де көріністі толық бекітуге кепілдік бермейді. Кескінге негізделген анимация үшін камераны басқару планды сипаттау қажеттілігін жояды деп ойламай, көзделген қозғалысты тікелей түсіндіріңіз.\n\nПайдалану көлемі бейнетокендермен өлшенеді: шығыс ені × шығыс биіктігі × кадр жиілігі × шығыс ұзақтығы / 1024. Аяқталған тапсырма бұл мөлшерді usage.completion_tokens арқылы хабарлайды. Хабарланған пайдалану мөлшерін дайын клиппен және оның сұралған баптауларымен бірге сақтаңыз. Дыбыстың қосылуы не өшірілуі және online не flex өңдеуі пайдалануға негізделген төлемде бөлек санаттар болып қалады.\n\nЖіберу асинхронды тапсырма идентификаторын қайтарады. Тапсырманы аяқталғанша қадағалап, содан кейін content.video_url арқылы берілген бейнені сақтаңыз. Жасалған файлдың құжатталған сақтау мерзімі — жеті күн. Жарамдылық параметрі жасалған сәттен есептеледі, әдепкісі — 172800 секунд, қабылдайтын мәндері 3600 мен 259200 секунд аралығында; берілген аралық өткенде аяқталмаған тапсырма expired күйіне ауысады. Соңғы клипті, бастапқы кескінді және дәл визуалды-дыбыстық тапсырманы бірге сақтап, толық нәтижедегі әрекетті, сәйкестікті, камера сабақтастығын және дыбыс сәйкестігін тексеріңіз.",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.1152",
            "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.1152",
            "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.5 Pro",
    "formats": [
      "videos"
    ],
    "id": "doubao-seedance-1-5-pro-251215",
    "input": [
      "text",
      "image"
    ],
    "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": "Ailoot API кілті жарамсыз.",
                "http_status": 401,
                "type": "authentication_error"
              },
              {
                "condition": "Тапсырма немесе шығыс нәтижесі жоқ не сол пайдаланушыға, API кілтіне немесе топқа тиесілі емес.",
                "http_status": 404,
                "type": "not_found_error"
              },
              {
                "condition": "Бастапқы жіберу немесе күй мәліметі толық емес; бастапқы ID мәнін сақтап, қайта жібермеңіз.",
                "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": "Бастапқы жауапты, тақырыптарды және id мәнін сақтап, сол операцияның күйін мезгіл-мезгіл сұраңыз; нәтижесі белгісіз жасау сұрауын ешқашан қайта жібермеңіз.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              [
                "text"
              ],
              [
                "text",
                "image"
              ]
            ],
            "operation_modes": [
              "text_to_video",
              "image_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": "content.video_url ішіндегі әрбір нақты 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": "Ашық id/polling_url бар төл JSON. Жарияланғаннан кейін content.video_url ішінде Ailoot иелігіндегі қолтаңбасы бар URL мекенжайлары болады; жарияланғанға дейін таңдалған шығыс URL мекенжайлары босатылады."
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "doubao-seedance-1-5-pro-251215"
                ],
                "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,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "Seedance 1.5 Pro 480p және 720p қолдайды; 1080p қолданылмайды. Құжатталған әдепкі ажыратымдылық — 720p.",
                "default": "720p",
                "default_known": true,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "Seedance 1.5 Pro үшін құжатталған әдепкі жақтар арақатынасы — adaptive. Тұрақты арақатынас нұсқалары өзгермейді.",
                "default": "adaptive",
                "default_known": true,
                "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": "секунд"
              },
              {
                "availability": "source_interface",
                "conditions": "Тек 1.5 үшін: жасалған бейнеге кірістірілген синхрондалған дыбыс.",
                "default": true,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "generate_audio",
                "required": false,
                "type": "boolean"
              }
            ],
            "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": {
                  "type": "integer"
                },
                "execution_expires_after": {
                  "maximum": 259200,
                  "minimum": 3600,
                  "type": "integer"
                },
                "generate_audio": {
                  "type": "boolean"
                },
                "model": {
                  "const": "doubao-seedance-1-5-pro-251215",
                  "type": "string"
                },
                "ratio": {
                  "default": "adaptive",
                  "enum": [
                    "16:9",
                    "4:3",
                    "1:1",
                    "3:4",
                    "9:16",
                    "21:9",
                    "adaptive"
                  ],
                  "type": "string"
                },
                "resolution": {
                  "default": "720p",
                  "enum": [
                    "480p",
                    "720p"
                  ],
                  "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": [
              "1.5 bounds conflict: primary 1.x 2–12 versus later model-specific 4–12 or -1. No resolved bound for this persisted1.x path.",
              "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 мәндерін сақтаңыз.",
            "Бастапқы тапсырманың күйін мезгіл-мезгіл сұраңыз; succeeded күйінен кейін иелігіңіздегі нақты content.video_url бойынша файлды жүктеп алыңыз."
          ],
          "input": {
            "additional_properties": true,
            "content_type": "application/json",
            "image_constraints": {
              "aspect_ratio_exclusive": [
                0.4,
                2.5
              ],
              "dimensions_px_exclusive": [
                300,
                6000
              ],
              "file_size_mb_exclusive": 30,
              "formats": [
                "jpeg",
                "png",
                "webp",
                "bmp",
                "tiff",
                "gif"
              ],
              "mb_bytes_definition": null
            },
            "material_types": [
              "text",
              "image"
            ],
            "optional": [
              "duration",
              "resolution",
              "ratio",
              "service_tier",
              "generate_audio"
            ],
            "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",
              "image"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video",
            "image_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": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбысы бар нәтиже.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Өңдеу деңгейі: офлайн (flex). Синхрондалған дыбыссыз нәтиже.",
            "units": [
              {
                "amount": "0.0012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000012",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Өңдеу деңгейі: онлайн (default). Синхрондалған дыбысы бар нәтиже.",
            "units": [
              {
                "amount": "0.0048000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000048",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Өңдеу деңгейі: онлайн (default). Синхрондалған дыбыссыз нәтиже.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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.1152",
                "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.1152",
                "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-5-pro-251215\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}],\"resolution\":\"480p\",\"ratio\":\"1:1\",\"duration\":5,\"service_tier\":\"default\",\"seed\":-1,\"camerafixed\":false,\"watermark\":false,\"execution_expires_after\":172800,\"generate_audio\":false}\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",
          "image"
        ],
        "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": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Offline service tier (flex). Output with synchronized audio.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "flex"
            },
            "label": "Offline service tier (flex). Output without synchronized audio.",
            "units": [
              {
                "amount": "0.0012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_flex_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000012",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": true,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Online service tier (default). Output with synchronized audio.",
            "units": [
              {
                "amount": "0.0048000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_with_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000048",
                "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"
              }
            ]
          },
          {
            "dimensions": {
              "generate_audio": false,
              "quoted_unit": "per 1,000 video tokens",
              "service_tier": "default"
            },
            "label": "Online service tier (default). Output without synchronized audio.",
            "units": [
              {
                "amount": "0.0024000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_online_without_audio",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.0000024",
                "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.1152",
                "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.1152",
                "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-5-pro-251215",
        "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.0024000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_flex_with_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000024",
            "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.0012000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_flex_without_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000012",
            "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.0048000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_online_with_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000048",
            "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.0024000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_online_without_audio",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.0000024",
            "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.1152",
            "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.1152",
            "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-5-pro-251215",
        "request_model_id": "doubao-seedance-1-5-pro-251215",
        "route_label": "Ultra"
      }
    ],
    "name": "ByteDance: Seedance 1.5 Pro",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.1152,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.1152,
      "varies": false
    },
    "short": "Seedance 1.5 Pro мәтіннен немесе кескіннен бейне жасайды және синхрондалған дауыстарды, әсерлерді, фондық музыканы жасай алады. Дыбысты қосуға не өшіруге болады; құжатталған профиль 4–12 секундтық көріністерді, бейімделмелі кадрлауды және online немесе flex өңдеуін ұсынады."
  },
  "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.5 Pro мәтіннен немесе кескіннен бейне жасайды және синхрондалған дауыстарды, әсерлерді, фондық музыканы жасай алады. Дыбысты қосуға не өшіруге болады; құжатталған профиль 4–12 секундтық көріністерді, бейімделмелі кадрлауды және online немесе flex өңдеуін ұсынады.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "b0de474f1ca27b74e2f7f9f2060ec3f36519bca5a1d8e5086af4e7b947b67f71",
    "renderer_sha256": "def3bb6e69c8ddb72f88ec6540bbe55d0e503790f964d84073ecda781b13bedf"
  },
  "sourceRevision": "9cb26e345d6326c31e1514557a5a5b98b6a1a61768fc34661e13819021dbd548"
}
