{
  "aboutHtml": "<p>Seedance 2.5 жазбаша көріністі және мультимодалды референстерді пайдаланып бейне жасайды. Нақты doubao-seedance-2-5-260628 селекторының өзіндік құжатталған операциясы мен мысалы бар. Ол операция бейне генерациясын, өңдеуін және жалғастыруын сипаттайды; кіріс медиа ретінде кескіндерді, бейнені, аудионы және мәтінді қабылдайды. Референстермен нысанның сыртқы түрін, әрекетті, камера қозғалысын, стильді және дыбысты жеткізіп, солардан қандай нәтиже жасау керектігін түсіндіріңіз.</p><p>Кіріс үйлесімдеріне жеке мәтін, міндетті емес мәтінмен бірге берілген кескіндер немесе бейне, дыбысы бар кескіндер, дыбысы бар бейне және кескіндер, бейне мен аудио бірге кіреді. Аталған үйлесімдер тек аудиодан тұратын сұрауды сипаттамай, аудионы визуалды медиамен байланыстырады. Әр элементті рөліне қарай ұйымдастырыңыз: кескін нысанды немесе визуалды көріністі белгілейді, бейне қозғалысты немесе қолда бар көріністі көрсетеді, ал аудио дыбыс референсін береді. Фон референсі басты кейіпкермен шатастырылмауы үшін сұралған планға қай рөл маңызды екенін көрсетіңіз.</p><p>Нақты 2.5 мысалы — тауар жарнамасының реттілігі. Ол кескінді және бірнеше бейне референсті беріп, бастапқы назар нүктесін, реттелген тауар композицияларын, бөлшектер көрсетілген кадрларды, баяулатылған әрекетті және соңғы бренд композициясын сипаттайды. Сұрау reference_image және reference_video рөлдерін тағайындап, композиция, қозғалыс, камера жұмысы және әсер үшін жеке референстерді пайдаланады. Бұл науқан тұжырымын құруға қолайлы құрылым береді: көрінетін кезеңдерді жоспарлау, әр кезеңге референсті белгілеу және соңғы орналасуды көрсету.</p><p>Жазбаша реттілік не болатынын және қалай түсірілетінін ажырата алады. Алдымен тауармен не болатынын, содан соң план ірілігін, камера траекториясын, темпті және келесі көрініске ауысуды сипаттаңыз. Бір референс тауарды анықтап, екіншісі камера қозғалысын көрсетсе, осы бөлек міндеттерді атаңыз. Бірнеше заты бар көріністе олардың орындарын және өзара әрекеттер ретін түсіндіріңіз. Әр референс бөлшегі өзгеріссіз пайда болады деп ойламай, жасалған нәтижедегі тауардың нақты пішінін, орналасуын және қозғалысын тексеріңіз.</p><p>Өңдеу үшін қолда бар бейнені және орта, әрекет немесе визуалды стиль сияқты түзетілетін элементті көрсетіп, бастапқы көрініспен қандай сабақтастық сақталуға тиіс екенін айтыңыз. Жалғастыру үшін берілген бейнематериалдан көрініс қалай жалғасуға тиіс екенін сипаттаңыз. Жаңа бөлікті ғана емес, түйіскен жерін де тексеріңіз: нысанның сыртқы түрі, қозғалыс бағыты, камера орны және дыбыстың уақыттық сәйкестігі нәтижені бір көрініс ретінде қабылдауға әсер етеді. Өзгерістің бастапқы көрініспен қажетті сабақтастықты сақтайтынын тексеру үшін бастапқы бейне мен дайын түзетілген нұсқаны бірге сақтаңыз.</p><p>Құжатталған 2.5 мультимодалды мысалы generate_audio=true орнатып, 16:9 кадрлауымен он бес секундтық реттілікті сұрайды. Бұл мәндер әмбебап ұзақтық шегін немесе референс материалдар шектеуін емес, сол мысалды сипаттайды. Музыка, әсерлер және көрінетін әрекет арасындағы байланысты қоса, сұралған көріністе дыбыстың қандай болу керектігін айқын сипаттап, нақты аудиовизуалды нәтижені бағалаңыз. Көзделген темп пен орындалуды тексеру үшін дыбыс референсін және жасалған дыбыс жолын бірге тыңдап бағалау керек.</p><p>Ұзақтықты, кадрлауды және ажыратымдылықты осы нақты профиль ұсынатын баптаулардан таңдаңыз. Сұралған конфигурацияны мәтіндік сұраумен бірге сақтап, оны нақты қайтарылған тапсырма өрістерімен салыстырыңыз. Дайын клипті қолданылатын орнына дайындағанда қайтарылған ұзақтықты, ажыратымдылықты және арақатынасты пайдаланыңыз. Кейінгі салыстыру сол таңдалған нұсқаны қолдануы үшін нұсқа жазбасында профильдің дәл идентификаторын сақтаңыз.</p><p>Бейнетокен шығыны былай есептеледі: (кіріс бейне ұзақтығы + шығыс бейне ұзақтығы) × шығыс ені × шығыс биіктігі × шығыс кадр жиілігі / 1024. Кіріс бейнесі бар және жоқ сұраулар бөлек төлем санаттарына жатады. Тапсырма сұрауы usage.completion_tokens және usage.total_tokens мәндерін хабарлайды; осы хабарланған мөлшерлерді дайын клиппен бірге сақтаңыз.</p><p>Генерация асинхронды жүреді. Жіберу идентификаторды қайтарады, ал бапталған тапсырма барысы күйді, сәтті аяқталғаннан кейін content.video_url береді. Дайын клипті бастапқы медиамен және реттілік тапсырмасымен бірге сақтаңыз. Бүкіл нәтижеде барлық жоспарланған кезеңдерді, заттар әрекеттесуін, кейіпкерлердің сыртқы түрін, кадрлауды және дыбыс сәйкестігін тексеріңіз. Түзету үшін нақты ескерілмей қалған бөлшекті атап, бүкіл тапсырманы байланыссыз нұсқаулармен алмастырмай, көріністің сәтті бөліктерін сақтаңыз.</p>",
  "aboutText": "Seedance 2.5 жазбаша көріністі және мультимодалды референстерді пайдаланып бейне жасайды. Нақты doubao-seedance-2-5-260628 селекторының өзіндік құжатталған операциясы мен мысалы бар. Ол операция бейне генерациясын, өңдеуін және жалғастыруын сипаттайды; кіріс медиа ретінде кескіндерді, бейнені, аудионы және мәтінді қабылдайды. Референстермен нысанның сыртқы түрін, әрекетті, камера қозғалысын, стильді және дыбысты жеткізіп, солардан қандай нәтиже жасау керектігін түсіндіріңіз.\n\nКіріс үйлесімдеріне жеке мәтін, міндетті емес мәтінмен бірге берілген кескіндер немесе бейне, дыбысы бар кескіндер, дыбысы бар бейне және кескіндер, бейне мен аудио бірге кіреді. Аталған үйлесімдер тек аудиодан тұратын сұрауды сипаттамай, аудионы визуалды медиамен байланыстырады. Әр элементті рөліне қарай ұйымдастырыңыз: кескін нысанды немесе визуалды көріністі белгілейді, бейне қозғалысты немесе қолда бар көріністі көрсетеді, ал аудио дыбыс референсін береді. Фон референсі басты кейіпкермен шатастырылмауы үшін сұралған планға қай рөл маңызды екенін көрсетіңіз.\n\nНақты 2.5 мысалы — тауар жарнамасының реттілігі. Ол кескінді және бірнеше бейне референсті беріп, бастапқы назар нүктесін, реттелген тауар композицияларын, бөлшектер көрсетілген кадрларды, баяулатылған әрекетті және соңғы бренд композициясын сипаттайды. Сұрау reference_image және reference_video рөлдерін тағайындап, композиция, қозғалыс, камера жұмысы және әсер үшін жеке референстерді пайдаланады. Бұл науқан тұжырымын құруға қолайлы құрылым береді: көрінетін кезеңдерді жоспарлау, әр кезеңге референсті белгілеу және соңғы орналасуды көрсету.\n\nЖазбаша реттілік не болатынын және қалай түсірілетінін ажырата алады. Алдымен тауармен не болатынын, содан соң план ірілігін, камера траекториясын, темпті және келесі көрініске ауысуды сипаттаңыз. Бір референс тауарды анықтап, екіншісі камера қозғалысын көрсетсе, осы бөлек міндеттерді атаңыз. Бірнеше заты бар көріністе олардың орындарын және өзара әрекеттер ретін түсіндіріңіз. Әр референс бөлшегі өзгеріссіз пайда болады деп ойламай, жасалған нәтижедегі тауардың нақты пішінін, орналасуын және қозғалысын тексеріңіз.\n\nӨңдеу үшін қолда бар бейнені және орта, әрекет немесе визуалды стиль сияқты түзетілетін элементті көрсетіп, бастапқы көрініспен қандай сабақтастық сақталуға тиіс екенін айтыңыз. Жалғастыру үшін берілген бейнематериалдан көрініс қалай жалғасуға тиіс екенін сипаттаңыз. Жаңа бөлікті ғана емес, түйіскен жерін де тексеріңіз: нысанның сыртқы түрі, қозғалыс бағыты, камера орны және дыбыстың уақыттық сәйкестігі нәтижені бір көрініс ретінде қабылдауға әсер етеді. Өзгерістің бастапқы көрініспен қажетті сабақтастықты сақтайтынын тексеру үшін бастапқы бейне мен дайын түзетілген нұсқаны бірге сақтаңыз.\n\nҚұжатталған 2.5 мультимодалды мысалы generate_audio=true орнатып, 16:9 кадрлауымен он бес секундтық реттілікті сұрайды. Бұл мәндер әмбебап ұзақтық шегін немесе референс материалдар шектеуін емес, сол мысалды сипаттайды. Музыка, әсерлер және көрінетін әрекет арасындағы байланысты қоса, сұралған көріністе дыбыстың қандай болу керектігін айқын сипаттап, нақты аудиовизуалды нәтижені бағалаңыз. Көзделген темп пен орындалуды тексеру үшін дыбыс референсін және жасалған дыбыс жолын бірге тыңдап бағалау керек.\n\nҰзақтықты, кадрлауды және ажыратымдылықты осы нақты профиль ұсынатын баптаулардан таңдаңыз. Сұралған конфигурацияны мәтіндік сұраумен бірге сақтап, оны нақты қайтарылған тапсырма өрістерімен салыстырыңыз. Дайын клипті қолданылатын орнына дайындағанда қайтарылған ұзақтықты, ажыратымдылықты және арақатынасты пайдаланыңыз. Кейінгі салыстыру сол таңдалған нұсқаны қолдануы үшін нұсқа жазбасында профильдің дәл идентификаторын сақтаңыз.\n\nБейнетокен шығыны былай есептеледі: (кіріс бейне ұзақтығы + шығыс бейне ұзақтығы) × шығыс ені × шығыс биіктігі × шығыс кадр жиілігі / 1024. Кіріс бейнесі бар және жоқ сұраулар бөлек төлем санаттарына жатады. Тапсырма сұрауы usage.completion_tokens және usage.total_tokens мәндерін хабарлайды; осы хабарланған мөлшерлерді дайын клиппен бірге сақтаңыз.\n\nГенерация асинхронды жүреді. Жіберу идентификаторды қайтарады, ал бапталған тапсырма барысы күйді, сәтті аяқталғаннан кейін content.video_url береді. Дайын клипті бастапқы медиамен және реттілік тапсырмасымен бірге сақтаңыз. Бүкіл нәтижеде барлық жоспарланған кезеңдерді, заттар әрекеттесуін, кейіпкерлердің сыртқы түрін, кадрлауды және дыбыс сәйкестігін тексеріңіз. Түзету үшін нақты ескерілмей қалған бөлшекті атап, бүкіл тапсырманы байланыссыз нұсқаулармен алмастырмай, көріністің сәтті бөліктерін сақтаңыз.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "b64237a933f455c510f5348856d74512e683ffb8f8063ee9e13305ad317f2b8d",
    "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 2.5</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Жабу\">×</button></div><div class=\"idline\"><span>ByteDance /</span><code>doubao-seedance-2-5-260628</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-2-5-260628\">Бейне</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 2.5 мәтіннен және кескін, бейне не аудио референстерден бейне жасайды; өңдеу және жалғастыру жұмыс барысы құжатталған. Оның нақты 2.5 мысалы тауар кескінін бірнеше қозғалыс референсімен біріктіріп, үйлескен жарнамалық реттілік үшін жасалатын дыбысты қосады.</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 2.5 жазбаша көріністі және мультимодалды референстерді пайдаланып бейне жасайды. Нақты doubao-seedance-2-5-260628 селекторының өзіндік құжатталған операциясы мен мысалы бар. Ол операция бейне генерациясын, өңдеуін және жалғастыруын сипаттайды; кіріс медиа ретінде кескіндерді, бейнені, аудионы және мәтінді қабылдайды. Референстермен нысанның сыртқы түрін, әрекетті, камера қозғалысын, стильді және дыбысты жеткізіп, солардан қандай нәтиже жасау керектігін түсіндіріңіз.</p><p>Кіріс үйлесімдеріне жеке мәтін, міндетті емес мәтінмен бірге берілген кескіндер немесе бейне, дыбысы бар кескіндер, дыбысы бар бейне және кескіндер, бейне мен аудио бірге кіреді. Аталған үйлесімдер тек аудиодан тұратын сұрауды сипаттамай, аудионы визуалды медиамен байланыстырады. Әр элементті рөліне қарай ұйымдастырыңыз: кескін нысанды немесе визуалды көріністі белгілейді, бейне қозғалысты немесе қолда бар көріністі көрсетеді, ал аудио дыбыс референсін береді. Фон референсі басты кейіпкермен шатастырылмауы үшін сұралған планға қай рөл маңызды екенін көрсетіңіз.</p><p>Нақты 2.5 мысалы — тауар жарнамасының реттілігі. Ол кескінді және бірнеше бейне референсті беріп, бастапқы назар нүктесін, реттелген тауар композицияларын, бөлшектер көрсетілген кадрларды, баяулатылған әрекетті және соңғы бренд композициясын сипаттайды. Сұрау reference_image және reference_video рөлдерін тағайындап, композиция, қозғалыс, камера жұмысы және әсер үшін жеке референстерді пайдаланады. Бұл науқан тұжырымын құруға қолайлы құрылым береді: көрінетін кезеңдерді жоспарлау, әр кезеңге референсті белгілеу және соңғы орналасуды көрсету.</p><p>Жазбаша реттілік не болатынын және қалай түсірілетінін ажырата алады. Алдымен тауармен не болатынын, содан соң план ірілігін, камера траекториясын, темпті және келесі көрініске ауысуды сипаттаңыз. Бір референс тауарды анықтап, екіншісі камера қозғалысын көрсетсе, осы бөлек міндеттерді атаңыз. Бірнеше заты бар көріністе олардың орындарын және өзара әрекеттер ретін түсіндіріңіз. Әр референс бөлшегі өзгеріссіз пайда болады деп ойламай, жасалған нәтижедегі тауардың нақты пішінін, орналасуын және қозғалысын тексеріңіз.</p><p>Өңдеу үшін қолда бар бейнені және орта, әрекет немесе визуалды стиль сияқты түзетілетін элементті көрсетіп, бастапқы көрініспен қандай сабақтастық сақталуға тиіс екенін айтыңыз. Жалғастыру үшін берілген бейнематериалдан көрініс қалай жалғасуға тиіс екенін сипаттаңыз. Жаңа бөлікті ғана емес, түйіскен жерін де тексеріңіз: нысанның сыртқы түрі, қозғалыс бағыты, камера орны және дыбыстың уақыттық сәйкестігі нәтижені бір көрініс ретінде қабылдауға әсер етеді. Өзгерістің бастапқы көрініспен қажетті сабақтастықты сақтайтынын тексеру үшін бастапқы бейне мен дайын түзетілген нұсқаны бірге сақтаңыз.</p><p>Құжатталған 2.5 мультимодалды мысалы generate_audio=true орнатып, 16:9 кадрлауымен он бес секундтық реттілікті сұрайды. Бұл мәндер әмбебап ұзақтық шегін немесе референс материалдар шектеуін емес, сол мысалды сипаттайды. Музыка, әсерлер және көрінетін әрекет арасындағы байланысты қоса, сұралған көріністе дыбыстың қандай болу керектігін айқын сипаттап, нақты аудиовизуалды нәтижені бағалаңыз. Көзделген темп пен орындалуды тексеру үшін дыбыс референсін және жасалған дыбыс жолын бірге тыңдап бағалау керек.</p><p>Ұзақтықты, кадрлауды және ажыратымдылықты осы нақты профиль ұсынатын баптаулардан таңдаңыз. Сұралған конфигурацияны мәтіндік сұраумен бірге сақтап, оны нақты қайтарылған тапсырма өрістерімен салыстырыңыз. Дайын клипті қолданылатын орнына дайындағанда қайтарылған ұзақтықты, ажыратымдылықты және арақатынасты пайдаланыңыз. Кейінгі салыстыру сол таңдалған нұсқаны қолдануы үшін нұсқа жазбасында профильдің дәл идентификаторын сақтаңыз.</p><p>Бейнетокен шығыны былай есептеледі: (кіріс бейне ұзақтығы + шығыс бейне ұзақтығы) × шығыс ені × шығыс биіктігі × шығыс кадр жиілігі / 1024. Кіріс бейнесі бар және жоқ сұраулар бөлек төлем санаттарына жатады. Тапсырма сұрауы usage.completion_tokens және usage.total_tokens мәндерін хабарлайды; осы хабарланған мөлшерлерді дайын клиппен бірге сақтаңыз.</p><p>Генерация асинхронды жүреді. Жіберу идентификаторды қайтарады, ал бапталған тапсырма барысы күйді, сәтті аяқталғаннан кейін content.video_url береді. Дайын клипті бастапқы медиамен және реттілік тапсырмасымен бірге сақтаңыз. Бүкіл нәтижеде барлық жоспарланған кезеңдерді, заттар әрекеттесуін, кейіпкерлердің сыртқы түрін, кадрлауды және дыбыс сәйкестігін тексеріңіз. Түзету үшін нақты ескерілмей қалған бөлшекті атап, бүкіл тапсырманы байланыссыз нұсқаулармен алмастырмай, көріністің сәтті бөліктерін сақтаңыз.</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>, <code>video</code>, <code>audio</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-2-5-260628</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\">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>Шарттар: 2.5 мысалында true орнатылған, бірақ көшірілген таңдағыш сипаттамасында тек 2.0/fast/1.5 тізілген; баптаудың не әдепкі мәннің бұдан кең қолданылуына кепілдік жоқ.</div></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Өріс\" scope=\"row\"><span class=\"card-cell-label\">Өріс</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"Түрі\" data-field-type><span class=\"card-cell-label\">Түрі</span><code>integer</code></td><td data-cell-label=\"Талап\"><span class=\"card-cell-label\">Талап</span>Міндетті емес</td><td data-cell-label=\"Мәндер мен шектеулер\"><span class=\"card-cell-label\">Мәндер мен шектеулер</span><div>Шарттар: 2.5 мысалында тікелей берілген 15 мәні ең көп немесе әдепкі мән емес.</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\">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>Шарттар: Көшірілген сипаттамалардан 2.5 нұсқасына тән әдепкі не санамаланған мәндер тұжырымдалмайды.</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\">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>Шарттар: Бейімделетін режим тек 2.0/fast/1.5 үшін нақты көрсетілген; 2.5 мысалында тек 16:9 берілген.</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\">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\">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\">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\">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>Шарттар: 2.0/fast үшін желіден тыс flex режиміне жол берілмейді; 2.5 үшін қолданылу аясы анықталмаған.</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\">safety_identifier</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></td><td data-cell-label=\"Әдепкі\" data-default=\"unspecified\"><span class=\"card-cell-label\">Әдепкі</span>—</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><p class=\"note-s\"><b></b></p><p class=\"note-s\"><b></b></p><p class=\"note-s\"><b></b></p><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>content, model</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>generate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier</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, video, audio</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>material_combinations</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>text, image, video, image, audio, image, video, video, audio, image, video, audio</td></tr><tr><th data-cell-label=\"Параметр\" scope=\"row\"><span class=\"card-cell-label\">Параметр</span><code>optional_text_with_media</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>reference_media_count_and_size_limits</code></th><td data-cell-label=\"Параметр талаптары\"><span class=\"card-cell-label\">Параметр талаптары</span>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></tr></thead><tbody><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Токендердің базалық тарифтері</th><td data-cell-label=\"Мөлшерлемелер кестесі\"><span class=\"card-cell-label\">Мөлшерлемелер кестесі</span>Негізгі мөлшерлеме</td><td data-cell-label=\"Болжамды мөлшер\"><span class=\"card-cell-label\">Болжамды мөлшер</span>—</td><td data-cell-label=\"Есептеу бірлігі\"><span class=\"card-cell-label\">Есептеу бірлігі</span>—</td><td data-cell-label=\"Төлем\"><span class=\"card-cell-label\">Төлем</span><div><span>Кіріс · Кіріс токендері · Тек салыстыруға арналған бағалау</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Шығыс · Шығыс токендері · Тек салыстыруға арналған бағалау</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшті оқу · Тек салыстыруға арналған бағалау</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшке жазу · Тек салыстыруға арналған бағалау</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div><div><span>Кіріс · Кэшке жазу, 1 сағ · Тек салыстыруға арналған бағалау</span> <b>—</b> <span class=\"price-unit\">/ 1K токен</span></div></td></tr><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Кіріс деректерінде бейне бар.</th><td data-cell-label=\"Мөлшерлемелер кестесі\"><span class=\"card-cell-label\">Мөлшерлемелер кестесі</span>—</td><td data-cell-label=\"Болжамды мөлшер\"><span class=\"card-cell-label\">Болжамды мөлшер</span>—</td><td data-cell-label=\"Есептеу бірлігі\"><span class=\"card-cell-label\">Есептеу бірлігі</span>1K бейне токені үшін</td><td data-cell-label=\"Төлем\"><span class=\"card-cell-label\">Төлем</span><div><span>Шығыс · Тек салыстыруға арналған бағалау</span> <b>$0.012</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>1K бейне токені үшін</td><td data-cell-label=\"Төлем\"><span class=\"card-cell-label\">Төлем</span><div><span>Шығыс · Тек салыстыруға арналған бағалау</span> <b>$0.02</b> <span class=\"price-unit\">1K бейне токені үшін</span></div></td></tr><tr><th data-cell-label=\"Баптау\" scope=\"row\"><span class=\"card-cell-label\">Баптау</span>Генерацияның болжамды құны</th><td data-cell-label=\"Мөлшерлемелер кестесі\"><span class=\"card-cell-label\">Мөлшерлемелер кестесі</span>—</td><td data-cell-label=\"Болжамды мөлшер\"><span class=\"card-cell-label\">Болжамды мөлшер</span>бір генерацияға арналған болжам</td><td data-cell-label=\"Есептеу бірлігі\"><span class=\"card-cell-label\">Есептеу бірлігі</span>—</td><td data-cell-label=\"Төлем\"><span class=\"card-cell-label\">Төлем</span><div><span>Шығыс · Генерацияның болжамды құны · Тек салыстыруға арналған бағалау</span> <b>$0.822402</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-2781-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2781-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · бейне құрыңыз</button><button class=\"cg-tab\" id=\"model-code-2781-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2781-panel-1\" aria-selected=\"false\" tabindex=\"-1\">curl · бастапқы тапсырманы оқыңыз</button><button class=\"cg-tab\" id=\"model-code-2781-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2781-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-2781-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2781-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-2-5-260628&quot;,&quot;content&quot;:[{&quot;type&quot;:&quot;text&quot;,&quot;text&quot;:&quot;女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动&quot;}]}\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-2781-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2781-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-2781-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2781-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-2-5-260628&amp;route=Ultra&amp;caller=doubao-seedance-2-5-260628&amp;fmt=videos\"><code>doubao-seedance-2-5-260628</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-2-5-260628&amp;route=Ultra&amp;caller=doubao-seedance-2-5-260628&amp;fmt=videos\"><code>doubao-seedance-2-5-260628</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "doubao-seedance-2-5-260628",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "doubao-seedance-2-5-260628",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|doubao-seedance-2-5-260628",
      "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"
              ],
              [
                "image"
              ],
              [
                "video"
              ],
              [
                "image",
                "audio"
              ],
              [
                "image",
                "video"
              ],
              [
                "video",
                "audio"
              ],
              [
                "image",
                "video",
                "audio"
              ]
            ],
            "operation_modes": [
              "text_to_video",
              "image_to_video",
              "multimodal_reference",
              "video_edit_via_content",
              "video_extend_via_content"
            ],
            "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-2-5-260628"
                ],
                "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": "2.5 мысалында true орнатылған, бірақ көшірілген таңдағыш сипаттамасында тек 2.0/fast/1.5 тізілген; баптаудың не әдепкі мәннің бұдан кең қолданылуына кепілдік жоқ.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "generate_audio",
                "required": false,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "conditions": "2.5 мысалында тікелей берілген 15 мәні ең көп немесе әдепкі мән емес.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "Көшірілген сипаттамалардан 2.5 нұсқасына тән әдепкі не санамаланған мәндер тұжырымдалмайды.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "Бейімделетін режим тек 2.0/fast/1.5 үшін нақты көрсетілген; 2.5 мысалында тек 16:9 берілген.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "watermark",
                "required": false,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": -1,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": 172800,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": false,
                "type": "integer",
                "unit": "секунд"
              },
              {
                "availability": "source_interface",
                "conditions": "2.0/fast үшін желіден тыс flex режиміне жол берілмейді; 2.5 үшін қолданылу аясы анықталмаған.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 64,
                "name": "safety_identifier",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact model ID and documented Ailoot video interface.",
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "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-2-5-260628",
                  "type": "string"
                },
                "ratio": {
                  "type": "string"
                },
                "resolution": {
                  "type": "string"
                },
                "safety_identifier": {
                  "maxLength": 64,
                  "type": "string"
                },
                "seed": {
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "type": "string"
                },
                "watermark": {
                  "type": "boolean"
                }
              },
              "required": [
                "content",
                "model"
              ],
              "type": "object"
            },
            "source_ambiguities": [
              "Shared content.items.required demands image_url+role even for published text nodes; intended combinations/examples and actual outer-array validation remain distinct.",
              "return_last_frame and callback_url exist upstream but current output ownership selects content.video_url only. No owned last-frame/callback contract is asserted.",
              "2.5 duration/resolution/default/adaptive/service-tier scopes are not explicitly enumerated; no inherited 2.0 limits.",
              "2.5 generate_audio example = true conflicts with copied support-selector prose.",
              "2.5 example1 is a JSON string with trailing comma; not copied as runnable JSON.",
              "2.5 camera_fixed/frames scope unresolved; draft/tools descriptions name other models. No uncertain control added."
            ],
            "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",
            "material_combinations": [
              [
                "text"
              ],
              [
                "image"
              ],
              [
                "video"
              ],
              [
                "image",
                "audio"
              ],
              [
                "image",
                "video"
              ],
              [
                "video",
                "audio"
              ],
              [
                "image",
                "video",
                "audio"
              ]
            ],
            "material_types": [
              "text",
              "image",
              "video",
              "audio"
            ],
            "optional": [
              "generate_audio",
              "duration",
              "resolution",
              "ratio",
              "watermark",
              "seed",
              "execution_expires_after",
              "service_tier",
              "safety_identifier"
            ],
            "optional_text_with_media": true,
            "reference_media_count_and_size_limits": null,
            "required": [
              "content",
              "model"
            ],
            "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",
              "video",
              "audio"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video",
            "image_to_video",
            "multimodal_reference",
            "video_edit_via_content",
            "video_extend_via_content"
          ],
          "output": {
            "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
            "all_results": "Retain every actual URL in content.video_url; index must identify a real returned output.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "polling_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string when supplied"
              },
              {
                "description": null,
                "name": "content.video_url",
                "type": "string|string[]"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object when supplied"
              }
            ],
            "format": null,
            "maximum_outputs": null,
            "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
            "result": "Native JSON with public id/polling_url. After publication content.video_url contains Ailoot-owned signed URL(s); before publication selected output URLs are blanked."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "present"
            },
            "label": "Кіріс деректерінде бейне бар.",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_with_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000012",
                "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": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "absent"
            },
            "label": "Кіріс деректерінде бейне жоқ.",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_without_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.00002",
                "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.822402",
                "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.822402",
                "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-2-5-260628\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}]}\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",
          "video",
          "audio"
        ],
        "label": "Бейне",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "present"
            },
            "label": "Input contains video.",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_with_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000012",
                "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": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "absent"
            },
            "label": "Input contains no video.",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_without_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.00002",
                "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.822402",
                "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.822402",
                "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-2-5-260628",
        "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.012000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_with_video_input",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.000012",
            "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.02000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_without_video_input",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.00002",
            "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.822402",
            "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.822402",
            "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-2-5-260628",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "9bfaa50a06c54a2883ff8381529b7a2a3e40babffbbaa1fdf9dbe14ce51d7f32",
    "input_html_sha256": "e50db86d103a2bff6aa768ceb77c0a1958d5306fb3f69eb1f503b430914efe36",
    "private_audit_sha256": "385bb33219360184067dc776988d26476218650808d5522c6b9b26b3cb4fe50c",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/kk/doubao-seedance-2-5-260628/",
    "description": "Seedance 2.5 мәтіннен және кескін, бейне не аудио референстерден бейне жасайды; өңдеу және жалғастыру жұмыс барысы құжатталған. Оның нақты 2.5 мысалы тауар кескінін бірнеше қозғалыс референсімен біріктіріп, үйлескен жарнамалық реттілік үшін жасалатын дыбысты қосады.",
    "locale": "kk",
    "md_url": "https://ailoot.ai/models/kk/doubao-seedance-2-5-260628/index.md",
    "title": "ByteDance: Seedance 2.5 — Ailoot",
    "url": "https://ailoot.ai/models/kk/doubao-seedance-2-5-260628/"
  },
  "rawModel": {
    "about": "Seedance 2.5 жазбаша көріністі және мультимодалды референстерді пайдаланып бейне жасайды. Нақты doubao-seedance-2-5-260628 селекторының өзіндік құжатталған операциясы мен мысалы бар. Ол операция бейне генерациясын, өңдеуін және жалғастыруын сипаттайды; кіріс медиа ретінде кескіндерді, бейнені, аудионы және мәтінді қабылдайды. Референстермен нысанның сыртқы түрін, әрекетті, камера қозғалысын, стильді және дыбысты жеткізіп, солардан қандай нәтиже жасау керектігін түсіндіріңіз.\n\nКіріс үйлесімдеріне жеке мәтін, міндетті емес мәтінмен бірге берілген кескіндер немесе бейне, дыбысы бар кескіндер, дыбысы бар бейне және кескіндер, бейне мен аудио бірге кіреді. Аталған үйлесімдер тек аудиодан тұратын сұрауды сипаттамай, аудионы визуалды медиамен байланыстырады. Әр элементті рөліне қарай ұйымдастырыңыз: кескін нысанды немесе визуалды көріністі белгілейді, бейне қозғалысты немесе қолда бар көріністі көрсетеді, ал аудио дыбыс референсін береді. Фон референсі басты кейіпкермен шатастырылмауы үшін сұралған планға қай рөл маңызды екенін көрсетіңіз.\n\nНақты 2.5 мысалы — тауар жарнамасының реттілігі. Ол кескінді және бірнеше бейне референсті беріп, бастапқы назар нүктесін, реттелген тауар композицияларын, бөлшектер көрсетілген кадрларды, баяулатылған әрекетті және соңғы бренд композициясын сипаттайды. Сұрау reference_image және reference_video рөлдерін тағайындап, композиция, қозғалыс, камера жұмысы және әсер үшін жеке референстерді пайдаланады. Бұл науқан тұжырымын құруға қолайлы құрылым береді: көрінетін кезеңдерді жоспарлау, әр кезеңге референсті белгілеу және соңғы орналасуды көрсету.\n\nЖазбаша реттілік не болатынын және қалай түсірілетінін ажырата алады. Алдымен тауармен не болатынын, содан соң план ірілігін, камера траекториясын, темпті және келесі көрініске ауысуды сипаттаңыз. Бір референс тауарды анықтап, екіншісі камера қозғалысын көрсетсе, осы бөлек міндеттерді атаңыз. Бірнеше заты бар көріністе олардың орындарын және өзара әрекеттер ретін түсіндіріңіз. Әр референс бөлшегі өзгеріссіз пайда болады деп ойламай, жасалған нәтижедегі тауардың нақты пішінін, орналасуын және қозғалысын тексеріңіз.\n\nӨңдеу үшін қолда бар бейнені және орта, әрекет немесе визуалды стиль сияқты түзетілетін элементті көрсетіп, бастапқы көрініспен қандай сабақтастық сақталуға тиіс екенін айтыңыз. Жалғастыру үшін берілген бейнематериалдан көрініс қалай жалғасуға тиіс екенін сипаттаңыз. Жаңа бөлікті ғана емес, түйіскен жерін де тексеріңіз: нысанның сыртқы түрі, қозғалыс бағыты, камера орны және дыбыстың уақыттық сәйкестігі нәтижені бір көрініс ретінде қабылдауға әсер етеді. Өзгерістің бастапқы көрініспен қажетті сабақтастықты сақтайтынын тексеру үшін бастапқы бейне мен дайын түзетілген нұсқаны бірге сақтаңыз.\n\nҚұжатталған 2.5 мультимодалды мысалы generate_audio=true орнатып, 16:9 кадрлауымен он бес секундтық реттілікті сұрайды. Бұл мәндер әмбебап ұзақтық шегін немесе референс материалдар шектеуін емес, сол мысалды сипаттайды. Музыка, әсерлер және көрінетін әрекет арасындағы байланысты қоса, сұралған көріністе дыбыстың қандай болу керектігін айқын сипаттап, нақты аудиовизуалды нәтижені бағалаңыз. Көзделген темп пен орындалуды тексеру үшін дыбыс референсін және жасалған дыбыс жолын бірге тыңдап бағалау керек.\n\nҰзақтықты, кадрлауды және ажыратымдылықты осы нақты профиль ұсынатын баптаулардан таңдаңыз. Сұралған конфигурацияны мәтіндік сұраумен бірге сақтап, оны нақты қайтарылған тапсырма өрістерімен салыстырыңыз. Дайын клипті қолданылатын орнына дайындағанда қайтарылған ұзақтықты, ажыратымдылықты және арақатынасты пайдаланыңыз. Кейінгі салыстыру сол таңдалған нұсқаны қолдануы үшін нұсқа жазбасында профильдің дәл идентификаторын сақтаңыз.\n\nБейнетокен шығыны былай есептеледі: (кіріс бейне ұзақтығы + шығыс бейне ұзақтығы) × шығыс ені × шығыс биіктігі × шығыс кадр жиілігі / 1024. Кіріс бейнесі бар және жоқ сұраулар бөлек төлем санаттарына жатады. Тапсырма сұрауы usage.completion_tokens және usage.total_tokens мәндерін хабарлайды; осы хабарланған мөлшерлерді дайын клиппен бірге сақтаңыз.\n\nГенерация асинхронды жүреді. Жіберу идентификаторды қайтарады, ал бапталған тапсырма барысы күйді, сәтті аяқталғаннан кейін content.video_url береді. Дайын клипті бастапқы медиамен және реттілік тапсырмасымен бірге сақтаңыз. Бүкіл нәтижеде барлық жоспарланған кезеңдерді, заттар әрекеттесуін, кейіпкерлердің сыртқы түрін, кадрлауды және дыбыс сәйкестігін тексеріңіз. Түзету үшін нақты ескерілмей қалған бөлшекті атап, бүкіл тапсырманы байланыссыз нұсқаулармен алмастырмай, көріністің сәтті бөліктерін сақтаңыз.",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text",
        "image",
        "video",
        "audio"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.822402",
            "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.822402",
            "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 2.5",
    "formats": [
      "videos"
    ],
    "id": "doubao-seedance-2-5-260628",
    "input": [
      "text",
      "image",
      "video",
      "audio"
    ],
    "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"
              ],
              [
                "image"
              ],
              [
                "video"
              ],
              [
                "image",
                "audio"
              ],
              [
                "image",
                "video"
              ],
              [
                "video",
                "audio"
              ],
              [
                "image",
                "video",
                "audio"
              ]
            ],
            "operation_modes": [
              "text_to_video",
              "image_to_video",
              "multimodal_reference",
              "video_edit_via_content",
              "video_extend_via_content"
            ],
            "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-2-5-260628"
                ],
                "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": "2.5 мысалында true орнатылған, бірақ көшірілген таңдағыш сипаттамасында тек 2.0/fast/1.5 тізілген; баптаудың не әдепкі мәннің бұдан кең қолданылуына кепілдік жоқ.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "generate_audio",
                "required": false,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "conditions": "2.5 мысалында тікелей берілген 15 мәні ең көп немесе әдепкі мән емес.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "duration",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "conditions": "Көшірілген сипаттамалардан 2.5 нұсқасына тән әдепкі не санамаланған мәндер тұжырымдалмайды.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "resolution",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "Бейімделетін режим тек 2.0/fast/1.5 үшін нақты көрсетілген; 2.5 мысалында тек 16:9 берілген.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "ratio",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": false,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "name": "watermark",
                "required": false,
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "default": -1,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 4294967295,
                "minimum": -1,
                "name": "seed",
                "required": false,
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": 172800,
                "default_known": true,
                "enum": null,
                "enum_known": false,
                "maximum": 259200,
                "minimum": 3600,
                "name": "execution_expires_after",
                "required": false,
                "type": "integer",
                "unit": "секунд"
              },
              {
                "availability": "source_interface",
                "conditions": "2.0/fast үшін желіден тыс flex режиміне жол берілмейді; 2.5 үшін қолданылу аясы анықталмаған.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "service_tier",
                "required": false,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 64,
                "name": "safety_identifier",
                "required": false,
                "type": "string"
              }
            ],
            "profile_binding": "Exact model ID and documented Ailoot video interface.",
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "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-2-5-260628",
                  "type": "string"
                },
                "ratio": {
                  "type": "string"
                },
                "resolution": {
                  "type": "string"
                },
                "safety_identifier": {
                  "maxLength": 64,
                  "type": "string"
                },
                "seed": {
                  "maximum": 4294967295,
                  "minimum": -1,
                  "type": "integer"
                },
                "service_tier": {
                  "type": "string"
                },
                "watermark": {
                  "type": "boolean"
                }
              },
              "required": [
                "content",
                "model"
              ],
              "type": "object"
            },
            "source_ambiguities": [
              "Shared content.items.required demands image_url+role even for published text nodes; intended combinations/examples and actual outer-array validation remain distinct.",
              "return_last_frame and callback_url exist upstream but current output ownership selects content.video_url only. No owned last-frame/callback contract is asserted.",
              "2.5 duration/resolution/default/adaptive/service-tier scopes are not explicitly enumerated; no inherited 2.0 limits.",
              "2.5 generate_audio example = true conflicts with copied support-selector prose.",
              "2.5 example1 is a JSON string with trailing comma; not copied as runnable JSON.",
              "2.5 camera_fixed/frames scope unresolved; draft/tools descriptions name other models. No uncertain control added."
            ],
            "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",
            "material_combinations": [
              [
                "text"
              ],
              [
                "image"
              ],
              [
                "video"
              ],
              [
                "image",
                "audio"
              ],
              [
                "image",
                "video"
              ],
              [
                "video",
                "audio"
              ],
              [
                "image",
                "video",
                "audio"
              ]
            ],
            "material_types": [
              "text",
              "image",
              "video",
              "audio"
            ],
            "optional": [
              "generate_audio",
              "duration",
              "resolution",
              "ratio",
              "watermark",
              "seed",
              "execution_expires_after",
              "service_tier",
              "safety_identifier"
            ],
            "optional_text_with_media": true,
            "reference_media_count_and_size_limits": null,
            "required": [
              "content",
              "model"
            ],
            "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",
              "video",
              "audio"
            ]
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "operation_modes": [
            "text_to_video",
            "image_to_video",
            "multimodal_reference",
            "video_edit_via_content",
            "video_extend_via_content"
          ],
          "output": {
            "additional_media_boundary": "Only content.video_url is selected for ownership. No owned last-frame/callback result flow is established.",
            "all_results": "Retain every actual URL in content.video_url; index must identify a real returned output.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "description": null,
                "name": "polling_url",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string when supplied"
              },
              {
                "description": null,
                "name": "content.video_url",
                "type": "string|string[]"
              },
              {
                "description": null,
                "name": "usage",
                "type": "object when supplied"
              }
            ],
            "format": null,
            "maximum_outputs": null,
            "ownership": "Configured video outputs are copied, reopened and SHA256/length/positive-duration checked before publication.",
            "result": "Native JSON with public id/polling_url. After publication content.video_url contains Ailoot-owned signed URL(s); before publication selected output URLs are blanked."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "present"
            },
            "label": "Кіріс деректерінде бейне бар.",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_with_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000012",
                "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": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "absent"
            },
            "label": "Кіріс деректерінде бейне жоқ.",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_without_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.00002",
                "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.822402",
                "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.822402",
                "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-2-5-260628\",\"content\":[{\"type\":\"text\",\"text\":\"女孩抱着狐狸，女孩睁开眼，温柔地看向镜头，狐狸友善地抱着，镜头缓缓拉出，女孩的头发被风吹动\"}]}\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",
          "video",
          "audio"
        ],
        "label": "Бейне",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "present"
            },
            "label": "Input contains video.",
            "units": [
              {
                "amount": "0.012000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_with_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.000012",
                "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": {
              "quoted_unit": "per 1,000 video tokens",
              "video_input": "absent"
            },
            "label": "Input contains no video.",
            "units": [
              {
                "amount": "0.02000",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_output_token_without_video_input",
                "label": "per 1,000 video tokens",
                "native_amount_usd_per_unit": "0.00002",
                "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.822402",
                "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.822402",
                "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-2-5-260628",
        "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.012000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_with_video_input",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.000012",
            "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.02000",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_output_token_without_video_input",
            "label": "per 1,000 video tokens",
            "native_amount_usd_per_unit": "0.00002",
            "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.822402",
            "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.822402",
            "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-2-5-260628",
        "request_model_id": "doubao-seedance-2-5-260628",
        "route_label": "Ultra"
      }
    ],
    "name": "ByteDance: Seedance 2.5",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.822402,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.822402,
      "varies": false
    },
    "short": "Seedance 2.5 мәтіннен және кескін, бейне не аудио референстерден бейне жасайды; өңдеу және жалғастыру жұмыс барысы құжатталған. Оның нақты 2.5 мысалы тауар кескінін бірнеше қозғалыс референсімен біріктіріп, үйлескен жарнамалық реттілік үшін жасалатын дыбысты қосады."
  },
  "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 2.5 мәтіннен және кескін, бейне не аудио референстерден бейне жасайды; өңдеу және жалғастыру жұмыс барысы құжатталған. Оның нақты 2.5 мысалы тауар кескінін бірнеше қозғалыс референсімен біріктіріп, үйлескен жарнамалық реттілік үшін жасалатын дыбысты қосады.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "0e2b93cf0ff4d3ff26556a905cdbd9cd43f3568fc057ef17336b72ff88226535",
    "renderer_sha256": "def3bb6e69c8ddb72f88ec6540bbe55d0e503790f964d84073ecda781b13bedf"
  },
  "sourceRevision": "4f9859ca4fce307c6cd7a8c4fb9e17e1e7265b5890ed40234542e6e523dbf40a"
}
