{
  "aboutHtml": "<p>Seedance 2.0 Mini — ByteDance ning Seedance 2.0 audiovizual oilasidagi alohida nomlangan model. Ishlab chiqaruvchi matndan video, birinchi kadr hamda birinchi va oxirgi kadr orqali rasmdan video, multimodal namunali yaratish, video tahrirlash va uzaytirishni hujjatlashtiradi. Tovush tasvir bilan birga yaratilishi mumkin. Yaratish rejimini mavjud materialga qarab tanlang: yozma topshiriq, qat’iy boshlang‘ich rasm, ikki chegara kadri yoki tahrir yoxud davom kerak bo‘lgan klip.</p><p>Mini o‘z chiqish profiliga ega. Ishlab chiqaruvchi 8-bit rangli, soniyasiga 24 kadrli va MP4 chiqishli 480p hamda 720p videoni sanaydi. Qo‘llab-quvvatlanadigan tomonlar nisbati 21:9, 16:9, 4:3, 1:1, 3:4 va 9:16; hujjatlashtirilgan yaratish davomiyligi 4–15 soniya. Ishlab chiqaruvchining davomiylik boshqaruvi shu oraliqda avtomatik tanlashga ham ruxsat beradi. To‘liq Seedance 2.0 modelining 1080p va 4K variantlari alohida; ular Mini sozlamalari emas. Oila imkoniyatlari jadvali oxirgi yaratilgan kadrni qaytarishni sanaydi, Draft rejimi esa qo‘llab-quvvatlanmaydi.</p><p>Omni reference berilgan materialdan tanlangan ma’lumot bilan yangi sahna yaratadi. Rasm obyekt ko‘rinishi, kompozitsiya yoki vizual ishlovni belgilashi mumkin. Video harakat, kamera yurishi yoki effektni, audio namuna esa ovoz tembri, kuy yoki aytiladigan mazmunni belgilashi mumkin. Har bir namunaning barcha xususiyatlarini ko‘chirishni so‘ramay, undan nimani olish kerakligini modelga ayting. Masalan, shakl va rang uchun mahsulot fotosi, yaqinlashish uchun qisqa kamera harakati klipi va muhit uchun tovush namunasidan foydalaning.</p><p>Oila jarayoni to‘qqiztagacha namuna rasm, uchta video klip va uchta audio klipga ruxsat beradi. Video namunalari har biri 2–15 soniya, jami esa 15 soniyadan oshmaydi; audio namunalarida ham har bir klip va umumiy davomiylik chegaralari shu. Faqat audio hamda vizual namunasiz matn va audio qo‘llab-quvvatlanadigan namuna birikmalari emas. Faqat matndan yaratish alohida qo‘llab-quvvatlanadigan rejim. Ketma-ketlikda materiallarni kerakli tartibda bering va har bir media turidagi tartib asosida ularni izchil Image 1, Video 1 yoki Audio 1 deb atang. Yozma ko‘rsatmada raqamlangan namuna o‘rniga material identifikatorini qo‘ymang.</p><p>Birinchi kadr rasmi rasmga asoslangan kadrning boshlanishini belgilaydi. Birinchi va oxirgi kadr rejimi har ikki chegarani belgilaydi. Aynan shu chegara rasmlari muhim bo‘lsa, omni-reference ko‘rsatmasida namunalarni boshlanish va yakun deb tasvirlash o‘rniga maxsus rejimni tanlang. Ikkinchisi ko‘rsatma orqali yo‘naltirilgan ta’sir bo‘lib, qat’iy chegara kadri tanloviga teng emas. Rasmlarni chiqish kompozitsiyasiga mos tayyorlang va boshlang‘ich hamda oxirgi holatlarni bog‘lovchi harakatni ayting.</p><p>Video tahrirlash mavjud klipni faqat ilhom sifatida ishlatmay, uning o‘zini o‘zgartiradi. Tahrirlanadigan video, o‘zgartiriladigan buyum yoki soha, uning paydo bo‘lish vaqti va joyi hamda saqlanadigan detallarni belgilang. Foydali topshiriq: “Video 1 da krujkani Image 1 da ko‘rsatilgan idish bilan almashtiring; qo‘l harakati, kadr tuzilishi, yorug‘lik va stol joylashuvini saqlang.” Olib tashlashda keraksiz buyum va qolishi kerak bo‘lgan atrof elementlarini nomlang. Yaratuvchi tahrir yoki uzaytirishda nishondagi videoni to‘g‘ridan-to‘g‘ri atashni maslahat beradi; uni namuna deb ifodalash yangi sahna yaratish so‘rovini anglatishi mumkin.</p><p>Video uzaytirish mavjud klipdan oldin yoki keyin voqealar qo‘shadi. Davom yo‘nalishini va keyin yoki oldin nima sodir bo‘lishini tasvirlang. Hujjatlashtirilgan jarayon ikki yoki uch klipni yaratilgan o‘tishlar bilan ham bog‘laydi; uch kirish videosi birgalikda baribir 15 soniyalik namuna budjetiga sig‘adi. Qo‘llanma asosan asl klipning chegara lavhasini o‘z ichiga olgan davomni asl mazmunni aniq saqlash so‘rovidan farqlaydi. Natija tarkibini ayting: faqat davom yoki berilgan klip va yangi harakatni o‘z ichiga olgan sahna.</p><p>Aniq rejissyorlik uchun barqaror sahna tavsifini voqealar ketma-ketligidan ajrating. Har bir obyektni ikki yoki uch farqlovchi vizual xususiyat va izchil belgi bilan ta’riflang. Keyin harakatlar, joy, yorug‘lik, kamera harakati, vizual uslub va shartlarni tasvirlang. Dialogda har bir gapni so‘zlovchi va tegishli harakat bilan bog‘lang. Aniq vaqt belgilarini ishonchli boshqaruv deb qabul qilmay, tartiblangan kadr belgilarini ishlating: yaratuvchi aniq vaqt beqaror bo‘lishi mumkinligini qayd etadi. Bosqichlangan mahsulot topshirig‘i: “Image 1 Mahsulot A ni belgilaydi. Kadr 1: peshtaxtadagi Mahsulot A ga sekin yaqinlashing. Kadr 2: qo‘l uni yorug‘likka buradi. Kadr 3: old yorliqda to‘xtang. Yumshoq xona shovqini; bosma yozuvni saqlang.”</p><p>Namunalarni hujjatlashtirilgan oila kirish qoidalariga tayyorlang. Qo‘llab-quvvatlanadigan rasm formatlari JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC va HEIF; har bir rasm 30 MB dan kichik. Qo‘llanma rasm eni va bo‘yini qat’iy 300 bilan 6,000 piksel orasida, tomonlar nisbatini esa qat’iy 0.4 bilan 2.5 orasida belgilaydi. Video namunalari H.264 yoki H.265 video va AAC yoki MP3 audio bilan MP4 yoki MOV ishlatadi; har biri ko‘pi bilan 200 MB va soniyasiga 24–60 kadr. Eni va bo‘yi 300–6,000 piksel, tomonlar nisbati 0.4–2.5, umumiy piksel soni 407,696–8,295,044. Audio namunalari WAV yoki MP3 va har biri ko‘pi bilan 15 MB. Bular muayyan ilovaning yuklash boshqaruvlaridan alohida, ishlab chiqaruvchining kirishni tayyorlash spetsifikatsiyalaridir.</p><p>Yaratuvchining portret jarayoni haqiqiy inson yuzlari bor rasm yoki videolar uchun maxsus tayyorgarlik talab qiladi: namunani to‘g‘ridan-to‘g‘ri yuklash standart qo‘llab-quvvatlanadigan yo‘l emas. U ishonchli model chiqishlari, tayyor raqamli qahramonlar va ruxsatli haqiqiy shaxs materiali jarayonini alohida yechimlar sifatida hujjatlashtiradi. Ovoz mosligi, talaffuz va klip chegarasidagi tovush ham tekshirilishi kerak. Ko‘rsatma qo‘llanmasi kerakli ovoz xususiyatlarini tasvirlash va dialog uslubini audio namunaga yaqin tutishni tavsiya qiladi. Yakuniy artefaktni obyekt izchilligi, aynan aytilgan so‘zlar, harakat vaqti, kadr o‘tishlari va yakuniy audio bo‘yicha tekshiring; topshiriqdan farq qilgan aniq elementni tuzating.</p>",
  "aboutText": "Seedance 2.0 Mini — ByteDance ning Seedance 2.0 audiovizual oilasidagi alohida nomlangan model. Ishlab chiqaruvchi matndan video, birinchi kadr hamda birinchi va oxirgi kadr orqali rasmdan video, multimodal namunali yaratish, video tahrirlash va uzaytirishni hujjatlashtiradi. Tovush tasvir bilan birga yaratilishi mumkin. Yaratish rejimini mavjud materialga qarab tanlang: yozma topshiriq, qat’iy boshlang‘ich rasm, ikki chegara kadri yoki tahrir yoxud davom kerak bo‘lgan klip.\n\nMini o‘z chiqish profiliga ega. Ishlab chiqaruvchi 8-bit rangli, soniyasiga 24 kadrli va MP4 chiqishli 480p hamda 720p videoni sanaydi. Qo‘llab-quvvatlanadigan tomonlar nisbati 21:9, 16:9, 4:3, 1:1, 3:4 va 9:16; hujjatlashtirilgan yaratish davomiyligi 4–15 soniya. Ishlab chiqaruvchining davomiylik boshqaruvi shu oraliqda avtomatik tanlashga ham ruxsat beradi. To‘liq Seedance 2.0 modelining 1080p va 4K variantlari alohida; ular Mini sozlamalari emas. Oila imkoniyatlari jadvali oxirgi yaratilgan kadrni qaytarishni sanaydi, Draft rejimi esa qo‘llab-quvvatlanmaydi.\n\nOmni reference berilgan materialdan tanlangan ma’lumot bilan yangi sahna yaratadi. Rasm obyekt ko‘rinishi, kompozitsiya yoki vizual ishlovni belgilashi mumkin. Video harakat, kamera yurishi yoki effektni, audio namuna esa ovoz tembri, kuy yoki aytiladigan mazmunni belgilashi mumkin. Har bir namunaning barcha xususiyatlarini ko‘chirishni so‘ramay, undan nimani olish kerakligini modelga ayting. Masalan, shakl va rang uchun mahsulot fotosi, yaqinlashish uchun qisqa kamera harakati klipi va muhit uchun tovush namunasidan foydalaning.\n\nOila jarayoni to‘qqiztagacha namuna rasm, uchta video klip va uchta audio klipga ruxsat beradi. Video namunalari har biri 2–15 soniya, jami esa 15 soniyadan oshmaydi; audio namunalarida ham har bir klip va umumiy davomiylik chegaralari shu. Faqat audio hamda vizual namunasiz matn va audio qo‘llab-quvvatlanadigan namuna birikmalari emas. Faqat matndan yaratish alohida qo‘llab-quvvatlanadigan rejim. Ketma-ketlikda materiallarni kerakli tartibda bering va har bir media turidagi tartib asosida ularni izchil Image 1, Video 1 yoki Audio 1 deb atang. Yozma ko‘rsatmada raqamlangan namuna o‘rniga material identifikatorini qo‘ymang.\n\nBirinchi kadr rasmi rasmga asoslangan kadrning boshlanishini belgilaydi. Birinchi va oxirgi kadr rejimi har ikki chegarani belgilaydi. Aynan shu chegara rasmlari muhim bo‘lsa, omni-reference ko‘rsatmasida namunalarni boshlanish va yakun deb tasvirlash o‘rniga maxsus rejimni tanlang. Ikkinchisi ko‘rsatma orqali yo‘naltirilgan ta’sir bo‘lib, qat’iy chegara kadri tanloviga teng emas. Rasmlarni chiqish kompozitsiyasiga mos tayyorlang va boshlang‘ich hamda oxirgi holatlarni bog‘lovchi harakatni ayting.\n\nVideo tahrirlash mavjud klipni faqat ilhom sifatida ishlatmay, uning o‘zini o‘zgartiradi. Tahrirlanadigan video, o‘zgartiriladigan buyum yoki soha, uning paydo bo‘lish vaqti va joyi hamda saqlanadigan detallarni belgilang. Foydali topshiriq: “Video 1 da krujkani Image 1 da ko‘rsatilgan idish bilan almashtiring; qo‘l harakati, kadr tuzilishi, yorug‘lik va stol joylashuvini saqlang.” Olib tashlashda keraksiz buyum va qolishi kerak bo‘lgan atrof elementlarini nomlang. Yaratuvchi tahrir yoki uzaytirishda nishondagi videoni to‘g‘ridan-to‘g‘ri atashni maslahat beradi; uni namuna deb ifodalash yangi sahna yaratish so‘rovini anglatishi mumkin.\n\nVideo uzaytirish mavjud klipdan oldin yoki keyin voqealar qo‘shadi. Davom yo‘nalishini va keyin yoki oldin nima sodir bo‘lishini tasvirlang. Hujjatlashtirilgan jarayon ikki yoki uch klipni yaratilgan o‘tishlar bilan ham bog‘laydi; uch kirish videosi birgalikda baribir 15 soniyalik namuna budjetiga sig‘adi. Qo‘llanma asosan asl klipning chegara lavhasini o‘z ichiga olgan davomni asl mazmunni aniq saqlash so‘rovidan farqlaydi. Natija tarkibini ayting: faqat davom yoki berilgan klip va yangi harakatni o‘z ichiga olgan sahna.\n\nAniq rejissyorlik uchun barqaror sahna tavsifini voqealar ketma-ketligidan ajrating. Har bir obyektni ikki yoki uch farqlovchi vizual xususiyat va izchil belgi bilan ta’riflang. Keyin harakatlar, joy, yorug‘lik, kamera harakati, vizual uslub va shartlarni tasvirlang. Dialogda har bir gapni so‘zlovchi va tegishli harakat bilan bog‘lang. Aniq vaqt belgilarini ishonchli boshqaruv deb qabul qilmay, tartiblangan kadr belgilarini ishlating: yaratuvchi aniq vaqt beqaror bo‘lishi mumkinligini qayd etadi. Bosqichlangan mahsulot topshirig‘i: “Image 1 Mahsulot A ni belgilaydi. Kadr 1: peshtaxtadagi Mahsulot A ga sekin yaqinlashing. Kadr 2: qo‘l uni yorug‘likka buradi. Kadr 3: old yorliqda to‘xtang. Yumshoq xona shovqini; bosma yozuvni saqlang.”\n\nNamunalarni hujjatlashtirilgan oila kirish qoidalariga tayyorlang. Qo‘llab-quvvatlanadigan rasm formatlari JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC va HEIF; har bir rasm 30 MB dan kichik. Qo‘llanma rasm eni va bo‘yini qat’iy 300 bilan 6,000 piksel orasida, tomonlar nisbatini esa qat’iy 0.4 bilan 2.5 orasida belgilaydi. Video namunalari H.264 yoki H.265 video va AAC yoki MP3 audio bilan MP4 yoki MOV ishlatadi; har biri ko‘pi bilan 200 MB va soniyasiga 24–60 kadr. Eni va bo‘yi 300–6,000 piksel, tomonlar nisbati 0.4–2.5, umumiy piksel soni 407,696–8,295,044. Audio namunalari WAV yoki MP3 va har biri ko‘pi bilan 15 MB. Bular muayyan ilovaning yuklash boshqaruvlaridan alohida, ishlab chiqaruvchining kirishni tayyorlash spetsifikatsiyalaridir.\n\nYaratuvchining portret jarayoni haqiqiy inson yuzlari bor rasm yoki videolar uchun maxsus tayyorgarlik talab qiladi: namunani to‘g‘ridan-to‘g‘ri yuklash standart qo‘llab-quvvatlanadigan yo‘l emas. U ishonchli model chiqishlari, tayyor raqamli qahramonlar va ruxsatli haqiqiy shaxs materiali jarayonini alohida yechimlar sifatida hujjatlashtiradi. Ovoz mosligi, talaffuz va klip chegarasidagi tovush ham tekshirilishi kerak. Ko‘rsatma qo‘llanmasi kerakli ovoz xususiyatlarini tasvirlash va dialog uslubini audio namunaga yaqin tutishni tavsiya qiladi. Yakuniy artefaktni obyekt izchilligi, aynan aytilgan so‘zlar, harakat vaqti, kadr o‘tishlari va yakuniy audio bo‘yicha tekshiring; topshiriqdan farq qilgan aniq elementni tuzating.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "ce091af942b3e5501dbebcc7af4e895c144149a950c0861aa7ebfff3764dbf35",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "uz",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">ByteDance: Seedance 2.0 Mini</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Yopish\">×</button></div><div class=\"idline\"><span>ByteDance /</span><code>bytedance/seedance-2.0-mini</code><button type=\"button\" id=\"copy-id\">ID ni nusxalash</button></div><nav class=\"card-jump-nav\" aria-label=\"Model kartochkasi bo‘limlari\"><button type=\"button\" data-card-jump=\"overview\">Boshlash</button><button type=\"button\" data-card-jump=\"methods\">Kirish ma’lumotlari va usullar</button><button type=\"button\" data-card-jump=\"pricing\">Tariflar</button><button type=\"button\" data-card-jump=\"examples\">Namunalar</button><button type=\"button\" data-card-jump=\"results\">Natijalar</button><button type=\"button\" data-card-jump=\"aliases\">Taxalluslar</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API usullari\"><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|bytedance%2Fseedance-2.0-mini\">Video</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\">Boshlash</h3><p class=\"mdesc-full\">Seedance 2.0 Mini matn, rasm, video va audio namunalaridan ixtiyoriy yaratilgan tovush bilan qisqa videolar yaratadi. U sahna yaratish, aniq video tahrirlari va davom ettirishni qo‘llab-quvvatlaydi; chiqish profili 480p yoki 720p sifatida hujjatlashtirilgan.</p><dl class=\"card-io\" data-card-io><div><dt>Qabul qilinadigan kirish ma’lumotlari</dt><dd>Matn · Rasmlar · Audio</dd></div><div><dt>Natijalar</dt><dd>Video</dd></div></dl><details class=\"card-about\"><summary>Model haqida</summary><p class=\"note-s\" data-model-method-boundary>Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.</p><div class=\"mabout\" id=\"m-about\"><p>Seedance 2.0 Mini — ByteDance ning Seedance 2.0 audiovizual oilasidagi alohida nomlangan model. Ishlab chiqaruvchi matndan video, birinchi kadr hamda birinchi va oxirgi kadr orqali rasmdan video, multimodal namunali yaratish, video tahrirlash va uzaytirishni hujjatlashtiradi. Tovush tasvir bilan birga yaratilishi mumkin. Yaratish rejimini mavjud materialga qarab tanlang: yozma topshiriq, qat’iy boshlang‘ich rasm, ikki chegara kadri yoki tahrir yoxud davom kerak bo‘lgan klip.</p><p>Mini o‘z chiqish profiliga ega. Ishlab chiqaruvchi 8-bit rangli, soniyasiga 24 kadrli va MP4 chiqishli 480p hamda 720p videoni sanaydi. Qo‘llab-quvvatlanadigan tomonlar nisbati 21:9, 16:9, 4:3, 1:1, 3:4 va 9:16; hujjatlashtirilgan yaratish davomiyligi 4–15 soniya. Ishlab chiqaruvchining davomiylik boshqaruvi shu oraliqda avtomatik tanlashga ham ruxsat beradi. To‘liq Seedance 2.0 modelining 1080p va 4K variantlari alohida; ular Mini sozlamalari emas. Oila imkoniyatlari jadvali oxirgi yaratilgan kadrni qaytarishni sanaydi, Draft rejimi esa qo‘llab-quvvatlanmaydi.</p><p>Omni reference berilgan materialdan tanlangan ma’lumot bilan yangi sahna yaratadi. Rasm obyekt ko‘rinishi, kompozitsiya yoki vizual ishlovni belgilashi mumkin. Video harakat, kamera yurishi yoki effektni, audio namuna esa ovoz tembri, kuy yoki aytiladigan mazmunni belgilashi mumkin. Har bir namunaning barcha xususiyatlarini ko‘chirishni so‘ramay, undan nimani olish kerakligini modelga ayting. Masalan, shakl va rang uchun mahsulot fotosi, yaqinlashish uchun qisqa kamera harakati klipi va muhit uchun tovush namunasidan foydalaning.</p><p>Oila jarayoni to‘qqiztagacha namuna rasm, uchta video klip va uchta audio klipga ruxsat beradi. Video namunalari har biri 2–15 soniya, jami esa 15 soniyadan oshmaydi; audio namunalarida ham har bir klip va umumiy davomiylik chegaralari shu. Faqat audio hamda vizual namunasiz matn va audio qo‘llab-quvvatlanadigan namuna birikmalari emas. Faqat matndan yaratish alohida qo‘llab-quvvatlanadigan rejim. Ketma-ketlikda materiallarni kerakli tartibda bering va har bir media turidagi tartib asosida ularni izchil Image 1, Video 1 yoki Audio 1 deb atang. Yozma ko‘rsatmada raqamlangan namuna o‘rniga material identifikatorini qo‘ymang.</p><p>Birinchi kadr rasmi rasmga asoslangan kadrning boshlanishini belgilaydi. Birinchi va oxirgi kadr rejimi har ikki chegarani belgilaydi. Aynan shu chegara rasmlari muhim bo‘lsa, omni-reference ko‘rsatmasida namunalarni boshlanish va yakun deb tasvirlash o‘rniga maxsus rejimni tanlang. Ikkinchisi ko‘rsatma orqali yo‘naltirilgan ta’sir bo‘lib, qat’iy chegara kadri tanloviga teng emas. Rasmlarni chiqish kompozitsiyasiga mos tayyorlang va boshlang‘ich hamda oxirgi holatlarni bog‘lovchi harakatni ayting.</p><p>Video tahrirlash mavjud klipni faqat ilhom sifatida ishlatmay, uning o‘zini o‘zgartiradi. Tahrirlanadigan video, o‘zgartiriladigan buyum yoki soha, uning paydo bo‘lish vaqti va joyi hamda saqlanadigan detallarni belgilang. Foydali topshiriq: “Video 1 da krujkani Image 1 da ko‘rsatilgan idish bilan almashtiring; qo‘l harakati, kadr tuzilishi, yorug‘lik va stol joylashuvini saqlang.” Olib tashlashda keraksiz buyum va qolishi kerak bo‘lgan atrof elementlarini nomlang. Yaratuvchi tahrir yoki uzaytirishda nishondagi videoni to‘g‘ridan-to‘g‘ri atashni maslahat beradi; uni namuna deb ifodalash yangi sahna yaratish so‘rovini anglatishi mumkin.</p><p>Video uzaytirish mavjud klipdan oldin yoki keyin voqealar qo‘shadi. Davom yo‘nalishini va keyin yoki oldin nima sodir bo‘lishini tasvirlang. Hujjatlashtirilgan jarayon ikki yoki uch klipni yaratilgan o‘tishlar bilan ham bog‘laydi; uch kirish videosi birgalikda baribir 15 soniyalik namuna budjetiga sig‘adi. Qo‘llanma asosan asl klipning chegara lavhasini o‘z ichiga olgan davomni asl mazmunni aniq saqlash so‘rovidan farqlaydi. Natija tarkibini ayting: faqat davom yoki berilgan klip va yangi harakatni o‘z ichiga olgan sahna.</p><p>Aniq rejissyorlik uchun barqaror sahna tavsifini voqealar ketma-ketligidan ajrating. Har bir obyektni ikki yoki uch farqlovchi vizual xususiyat va izchil belgi bilan ta’riflang. Keyin harakatlar, joy, yorug‘lik, kamera harakati, vizual uslub va shartlarni tasvirlang. Dialogda har bir gapni so‘zlovchi va tegishli harakat bilan bog‘lang. Aniq vaqt belgilarini ishonchli boshqaruv deb qabul qilmay, tartiblangan kadr belgilarini ishlating: yaratuvchi aniq vaqt beqaror bo‘lishi mumkinligini qayd etadi. Bosqichlangan mahsulot topshirig‘i: “Image 1 Mahsulot A ni belgilaydi. Kadr 1: peshtaxtadagi Mahsulot A ga sekin yaqinlashing. Kadr 2: qo‘l uni yorug‘likka buradi. Kadr 3: old yorliqda to‘xtang. Yumshoq xona shovqini; bosma yozuvni saqlang.”</p><p>Namunalarni hujjatlashtirilgan oila kirish qoidalariga tayyorlang. Qo‘llab-quvvatlanadigan rasm formatlari JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC va HEIF; har bir rasm 30 MB dan kichik. Qo‘llanma rasm eni va bo‘yini qat’iy 300 bilan 6,000 piksel orasida, tomonlar nisbatini esa qat’iy 0.4 bilan 2.5 orasida belgilaydi. Video namunalari H.264 yoki H.265 video va AAC yoki MP3 audio bilan MP4 yoki MOV ishlatadi; har biri ko‘pi bilan 200 MB va soniyasiga 24–60 kadr. Eni va bo‘yi 300–6,000 piksel, tomonlar nisbati 0.4–2.5, umumiy piksel soni 407,696–8,295,044. Audio namunalari WAV yoki MP3 va har biri ko‘pi bilan 15 MB. Bular muayyan ilovaning yuklash boshqaruvlaridan alohida, ishlab chiqaruvchining kirishni tayyorlash spetsifikatsiyalaridir.</p><p>Yaratuvchining portret jarayoni haqiqiy inson yuzlari bor rasm yoki videolar uchun maxsus tayyorgarlik talab qiladi: namunani to‘g‘ridan-to‘g‘ri yuklash standart qo‘llab-quvvatlanadigan yo‘l emas. U ishonchli model chiqishlari, tayyor raqamli qahramonlar va ruxsatli haqiqiy shaxs materiali jarayonini alohida yechimlar sifatida hujjatlashtiradi. Ovoz mosligi, talaffuz va klip chegarasidagi tovush ham tekshirilishi kerak. Ko‘rsatma qo‘llanmasi kerakli ovoz xususiyatlarini tasvirlash va dialog uslubini audio namunaga yaqin tutishni tavsiya qiladi. Yakuniy artefaktni obyekt izchilligi, aynan aytilgan so‘zlar, harakat vaqti, kadr o‘tishlari va yakuniy audio bo‘yicha tekshiring; topshiriqdan farq qilgan aniq elementni tuzating.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Ailoot da mavjud · kirish ma’lumotlari va usullar</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Video</b> <code>POST /v1/videos</code></summary><dl class=\"method-capabilities\"><div><dt>Kirish</dt><dd><code>text</code>, <code>image</code>, <code>audio</code></dd></div><div><dt>Chiqish</dt><dd><code>video</code></dd></div><div><dt>Chiqish formati</dt><dd>asl MP4 baytlari; normallashtirishsiz/qayta kodlashsiz</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Maydon</th><th>Tur</th><th>Talab</th><th>Qiymatlar va cheklovlar</th><th>Standart</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>bytedance/seedance-2.0-mini</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>integer</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Majburiy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15</div><div>Eng kam: 1</div><div>Eng ko‘p: 600</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>480p, 720p</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">aspect_ratio</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>1:1, 3:4, 9:16, 4:3, 16:9, 21:9, 9:21</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">generate_audio</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>boolean</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>false, true</div><div>Shartlar: generate_audio ni bermaslik audioli narxni, false esa audiosiz narxni tanlaydi. Audio yo‘lak qaytarilganini bilish uchun natijadagi has_audio ni tekshiring.</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">frame_images</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>array</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Elementlarning eng kam soni: 1</div><div>Elementlarning eng ko‘p soni: 2</div><div>Kirish kontenti: Kadr obyektlari massivi. Har birida type=image_url, url saqlovchi image_url va frame_type=first_frame yoki last_frame bo‘ladi. Har bir vazifa ko‘pi bilan bir marta uchraydi. Ochiq HTTPS URL laridan foydalaning.</div><div>Aniq kalitlar: type, image_url, frame_type</div><div>Shartlar: Bu kalitlar har bir kadr obyektiga tegishli. Faqat matnli so‘rov uchun frame_images ni yubormang.</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">input_references</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>array</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Kirish kontenti: Rasm yoki audio referens obyektlari massivi. type qiymatini image_url yoki audio_url qilib belgilang va url saqlovchi mos URL obyektini bering. Video referenslar narxini hisoblab bo‘lmaydi.</div><div>Shartlar: Referens rejimini ishlatish uchun frame_images ni yubormang. Ochiq HTTPS URL laridan foydalaning.</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">size</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>480x480, 480x640, 480x854, 640x480, 854x480, 1120x480, 720x720, 720x960, 720x1280, 720x1680, 960x720, 1280x720, 1680x720</div><div>Andoza: ^[1-9][0-9]*x[1-9][0-9]*$</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">seed</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>integer</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Eng kam: -9 223 372 036 854 775 808</div><div>Eng ko‘p: 9 223 372 036 854 775 807</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">callback_url</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span><div>Andoza: ^https://</div></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">session_id</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">trace</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>object</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">user</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span><code>string</code></td><td data-cell-label=\"Talab\"><span class=\"card-cell-label\">Talab</span>Ixtiyoriy</td><td data-cell-label=\"Qiymatlar va cheklovlar\"><span class=\"card-cell-label\">Qiymatlar va cheklovlar</span></td><td data-cell-label=\"Standart\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standart</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kirish materiallari birikmalari</summary><p class=\"note-s\"><b>Matndan video</b> · Yozma ko‘rsatma. · Majburiy: model, prompt, duration</p><p class=\"note-s\"><code>Matnli ko‘rsatma va qo‘llab-quvvatlanadigan butun soniyali davomiylikni bering. Ro‘yxatdagi aniq o‘lchamdan yoki ro‘yxatdagi o‘lchamlarga mos keladigan aniqlik va tomonlar nisbatidan foydalaning.</code></p><p class=\"note-s\"><code class=\"card-field-name\">model</code>: Turi: string · bytedance/seedance-2.0-mini</p><p class=\"note-s\"><code class=\"card-field-name\">prompt</code>: Turi: string · UTF-8 baytlarining eng ko‘p soni: 10 000 · Bo‘shliq belgisi bo‘lmagan kamida bitta belgi talab qilinadi: Ha</p><p class=\"note-s\"><b>Rasmdan video</b> · Yozma ko‘rsatma va kadr rasmi. · Majburiy: model, prompt, duration, frame_images</p><p class=\"note-s\"><code>frame_images — type=image_url, url saqlovchi image_url va frame_type maydonlaridan iborat obyektlar massivi. Ochiq HTTPS rasm URL idan foydalaning; first_frame va last_frame har biri bir martadan uchrashi mumkin. Ro‘yxatdagi chiqish o‘lchami yoki mos o‘lchamlardan foydalaning. Video referenslarni qo‘shmang.</code></p><p class=\"note-s\">Aniq kalitlar: type, image_url, frame_type</p><p class=\"note-s\"><code class=\"card-field-name\">model</code>: Turi: string · bytedance/seedance-2.0-mini</p><p class=\"note-s\"><code class=\"card-field-name\">prompt</code>: Turi: string · UTF-8 baytlarining eng ko‘p soni: 10 000 · Bo‘shliq belgisi bo‘lmagan kamida bitta belgi talab qilinadi: Ha</p><p class=\"note-s\"><b>Reference to video</b> · Yozma ko‘rsatma va rasm yoki audio referenslari. · Majburiy: model, prompt, duration, input_references</p><p class=\"note-s\"><code>input_references — massiv. Har bir obyektda type=image_url yoki type=audio_url hamda url saqlovchi mos URL obyekti mavjud. Ochiq HTTPS havolalaridan foydalaning. Referens rejimini tanlash uchun frame_images ni yubormang. Video referenslar narxini hisoblab bo‘lmaydi.</code></p><p class=\"note-s\"><code class=\"card-field-name\">model</code>: Turi: string · bytedance/seedance-2.0-mini</p><p class=\"note-s\"><code class=\"card-field-name\">prompt</code>: Turi: string · UTF-8 baytlarining eng ko‘p soni: 10 000 · Bo‘shliq belgisi bo‘lmagan kamida bitta belgi talab qilinadi: Ha</p></details><details class=\"note-s\" data-method-contract><summary>Usul parametrlari va hayot sikli</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parametr</th><th>Parametr talablari</th></tr></thead><tbody><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>content_type</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>application/json</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>required</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>model, prompt, duration</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>material_types</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>text, image, audio</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>additional_properties</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>false</td></tr><tr><th data-cell-label=\"Parametr\" scope=\"row\"><span class=\"card-cell-label\">Parametr</span><code>optional_controls</code></th><td data-cell-label=\"Parametr talablari\"><span class=\"card-cell-label\">Parametr talablari</span>resolution, aspect_ratio, generate_audio, frame_images, input_references, size, seed, callback_url, session_id, trace, user</td></tr></tbody></table></div><p>Hayot sikli: <code>submit_once_poll_original</code></p><p class=\"note-s\"><code>GET /v1/videos/{public_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/{public_id}/content</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Tariflar</h3><div class=\"card-result-process\" data-billing-basis><h5>Yakuniy to‘lov qanday hisoblanadi</h5><p class=\"note-s\">Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tarif ma’lumotlari so‘rov imkoniyatlarini qo‘shmaydi. Qo‘llab-quvvatlanadigan parametrlar tanlangan usulda ko‘rsatilgan.</p><dl data-price-conditions><dt>Tezkor rejim</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">Tezkor rejim tanlanganda</span></dd><dt>Flex rejimi</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">flex rejimi tanlanganda</span></dd><dt>Maksimal fikrlash darajasi</dt><dd>Ko‘rsatilmagan <span class=\"note-s\">Maksimal fikrlash darajasi uchun standart (default) tuzatish qo‘llanganda</span></dd></dl></div><div data-declared-tariff-pricing><h4>Taqqoslash uchun taxminiy tariflar</h4><h4>Sozlamalar bo‘yicha narxlar</h4><p class=\"note-s\">Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Sozlama</th><th>Tariflar jadvali</th><th>Prognoz miqdori</th><th>Hisob birligi</th><th>To‘lovni hisoblash shartlari</th><th>To‘lov</th></tr></thead><tbody><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Tokenlar uchun bazaviy tariflar</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>Asosiy tarif</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>—</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>—</td><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>—</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Kirish · Kirish tokenlari · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Chiqish · Chiqish tokenlari · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshdan o‘qish · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kirish · Keshga yozish, 1 soat · Faqat taqqoslash uchun taxmin</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>—</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>1K video tokeni uchun</td><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>Ushbu narxlash kalitida qo‘shimcha shart ko‘rsatilmagan.</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Video tokeni narxi · Faqat taqqoslash uchun taxmin</span> <b>$0.007</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>—</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>1K video tokeni uchun</td><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>kirish: with_video_input</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>reference · Video tokeni narxi · Faqat taqqoslash uchun taxmin</span> <b>$0.0042</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>—</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>1K video tokeni uchun</td><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>ovoz: without_audio</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Video tokeni narxi · Faqat taqqoslash uchun taxmin</span> <b>$0.007</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Yaratishning taxminiy qiymati</th><td data-cell-label=\"Tariflar jadvali\"><span class=\"card-cell-label\">Tariflar jadvali</span>—</td><td data-cell-label=\"Prognoz miqdori\"><span class=\"card-cell-label\">Prognoz miqdori</span>bir generatsiya uchun taxmin</td><td data-cell-label=\"Hisob birligi\"><span class=\"card-cell-label\">Hisob birligi</span>—</td><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>—</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Yaratishning taxminiy narxi · Faqat taqqoslash uchun taxmin</span> <b>$0.1512</b> <span class=\"price-unit\">yaratishdan oldingi taxmin</span></div><p class=\"note-s\">Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. <a href=\"/docs/uz/billing/reserve/\">Summani band qilish va to‘lovni hisoblash tartibi →</a></p><div data-declared-reference-pricing><h4>Ma’lumot uchun tarif tafsilotlari</h4><p class=\"note-s\">Modelning ma’lumot jadvallari usul tanlash, narx hisobi yoki to‘lovlarni o‘zgartirmaydi. Amaldagi to‘lovlar tanlangan Ailoot usuli tariflari bo‘yicha hisoblanadi.</p><details class=\"card-price-reference\" data-declared-reference-group data-client-selectable=\"false\"><summary>Video sozlamalari narxiga havolalar</summary><h4>Sozlamalar bo‘yicha narxlar</h4><p class=\"note-s\">Har bir to‘lovni ko‘rsatilgan shartlarga moslang. Har bir muqobil sozlamalar to‘plami uchun bitta tarifdan foydalaning.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Sozlama</th><th>To‘lovni hisoblash shartlari</th><th>To‘lov</th></tr></thead><tbody><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>Ushbu narxlash kalitida qo‘shimcha shart ko‘rsatilmagan.</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Video tokeni narxi</span> <b>$0.007</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>ovoz: without_audio</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>Chiqish · Video tokeni narxi</span> <b>$0.007</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr><tr><th data-cell-label=\"Sozlama\" scope=\"row\"><span class=\"card-cell-label\">Sozlama</span>Video tokeni narxi</th><td data-cell-label=\"To‘lovni hisoblash shartlari\"><span class=\"card-cell-label\">To‘lovni hisoblash shartlari</span>kirish: with_video_input</td><td data-cell-label=\"To‘lov\"><span class=\"card-cell-label\">To‘lov</span><div><span>reference · Video tokeni narxi</span> <b>$0.0042</b> <span class=\"price-unit\">1K video tokeni uchun</span></div><p class=\"note-s\">Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.</p></td></tr></tbody></table></div></details></div></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">So‘rov namunalari</h3><h4>Ailoot Ultra · Video</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kod variantlari\"><button class=\"cg-tab\" id=\"model-code-1137-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1137-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · Video yarating</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kodni nusxalash\"><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-1137-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1137-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nfrom pathlib import Path\nPath(&#39;request.json&#39;).write_text(&#39;{&quot;model&quot;:&quot;bytedance/seedance-2.0-mini&quot;,&quot;prompt&quot;:&quot;A serene mountain landscape at sunset&quot;,&quot;duration&quot;:4,&quot;resolution&quot;:&quot;480p&quot;,&quot;size&quot;:&quot;480x480&quot;,&quot;generate_audio&quot;:false}&#39;, encoding=&#39;utf-8&#39;)\nPY_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\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&#39;result.json&#39;).read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint(&#39;Keep the complete JSON and response headers; do not resubmit an unknown creation.&#39;)\nPY_RESULT\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Natijalarni olish va saqlash</h3><h4>Ailoot Ultra · Video</h4><p class=\"note-s\">egalik qilinadigan mazmunning imzolangan URL lari</p><ul class=\"card-result-paths\"><li><code>GET /v1/videos/{public_id}</code></li><li><code>GET /v1/videos/{public_id}/content</code></li></ul><h5>Vazifa holatini tekshirish</h5><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kod variantlari\"><button class=\"cg-tab\" id=\"model-code-1138-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1138-panel-0\" aria-selected=\"true\" tabindex=\"0\">GET asl operatsiya holati</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kodni nusxalash\"><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-1138-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1138-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\npython3 - &lt;&lt;&#39;PY_STATUS_URL&#39;\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote\nr=json.loads(Path(&#39;result.json&#39;).read_text())\nif not isinstance(r.get(&#39;id&#39;),str) or not r[&#39;id&#39;]:raise SystemExit(&#39;Keep the original response and headers for reconciliation; no returned ID&#39;)\nPath(&#39;status-url.txt&#39;).write_text(&#39;https://api.ailoot.ai/v1/videos/&#39;+quote(r[&#39;id&#39;],safe=&#39;&#39;))\nPY_STATUS_URL\ncurl --fail-with-body --silent --show-error &quot;$(cat status-url.txt)&quot; \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -D status-headers.txt -o status.json\npython3 - &lt;&lt;&#39;PY_RESULT&#39;\nimport json\nfrom pathlib import Path\nr=json.loads(Path(&#39;status.json&#39;).read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint(&#39;Keep the complete JSON and response headers; do not resubmit an unknown creation.&#39;)\nPY_RESULT\n</code></pre></div></div></div><details class=\"card-about\"><summary>Boshqa kontentni o‘qish</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kod variantlari\"><button class=\"cg-tab\" id=\"model-code-1139-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1139-panel-0\" aria-selected=\"true\" tabindex=\"0\">O‘zingizga tegishli har bir tayyor natijani saqlash</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kodni nusxalash\"><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-1139-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1139-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\nexport AILOOT_API_KEY\npython3 - &lt;&lt;&#39;PY_ASSETS&#39;\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(&#39;status.json&#39;).read_text())\nif r.get(&#39;status&#39;)!=&#39;completed&#39;:raise SystemExit(&#39;Keep the original ID and read its status; never recreate an unknown job&#39;)\nif not isinstance(r.get(&#39;data&#39;),list) or not r[&#39;data&#39;]:raise SystemExit(&#39;Keep the complete original status; no completed outputs supplied&#39;)\nurls=[]\nfor i,u in enumerate(r.get(&#39;data&#39;,[])):\n    if not isinstance(u,str):raise SystemExit(&#39;Keep the original response; unexpected asset shape&#39;)\n    urls.append((str(i),u))\nfor label,path in urls:\n    u=urljoin(&#39;https://api.ailoot.ai&#39;,path);z=urlsplit(u)\n    if z.scheme!=&#39;https&#39; or z.netloc!=&#39;api.ailoot.ai&#39; or z.username or z.password:raise SystemExit(&#39;Use the actual returned Ailoot owned content URL&#39;)\n    target=Path(&#39;owned-&#39;+label+&#39;.bin&#39;)\n    subprocess.run([&#39;curl&#39;,&#39;--fail-with-body&#39;,&#39;--silent&#39;,&#39;--show-error&#39;,u,&#39;-H&#39;,&#39;Authorization: Bearer &#39;+os.environ[&#39;AILOOT_API_KEY&#39;],&#39;-D&#39;,str(target)+&#39;.headers&#39;,&#39;-o&#39;,str(target)],check=True)\nprint(&#39;All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.&#39;)\nPY_ASSETS\n</code></pre></div></div></div></details><div class=\"card-result-process\" data-all-results><h5>Barcha tayyor natijalarni saqlash</h5><p class=\"note-s\">Har bir tayyor video yoki qaytarilgan faylni saqlang; har bir haqiqatan qaytarilgan material URL dan kontentni oling.</p><p class=\"note-s\">Egalik qilinadigan har bir haqiqiy chiqish natijasini va u bilan qaytarilgan o‘lchangan metama’lumotlarni saqlang.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Asl javobni tekshirish kerak bo‘lsa</h5><p class=\"note-s\">503 result_pending_check + dastlabki id + X-Should-Retry:false; dastlabki so‘rovni hech qachon qayta yubormang</p></div><details class=\"card-about\" data-output-fields><summary>Javob maydonlari</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Maydon</th><th>Tur</th><th>Ma’nosi</th></tr></thead><tbody><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">index</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>integer</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Ushbu videoning chiqishlar ro‘yxatidagi noldan boshlanuvchi o‘rni.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">content_url</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>string</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Ushbu yakunlangan video uchun imzolangan HTTPS yuklab olish URL i.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">sha256</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>string | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Dastlabki video baytlarining SHA-256 xeshi; mavjud bo‘lmasa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">size_bytes</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>integer | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Dastlabki video faylining baytlardagi hajmi; mavjud bo‘lmasa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">duration_ms</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>integer | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Videoning millisoniyalarda o‘lchangan davomiyligi; mavjud bo‘lmasa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">width</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>integer | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Videoning piksellardagi eni; mavjud bo‘lmasa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">height</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>integer | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Videoning piksellardagi bo‘yi; mavjud bo‘lmasa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">video_codec</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>string | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Video kodeki identifikatori; qayd etilmagan bo‘lsa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">has_audio</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>boolean | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Videoda audio yo‘lak bor-yo‘qligi; o‘lchanmagan bo‘lsa null.</td></tr><tr><th data-cell-label=\"Maydon\" scope=\"row\"><span class=\"card-cell-label\">Maydon</span><code class=\"card-field-name\">audio_codec</code></th><td data-cell-label=\"Tur\" data-field-type><span class=\"card-cell-label\">Tur</span>string | null</td><td data-cell-label=\"Ma’nosi\"><span class=\"card-cell-label\">Ma’nosi</span>Audio kodeki identifikatori; identifikator qayd etilmagan bo‘lsa null.</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Xatolar va keyingi qadamlar</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Javob</th><th>Shart</th><th>Keyingi qadam</th></tr></thead><tbody><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>404 · <code>not_found_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Videoga kirish mavjud emas yoki ushbu video ID si topilmadi.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Videoga kirishni tekshiring. Mavjud video uchun uning dastlabki ochiq ID si va ayni API kalitidan foydalaning.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>401 · <code>authentication_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>API kaliti autentifikatsiyadan o‘tgan hisobga mos kelmaydi.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Yuborishdan oldin API kalitingiz va hisobga kirishingizni tekshiring.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>So‘rovni o‘qib bo‘lmadi yoki yuklab olish indeksi yaroqsiz.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>So‘rov tanasini tuzating. Yuklab olish uchun dastlabki vazifa qaytargan chiqish indeksini tanlang.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Tanlangan video sozlamasining narxini hisoblab bo‘lmaydi.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Tuzatilgan so‘rovni yuborishdan oldin qo‘llab-quvvatlanadigan video sozlamasini tanlang va uning majburiy parametrlarini to‘ldiring.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>422 · <code>invalid_request_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Video kirishi yoki dastlabki davom ettirish vazifasi yaroqsiz.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Yaroqli HTTPS kirishlaridan foydalaning. Davom ettirish uchun yakunlangan dastlabki videongizning ochiq ID si va ayni API kalitidan foydalaning.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>402 · <code>billing_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Mavjud balans yoki limitlar mablag‘ni band qilishga imkon bermaydi.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Yangi so‘rov yuborishdan oldin mavjud balans va limitlaringizni tekshiring.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>503 · <code>server_error</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Videoni tekshirish, saqlash yoki xizmatga kirish vaqtincha mavjud emas.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Xizmat mavjud bo‘lishini kuting. Video ID si allaqachon bo‘lsa, boshqa yaratishni boshlash o‘rniga shu dastlabki vazifani tekshiring.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>503 · <code>result_pending_check</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Dastlabki video natijasi va to‘lovni tekshirish kerak.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Qaytarilgan video ID sini saqlang va shu vazifani tekshiring. U tekshirilayotgan paytda o‘rniga boshqa yaratish so‘rovini yubormang.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>503 · <code>owned_result_unavailable</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Mavjud videoni yuklab olish vaqtincha ishlamayapti.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Keyinroq ayni video vazifasini tekshiring va uning mavjud chiqishini yuklab oling. Yangi yaratish alohida operatsiya hosil qiladi.</td></tr><tr><th data-cell-label=\"Javob\" scope=\"row\"><span class=\"card-cell-label\">Javob</span>409 · <code>video_not_ready</code></th><td data-cell-label=\"Shart\"><span class=\"card-cell-label\">Shart</span>Video mazmuni e’lon qilinmagan.</td><td data-cell-label=\"Keyingi qadam\"><span class=\"card-cell-label\">Keyingi qadam</span>Dastlabki vazifa holatini tekshiring. completed bildirgach yuklab oling; failed bildirsa, uning to‘lovni tekshirish bildirishnomasiga rioya qiling.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Taxalluslar</h3><h4>Model taxalluslari</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=bytedance%2Fseedance-2.0-mini&amp;route=Ultra&amp;caller=bytedance%2Fseedance-2.0-mini&amp;fmt=videos\"><code>bytedance/seedance-2.0-mini</code></a></span></p><h4>Usul yo‘llari taxalluslari</h4><p class=\"note-s\">Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.</p><h4>Chaqirish uchun tegishli ID lar</h4><p class=\"note-s\"><a href=\"#m=bytedance%2Fseedance-2.0-mini&amp;route=Ultra&amp;caller=bytedance%2Fseedance-2.0-mini&amp;fmt=videos\"><code>bytedance/seedance-2.0-mini</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "bytedance/seedance-2.0-mini",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "bytedance/seedance-2.0-mini",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|bytedance%2Fseedance-2.0-mini",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.",
          "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": {
            "all_results": "Egalik qilinadigan har bir haqiqiy chiqish natijasini va u bilan qaytarilgan o‘lchangan metama’lumotlarni saqlang.",
            "defaults": {
              "aspect_ratio": null,
              "duration": null,
              "generate_audio": "endpoint capability flag when published; omitted unknown stays unknown; never guarantees audio track",
              "resolution": null,
              "seed": null,
              "size": null,
              "wire_omissions_preserved": true
            },
            "errors": [
              {
                "condition": "Videoga kirish mavjud emas yoki ushbu video ID si topilmadi.",
                "http_status": 404,
                "public_identifier_field": "error.type",
                "recovery": "Videoga kirishni tekshiring. Mavjud video uchun uning dastlabki ochiq ID si va ayni API kalitidan foydalaning.",
                "type": "not_found_error"
              },
              {
                "condition": "API kaliti autentifikatsiyadan o‘tgan hisobga mos kelmaydi.",
                "http_status": 401,
                "public_identifier_field": "error.type",
                "recovery": "Yuborishdan oldin API kalitingiz va hisobga kirishingizni tekshiring.",
                "type": "authentication_error"
              },
              {
                "condition": "So‘rovni o‘qib bo‘lmadi yoki yuklab olish indeksi yaroqsiz.",
                "http_status": 400,
                "public_identifier_field": "error.type",
                "recovery": "So‘rov tanasini tuzating. Yuklab olish uchun dastlabki vazifa qaytargan chiqish indeksini tanlang.",
                "type": "invalid_request_error"
              },
              {
                "condition": "Tanlangan video sozlamasining narxini hisoblab bo‘lmaydi.",
                "http_status": 422,
                "public_identifier_field": "error.type",
                "recovery": "Tuzatilgan so‘rovni yuborishdan oldin qo‘llab-quvvatlanadigan video sozlamasini tanlang va uning majburiy parametrlarini to‘ldiring.",
                "type": "price_unavailable"
              },
              {
                "condition": "Video kirishi yoki dastlabki davom ettirish vazifasi yaroqsiz.",
                "http_status": 422,
                "public_identifier_field": "error.type",
                "recovery": "Yaroqli HTTPS kirishlaridan foydalaning. Davom ettirish uchun yakunlangan dastlabki videongizning ochiq ID si va ayni API kalitidan foydalaning.",
                "type": "invalid_request_error"
              },
              {
                "condition": "Mavjud balans yoki limitlar mablag‘ni band qilishga imkon bermaydi.",
                "http_status": 402,
                "public_identifier_field": "error.type",
                "recovery": "Yangi so‘rov yuborishdan oldin mavjud balans va limitlaringizni tekshiring.",
                "type": "billing_error"
              },
              {
                "condition": "Videoni tekshirish, saqlash yoki xizmatga kirish vaqtincha mavjud emas.",
                "http_status": 503,
                "public_identifier_field": "error.type",
                "recovery": "Xizmat mavjud bo‘lishini kuting. Video ID si allaqachon bo‘lsa, boshqa yaratishni boshlash o‘rniga shu dastlabki vazifani tekshiring.",
                "type": "server_error"
              },
              {
                "code": "result_pending_check",
                "condition": "Dastlabki video natijasi va to‘lovni tekshirish kerak.",
                "http_status": 503,
                "public_identifier_field": "error.code",
                "recovery": "Qaytarilgan video ID sini saqlang va shu vazifani tekshiring. U tekshirilayotgan paytda o‘rniga boshqa yaratish so‘rovini yubormang.",
                "type": "server_error"
              },
              {
                "code": "owned_result_unavailable",
                "condition": "Mavjud videoni yuklab olish vaqtincha ishlamayapti.",
                "http_status": 503,
                "public_identifier_field": "error.code",
                "recovery": "Keyinroq ayni video vazifasini tekshiring va uning mavjud chiqishini yuklab oling. Yangi yaratish alohida operatsiya hosil qiladi.",
                "type": "server_error"
              },
              {
                "condition": "Video mazmuni e’lon qilinmagan.",
                "http_status": 409,
                "public_identifier_field": "error.type",
                "recovery": "Dastlabki vazifa holatini tekshiring. completed bildirgach yuklab oling; failed bildirsa, uning to‘lovni tekshirish bildirishnomasiga rioya qiling.",
                "type": "video_not_ready"
              }
            ],
            "hints": [
              "No null values or duplicate keys at any JSON object level",
              "No duration/resolution/aspect default is inserted",
              "Prompt required for all21 despite broader official image-only schema",
              "A request must also pass model membership, exact price card, SKU selection and frozen quote construction",
              "Non-string known trace fields reject; other trace keys retain arbitrary JSON",
              "No n/output-count/client price fields accepted",
              "Provider passthrough disabled for all21; feed allowlist names do not supply provider slug/value contract"
            ],
            "ignored_fields": [],
            "lifecycle": {
              "cancel_endpoint": null,
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{public_id}/content",
                  "query": {
                    "index": "actual output index"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "mode": "submit_once_poll_original",
              "public_id": "video_<uuid>; owner user/key/group scope",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{public_id}"
                }
              ],
              "submit_status": 202,
              "terminal_failure_public": "200 failed + charge_pending_check=true; inspect original operation",
              "terminal_provider_states": [
                "failed",
                "cancelled",
                "expired"
              ],
              "unknown": "503 result_pending_check + dastlabki id + X-Should-Retry:false; dastlabki so‘rovni hech qachon qayta yubormang"
            },
            "material_combinations": [
              {
                "mode": "text_to_video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "Matnli ko‘rsatma va qo‘llab-quvvatlanadigan butun soniyali davomiylikni bering. Ro‘yxatdagi aniq o‘lchamdan yoki ro‘yxatdagi o‘lchamlarga mos keladigan aniqlik va tomonlar nisbatidan foydalaning.",
                "required": [
                  "model",
                  "prompt",
                  "duration"
                ],
                "required_material": "Yozma ko‘rsatma."
              },
              {
                "exact_keys": [
                  "type",
                  "image_url",
                  "frame_type"
                ],
                "mode": "image_to_video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "frame_images — type=image_url, url saqlovchi image_url va frame_type maydonlaridan iborat obyektlar massivi. Ochiq HTTPS rasm URL idan foydalaning; first_frame va last_frame har biri bir martadan uchrashi mumkin. Ro‘yxatdagi chiqish o‘lchami yoki mos o‘lchamlardan foydalaning. Video referenslarni qo‘shmang.",
                "required": [
                  "model",
                  "prompt",
                  "duration",
                  "frame_images"
                ],
                "required_material": "Yozma ko‘rsatma va kadr rasmi."
              },
              {
                "mode": "Reference to video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "input_references — massiv. Har bir obyektda type=image_url yoki type=audio_url hamda url saqlovchi mos URL obyekti mavjud. Ochiq HTTPS havolalaridan foydalaning. Referens rejimini tanlash uchun frame_images ni yubormang. Video referenslar narxini hisoblab bo‘lmaydi.",
                "required": [
                  "model",
                  "prompt",
                  "duration",
                  "input_references"
                ],
                "required_material": "Yozma ko‘rsatma va rasm yoki audio referenslari."
              }
            ],
            "operation_modes": [
              "text_to_video",
              "image_to_video_frame_images",
              "reference_to_video"
            ],
            "outputs": {
              "content_range_supported": true,
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "condition": "Always present for each completed output.",
                  "description": "Ushbu videoning chiqishlar ro‘yxatidagi noldan boshlanuvchi o‘rni.",
                  "field_path": "outputs[].index",
                  "json_schema": {
                    "type": "integer"
                  },
                  "name": "index",
                  "nullable": false,
                  "type": "integer"
                },
                {
                  "condition": "Present after the owned result is available and a signed URL is created.",
                  "description": "Ushbu yakunlangan video uchun imzolangan HTTPS yuklab olish URL i.",
                  "field_path": "outputs[].content_url",
                  "json_schema": {
                    "type": "string"
                  },
                  "name": "content_url",
                  "nullable": false,
                  "type": "string"
                },
                {
                  "condition": "A nonempty recorded digest is returned; otherwise null.",
                  "description": "Dastlabki video baytlarining SHA-256 xeshi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].sha256",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "sha256",
                  "nullable": true,
                  "type": "string | null"
                },
                {
                  "condition": "Returned when the recorded file size is positive.",
                  "description": "Dastlabki video faylining baytlardagi hajmi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].size_bytes",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "size_bytes",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Returned when the measured duration is positive.",
                  "description": "Videoning millisoniyalarda o‘lchangan davomiyligi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].duration_ms",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "duration_ms",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Width, height and the video codec are returned together when recorded.",
                  "description": "Videoning piksellardagi eni; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].width",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "width",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Width, height and the video codec are returned together when recorded.",
                  "description": "Videoning piksellardagi bo‘yi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].height",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "height",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Returned together with positive recorded width and height.",
                  "description": "Video kodeki identifikatori; qayd etilmagan bo‘lsa null.",
                  "field_path": "outputs[].video_codec",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "video_codec",
                  "nullable": true,
                  "type": "string | null"
                },
                {
                  "condition": "Returned when width, height and the video codec are recorded; false is a known result.",
                  "description": "Videoda audio yo‘lak bor-yo‘qligi; o‘lchanmagan bo‘lsa null.",
                  "field_path": "outputs[].has_audio",
                  "json_schema": {
                    "type": [
                      "boolean",
                      "null"
                    ]
                  },
                  "name": "has_audio",
                  "nullable": true,
                  "type": "boolean | null"
                },
                {
                  "condition": "Returned when video metadata is recorded and the audio codec identifier is nonempty.",
                  "description": "Audio kodeki identifikatori; identifikator qayd etilmagan bo‘lsa null.",
                  "field_path": "outputs[].audio_codec",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "audio_codec",
                  "nullable": true,
                  "type": "string | null"
                }
              ],
              "format": "original MP4 bytes; no normalization/transcode",
              "max_aggregate_seconds": 2400,
              "max_bytes_per_output": 67108864,
              "max_seconds_per_output": 600,
              "result": "egalik qilinadigan mazmunning imzolangan URL lari",
              "unmeasured_fields_nullable": true
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "bytedance/seedance-2.0-mini"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "schema": {
                  "const": "bytedance/seedance-2.0-mini"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minLength": 1,
                "name": "prompt",
                "required": true,
                "schema": {
                  "minLength": 1,
                  "type": "string",
                  "x-source-max-utf8-bytes": 10000,
                  "x-source-non-whitespace": true
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  4,
                  5,
                  6,
                  7,
                  8,
                  9,
                  10,
                  11,
                  12,
                  13,
                  14,
                  15
                ],
                "enum_known": true,
                "maximum": 600,
                "minimum": 1,
                "name": "duration",
                "required": true,
                "schema": {
                  "enum": [
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                  ],
                  "maximum": 600,
                  "minimum": 1,
                  "type": "integer"
                },
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "schema": {
                  "enum": [
                    "480p",
                    "720p"
                  ]
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "1:1",
                  "3:4",
                  "9:16",
                  "4:3",
                  "16:9",
                  "21:9",
                  "9:21"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "schema": {
                  "enum": [
                    "1:1",
                    "3:4",
                    "9:16",
                    "4:3",
                    "16:9",
                    "21:9",
                    "9:21"
                  ]
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "generate_audio ni bermaslik audioli narxni, false esa audiosiz narxni tanlaydi. Audio yo‘lak qaytarilganini bilish uchun natijadagi has_audio ni tekshiring.",
                "default": null,
                "default_known": false,
                "enum": [
                  false,
                  true
                ],
                "enum_known": true,
                "name": "generate_audio",
                "required": false,
                "schema": {
                  "enum": [
                    false,
                    true
                  ],
                  "x-omitted-default": "published audio capability when true/false; unknown if null; output audio must be measured"
                },
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "conditions": "Bu kalitlar har bir kadr obyektiga tegishli. Faqat matnli so‘rov uchun frame_images ni yubormang.",
                "content": "Kadr obyektlari massivi. Har birida type=image_url, url saqlovchi image_url va frame_type=first_frame yoki last_frame bo‘ladi. Har bir vazifa ko‘pi bilan bir marta uchraydi. Ochiq HTTPS URL laridan foydalaning.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "exact_keys": [
                  "type",
                  "image_url",
                  "frame_type"
                ],
                "maxItems": 2,
                "max_items": 2,
                "minItems": 1,
                "min_items": 1,
                "name": "frame_images",
                "required": false,
                "schema": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "frame_type": {
                        "enum": [
                          "first_frame",
                          "last_frame"
                        ]
                      },
                      "image_url": {
                        "additionalProperties": false,
                        "properties": {
                          "url": {
                            "format": "uri",
                            "pattern": "^https://",
                            "type": "string",
                            "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url",
                      "frame_type"
                    ],
                    "type": "object"
                  },
                  "maxItems": 2,
                  "minItems": 1,
                  "type": "array",
                  "x-source-unique-role": "frame_type"
                },
                "type": "array"
              },
              {
                "availability": "source_interface",
                "conditions": "Referens rejimini ishlatish uchun frame_images ni yubormang. Ochiq HTTPS URL laridan foydalaning.",
                "content": "Rasm yoki audio referens obyektlari massivi. type qiymatini image_url yoki audio_url qilib belgilang va url saqlovchi mos URL obyektini bering. Video referenslar narxini hisoblab bo‘lmaydi.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_references",
                "required": false,
                "schema": {
                  "items": {
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "properties": {
                          "image_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "image_url"
                          }
                        },
                        "required": [
                          "type",
                          "image_url"
                        ],
                        "type": "object"
                      },
                      {
                        "additionalProperties": false,
                        "properties": {
                          "audio_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "audio_url"
                          }
                        },
                        "required": [
                          "type",
                          "audio_url"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  "type": "array"
                },
                "type": "array"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "480x480",
                  "480x640",
                  "480x854",
                  "640x480",
                  "854x480",
                  "1120x480",
                  "720x720",
                  "720x960",
                  "720x1280",
                  "720x1680",
                  "960x720",
                  "1280x720",
                  "1680x720"
                ],
                "enum_known": true,
                "name": "size",
                "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                "required": false,
                "schema": {
                  "enum": [
                    "480x480",
                    "480x640",
                    "480x854",
                    "640x480",
                    "854x480",
                    "1120x480",
                    "720x720",
                    "720x960",
                    "720x1280",
                    "720x1680",
                    "960x720",
                    "1280x720",
                    "1680x720"
                  ],
                  "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                  "type": "string"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum": 9223372036854775807,
                "minimum": -9223372036854775808,
                "name": "seed",
                "required": false,
                "schema": {
                  "maximum": 9223372036854775807,
                  "minimum": -9223372036854775808,
                  "type": "integer"
                },
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "callback_url",
                "pattern": "^https://",
                "required": false,
                "schema": {
                  "format": "uri",
                  "pattern": "^https://",
                  "type": "string",
                  "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "session_id",
                "required": false,
                "schema": {
                  "maxLength": 256,
                  "type": "string"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "schema": {
                  "additionalProperties": true,
                  "properties": {
                    "generation_name": {
                      "type": "string"
                    },
                    "parent_span_id": {
                      "type": "string"
                    },
                    "span_name": {
                      "type": "string"
                    },
                    "trace_id": {
                      "type": "string"
                    },
                    "trace_name": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": "object"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "user",
                "required": false,
                "schema": {
                  "maxLength": 256,
                  "type": "string"
                },
                "type": "string"
              }
            ],
            "request_schema": {
              "$schema": "https://json-schema.org/draft/2020-12/schema",
              "additionalProperties": false,
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "3:4",
                    "9:16",
                    "4:3",
                    "16:9",
                    "21:9",
                    "9:21"
                  ]
                },
                "callback_url": {
                  "format": "uri",
                  "pattern": "^https://",
                  "type": "string",
                  "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                },
                "creativity": false,
                "duration": {
                  "enum": [
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                  ],
                  "maximum": 600,
                  "minimum": 1,
                  "type": "integer"
                },
                "frame_images": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "frame_type": {
                        "enum": [
                          "first_frame",
                          "last_frame"
                        ]
                      },
                      "image_url": {
                        "additionalProperties": false,
                        "properties": {
                          "url": {
                            "format": "uri",
                            "pattern": "^https://",
                            "type": "string",
                            "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url",
                      "frame_type"
                    ],
                    "type": "object"
                  },
                  "maxItems": 2,
                  "minItems": 1,
                  "type": "array",
                  "x-source-unique-role": "frame_type"
                },
                "generate_audio": {
                  "enum": [
                    false,
                    true
                  ],
                  "x-omitted-default": "published audio capability when true/false; unknown if null; output audio must be measured"
                },
                "input_references": {
                  "items": {
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "properties": {
                          "image_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "image_url"
                          }
                        },
                        "required": [
                          "type",
                          "image_url"
                        ],
                        "type": "object"
                      },
                      {
                        "additionalProperties": false,
                        "properties": {
                          "audio_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "audio_url"
                          }
                        },
                        "required": [
                          "type",
                          "audio_url"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  "type": "array"
                },
                "model": {
                  "const": "bytedance/seedance-2.0-mini"
                },
                "previous_job_id": false,
                "prompt": {
                  "minLength": 1,
                  "type": "string",
                  "x-source-max-utf8-bytes": 10000,
                  "x-source-non-whitespace": true
                },
                "provider": false,
                "resolution": {
                  "enum": [
                    "480p",
                    "720p"
                  ]
                },
                "seed": {
                  "maximum": 9223372036854775807,
                  "minimum": -9223372036854775808,
                  "type": "integer"
                },
                "session_id": {
                  "maxLength": 256,
                  "type": "string"
                },
                "size": {
                  "enum": [
                    "480x480",
                    "480x640",
                    "480x854",
                    "640x480",
                    "854x480",
                    "1120x480",
                    "720x720",
                    "720x960",
                    "720x1280",
                    "720x1680",
                    "960x720",
                    "1280x720",
                    "1680x720"
                  ],
                  "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                  "type": "string"
                },
                "trace": {
                  "additionalProperties": true,
                  "properties": {
                    "generation_name": {
                      "type": "string"
                    },
                    "parent_span_id": {
                      "type": "string"
                    },
                    "span_name": {
                      "type": "string"
                    },
                    "trace_id": {
                      "type": "string"
                    },
                    "trace_name": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "upscale_factor": false,
                "user": {
                  "maxLength": 256,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt",
                "duration"
              ],
              "title": "Video generation request",
              "type": "object",
              "x-source-global-rules": [
                "No null values or duplicate keys at any JSON object level",
                "No duration/resolution/aspect default is inserted",
                "Prompt required for all21 despite broader official image-only schema",
                "A request must also pass model membership, exact price card, SKU selection and frozen quote construction",
                "Non-string known trace fields reject; other trace keys retain arbitrary JSON",
                "No n/output-count/client price fields accepted",
                "Provider passthrough disabled for all21; feed allowlist names do not supply provider slug/value contract"
              ],
              "x-source-material-combinations": [
                "Exact model/card, positive published duration, model resolution/aspect membership and valid frozen quote are all required; independent enum arrays are not proven provider Cartesian combinations.",
                "Use exact published size or compatible resolution/aspect. Omitted options stay omitted; no guessed geometry.",
                "first_frame/last_frame roles each occur at most once; frame_images wins mode precedence over input_references.",
                "provider options are unavailable for this model despite any published passthrough-name allowlist.",
                "Request geometry is required for the pre-generation estimate and reserve. Returned geometry and track time describe the generated output; final charge follows the actual billed configuration.",
                "Video references with *_with_video_input quantity are rejected; image/audio references only where model reference types admit them."
              ]
            },
            "unsupported": [
              "provider",
              "previous_job_id",
              "upscale_factor",
              "creativity"
            ]
          },
          "input": {
            "additional_properties": false,
            "content_type": "application/json",
            "material_types": [
              "text",
              "image",
              "audio"
            ],
            "optional_controls": [
              "resolution",
              "aspect_ratio",
              "generate_audio",
              "frame_images",
              "input_references",
              "size",
              "seed",
              "callback_url",
              "session_id",
              "trace",
              "user"
            ],
            "required": [
              "model",
              "prompt",
              "duration"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{public_id}/content",
                "query": {
                  "index": "actual output index"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "mode": "submit_once_poll_original",
            "public_id": "video_<uuid>; owner user/key/group scope",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{public_id}"
              }
            ],
            "submit_status": 202,
            "terminal_failure_public": "200 failed + charge_pending_check=true; inspect original operation",
            "terminal_provider_states": [
              "failed",
              "cancelled",
              "expired"
            ],
            "unknown": "503 result_pending_check + originalid + X-Should-Retry:false; never replay original"
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_video",
            "image_to_video_frame_images",
            "reference_to_video"
          ],
          "output": {
            "content_range_supported": true,
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "condition": "Always present for each completed output.",
                "description": "Zero-based position of this video in the outputs list.",
                "field_path": "outputs[].index",
                "json_schema": {
                  "type": "integer"
                },
                "name": "index",
                "nullable": false,
                "type": "integer"
              },
              {
                "condition": "Present after the owned result is available and a signed URL is created.",
                "description": "Signed HTTPS download URL for this completed video.",
                "field_path": "outputs[].content_url",
                "json_schema": {
                  "type": "string"
                },
                "name": "content_url",
                "nullable": false,
                "type": "string"
              },
              {
                "condition": "A nonempty recorded digest is returned; otherwise null.",
                "description": "SHA-256 digest of the original video bytes; null if unavailable.",
                "field_path": "outputs[].sha256",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "sha256",
                "nullable": true,
                "type": "string | null"
              },
              {
                "condition": "Returned when the recorded file size is positive.",
                "description": "Size of the original video file in bytes; null if unavailable.",
                "field_path": "outputs[].size_bytes",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "size_bytes",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Returned when the measured duration is positive.",
                "description": "Measured video duration in milliseconds; null if unavailable.",
                "field_path": "outputs[].duration_ms",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "duration_ms",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Width, height and the video codec are returned together when recorded.",
                "description": "Video width in pixels; null if unavailable.",
                "field_path": "outputs[].width",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "width",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Width, height and the video codec are returned together when recorded.",
                "description": "Video height in pixels; null if unavailable.",
                "field_path": "outputs[].height",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "height",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Returned together with positive recorded width and height.",
                "description": "Video codec identifier; null if not recorded.",
                "field_path": "outputs[].video_codec",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "video_codec",
                "nullable": true,
                "type": "string | null"
              },
              {
                "condition": "Returned when width, height and the video codec are recorded; false is a known result.",
                "description": "Whether the video contains an audio track; null if not measured.",
                "field_path": "outputs[].has_audio",
                "json_schema": {
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "name": "has_audio",
                "nullable": true,
                "type": "boolean | null"
              },
              {
                "condition": "Returned when video metadata is recorded and the audio codec identifier is nonempty.",
                "description": "Audio codec identifier; null when no identifier is recorded.",
                "field_path": "outputs[].audio_codec",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "audio_codec",
                "nullable": true,
                "type": "string | null"
              }
            ],
            "format": "original MP4 bytes; no normalization/transcode",
            "max_aggregate_seconds": 2400,
            "max_bytes_per_output": 67108864,
            "max_seconds_per_output": 600,
            "result": "signed owned content URLs",
            "unmeasured_fields_nullable": true
          }
        },
        "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"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "No additional condition is declared in this pricing key.",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "kirish: with_video_input",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.0042000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_with_video_input",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.0000042",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "reference",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "audio: without_audio",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_without_audio",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Yaratishning taxminiy qiymati",
            "units": [
              {
                "amount": "0.1512",
                "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.1512",
                "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}\"\npython3 - <<'PY_REQUEST'\nfrom pathlib import Path\nPath('request.json').write_text('{\"model\":\"bytedance/seedance-2.0-mini\",\"prompt\":\"A serene mountain landscape at sunset\",\"duration\":4,\"resolution\":\"480p\",\"size\":\"480x480\",\"generate_audio\":false}', encoding='utf-8')\nPY_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\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('result.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "curl · create video",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_STATUS_URL'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote\nr=json.loads(Path('result.json').read_text())\nif not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')\nPath('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))\nPY_STATUS_URL\ncurl --fail-with-body --silent --show-error \"$(cat status-url.txt)\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -D status-headers.txt -o status.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('status.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "GET original status",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path('status.json').read_text())\nif r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')\nif not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')\nurls=[]\nfor i,u in enumerate(r.get('data',[])):\n    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')\n    urls.append((str(i),u))\nfor label,path in urls:\n    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)\n    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')\n    target=Path('owned-'+label+'.bin')\n    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)\nprint('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')\nPY_ASSETS\n",
            "label": "Save every completed owned output",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "hints": [],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image",
          "audio"
        ],
        "label": "Видео",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "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"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "No additional condition is declared in this pricing key.",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "input: with_video_input",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.0042000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_with_video_input",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.0000042",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "reference",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "audio: without_audio",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_without_audio",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_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.1512",
                "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.1512",
                "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": "bytedance/seedance-2.0-mini",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{public_id}",
          "GET /v1/videos/{public_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.007000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.000007",
            "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_token"
          },
          {
            "amount": "0.0042000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens_with_video_input",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.0000042",
            "native_quantity": 1,
            "public_unit_label": "per 1,000 video tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "reference",
            "unit": "video_token"
          },
          {
            "amount": "0.007000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens_without_audio",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.000007",
            "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_token"
          },
          {
            "amount": "0.1512",
            "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.1512",
            "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": "bytedance/seedance-2.0-mini",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "5b719ad36f9dba87ce5495c54afa0fa340cda49d302b62951529ae57a1ee906e",
    "input_html_sha256": "e30decdc681efb21567f590c1a6dcd8e41cd1e60f6bdeb7865d0f123a31271a5",
    "private_audit_sha256": "08c0b5bcfd2a43519c6e857e4cd9b17e7df328ca2a9d7bc863c0f9132ac5cdf0",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/uz/bytedance-seedance-2-0-mini/",
    "description": "Seedance 2.0 Mini matn, rasm, video va audio namunalaridan ixtiyoriy yaratilgan tovush bilan qisqa videolar yaratadi. U sahna yaratish, aniq video tahrirlari va davom ettirishni qo‘llab-quvvatlaydi; chiqish profili 480p yoki 720p sifatida hujjatlashtirilgan.",
    "locale": "uz",
    "md_url": "https://ailoot.ai/models/uz/bytedance-seedance-2-0-mini/index.md",
    "title": "ByteDance: Seedance 2.0 Mini — Ailoot",
    "url": "https://ailoot.ai/models/uz/bytedance-seedance-2-0-mini/"
  },
  "rawModel": {
    "about": "Seedance 2.0 Mini — ByteDance ning Seedance 2.0 audiovizual oilasidagi alohida nomlangan model. Ishlab chiqaruvchi matndan video, birinchi kadr hamda birinchi va oxirgi kadr orqali rasmdan video, multimodal namunali yaratish, video tahrirlash va uzaytirishni hujjatlashtiradi. Tovush tasvir bilan birga yaratilishi mumkin. Yaratish rejimini mavjud materialga qarab tanlang: yozma topshiriq, qat’iy boshlang‘ich rasm, ikki chegara kadri yoki tahrir yoxud davom kerak bo‘lgan klip.\n\nMini o‘z chiqish profiliga ega. Ishlab chiqaruvchi 8-bit rangli, soniyasiga 24 kadrli va MP4 chiqishli 480p hamda 720p videoni sanaydi. Qo‘llab-quvvatlanadigan tomonlar nisbati 21:9, 16:9, 4:3, 1:1, 3:4 va 9:16; hujjatlashtirilgan yaratish davomiyligi 4–15 soniya. Ishlab chiqaruvchining davomiylik boshqaruvi shu oraliqda avtomatik tanlashga ham ruxsat beradi. To‘liq Seedance 2.0 modelining 1080p va 4K variantlari alohida; ular Mini sozlamalari emas. Oila imkoniyatlari jadvali oxirgi yaratilgan kadrni qaytarishni sanaydi, Draft rejimi esa qo‘llab-quvvatlanmaydi.\n\nOmni reference berilgan materialdan tanlangan ma’lumot bilan yangi sahna yaratadi. Rasm obyekt ko‘rinishi, kompozitsiya yoki vizual ishlovni belgilashi mumkin. Video harakat, kamera yurishi yoki effektni, audio namuna esa ovoz tembri, kuy yoki aytiladigan mazmunni belgilashi mumkin. Har bir namunaning barcha xususiyatlarini ko‘chirishni so‘ramay, undan nimani olish kerakligini modelga ayting. Masalan, shakl va rang uchun mahsulot fotosi, yaqinlashish uchun qisqa kamera harakati klipi va muhit uchun tovush namunasidan foydalaning.\n\nOila jarayoni to‘qqiztagacha namuna rasm, uchta video klip va uchta audio klipga ruxsat beradi. Video namunalari har biri 2–15 soniya, jami esa 15 soniyadan oshmaydi; audio namunalarida ham har bir klip va umumiy davomiylik chegaralari shu. Faqat audio hamda vizual namunasiz matn va audio qo‘llab-quvvatlanadigan namuna birikmalari emas. Faqat matndan yaratish alohida qo‘llab-quvvatlanadigan rejim. Ketma-ketlikda materiallarni kerakli tartibda bering va har bir media turidagi tartib asosida ularni izchil Image 1, Video 1 yoki Audio 1 deb atang. Yozma ko‘rsatmada raqamlangan namuna o‘rniga material identifikatorini qo‘ymang.\n\nBirinchi kadr rasmi rasmga asoslangan kadrning boshlanishini belgilaydi. Birinchi va oxirgi kadr rejimi har ikki chegarani belgilaydi. Aynan shu chegara rasmlari muhim bo‘lsa, omni-reference ko‘rsatmasida namunalarni boshlanish va yakun deb tasvirlash o‘rniga maxsus rejimni tanlang. Ikkinchisi ko‘rsatma orqali yo‘naltirilgan ta’sir bo‘lib, qat’iy chegara kadri tanloviga teng emas. Rasmlarni chiqish kompozitsiyasiga mos tayyorlang va boshlang‘ich hamda oxirgi holatlarni bog‘lovchi harakatni ayting.\n\nVideo tahrirlash mavjud klipni faqat ilhom sifatida ishlatmay, uning o‘zini o‘zgartiradi. Tahrirlanadigan video, o‘zgartiriladigan buyum yoki soha, uning paydo bo‘lish vaqti va joyi hamda saqlanadigan detallarni belgilang. Foydali topshiriq: “Video 1 da krujkani Image 1 da ko‘rsatilgan idish bilan almashtiring; qo‘l harakati, kadr tuzilishi, yorug‘lik va stol joylashuvini saqlang.” Olib tashlashda keraksiz buyum va qolishi kerak bo‘lgan atrof elementlarini nomlang. Yaratuvchi tahrir yoki uzaytirishda nishondagi videoni to‘g‘ridan-to‘g‘ri atashni maslahat beradi; uni namuna deb ifodalash yangi sahna yaratish so‘rovini anglatishi mumkin.\n\nVideo uzaytirish mavjud klipdan oldin yoki keyin voqealar qo‘shadi. Davom yo‘nalishini va keyin yoki oldin nima sodir bo‘lishini tasvirlang. Hujjatlashtirilgan jarayon ikki yoki uch klipni yaratilgan o‘tishlar bilan ham bog‘laydi; uch kirish videosi birgalikda baribir 15 soniyalik namuna budjetiga sig‘adi. Qo‘llanma asosan asl klipning chegara lavhasini o‘z ichiga olgan davomni asl mazmunni aniq saqlash so‘rovidan farqlaydi. Natija tarkibini ayting: faqat davom yoki berilgan klip va yangi harakatni o‘z ichiga olgan sahna.\n\nAniq rejissyorlik uchun barqaror sahna tavsifini voqealar ketma-ketligidan ajrating. Har bir obyektni ikki yoki uch farqlovchi vizual xususiyat va izchil belgi bilan ta’riflang. Keyin harakatlar, joy, yorug‘lik, kamera harakati, vizual uslub va shartlarni tasvirlang. Dialogda har bir gapni so‘zlovchi va tegishli harakat bilan bog‘lang. Aniq vaqt belgilarini ishonchli boshqaruv deb qabul qilmay, tartiblangan kadr belgilarini ishlating: yaratuvchi aniq vaqt beqaror bo‘lishi mumkinligini qayd etadi. Bosqichlangan mahsulot topshirig‘i: “Image 1 Mahsulot A ni belgilaydi. Kadr 1: peshtaxtadagi Mahsulot A ga sekin yaqinlashing. Kadr 2: qo‘l uni yorug‘likka buradi. Kadr 3: old yorliqda to‘xtang. Yumshoq xona shovqini; bosma yozuvni saqlang.”\n\nNamunalarni hujjatlashtirilgan oila kirish qoidalariga tayyorlang. Qo‘llab-quvvatlanadigan rasm formatlari JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC va HEIF; har bir rasm 30 MB dan kichik. Qo‘llanma rasm eni va bo‘yini qat’iy 300 bilan 6,000 piksel orasida, tomonlar nisbatini esa qat’iy 0.4 bilan 2.5 orasida belgilaydi. Video namunalari H.264 yoki H.265 video va AAC yoki MP3 audio bilan MP4 yoki MOV ishlatadi; har biri ko‘pi bilan 200 MB va soniyasiga 24–60 kadr. Eni va bo‘yi 300–6,000 piksel, tomonlar nisbati 0.4–2.5, umumiy piksel soni 407,696–8,295,044. Audio namunalari WAV yoki MP3 va har biri ko‘pi bilan 15 MB. Bular muayyan ilovaning yuklash boshqaruvlaridan alohida, ishlab chiqaruvchining kirishni tayyorlash spetsifikatsiyalaridir.\n\nYaratuvchining portret jarayoni haqiqiy inson yuzlari bor rasm yoki videolar uchun maxsus tayyorgarlik talab qiladi: namunani to‘g‘ridan-to‘g‘ri yuklash standart qo‘llab-quvvatlanadigan yo‘l emas. U ishonchli model chiqishlari, tayyor raqamli qahramonlar va ruxsatli haqiqiy shaxs materiali jarayonini alohida yechimlar sifatida hujjatlashtiradi. Ovoz mosligi, talaffuz va klip chegarasidagi tovush ham tekshirilishi kerak. Ko‘rsatma qo‘llanmasi kerakli ovoz xususiyatlarini tasvirlash va dialog uslubini audio namunaga yaqin tutishni tavsiya qiladi. Yakuniy artefaktni obyekt izchilligi, aynan aytilgan so‘zlar, harakat vaqti, kadr o‘tishlari va yakuniy audio bo‘yicha tekshiring; topshiriqdan farq qilgan aniq elementni tuzating.",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance",
    "available": null,
    "canonical_model": "bytedance/seedance-2.0-mini",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text",
        "image",
        "video",
        "audio"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.1512",
            "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.1512",
            "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": "Konfiguratsiya narxlari tafsilotlarda to‘liq ko‘rsatilgan."
      }
    ],
    "ctx": null,
    "declared_tariff_references": [
      {
        "client_selectable": false,
        "key": "0b52dda4bb8d8eb2776e0f56",
        "label": "Video sozlamalari narxiga havolalar",
        "profiles": [
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "Ushbu narxlash kalitida qo‘shimcha shart ko‘rsatilmagan."
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.007",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "key": "video_token",
                "label": "Video-token price",
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "rate_role": "typed_video_token_primary_reference",
                "side": "out",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "ovoz: without_audio"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.007",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "key": "video_token",
                "label": "Video-token price",
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "rate_role": "typed_video_token_primary_reference",
                "side": "out",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "kirish: with_video_input"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.0042",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "key": "video_token",
                "label": "Video-token price",
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "rate_role": "typed_video_token_primary_reference",
                "side": "reference",
                "unit": "video_token"
              }
            ]
          }
        ]
      }
    ],
    "entity_type": "model",
    "formats": [
      "videos"
    ],
    "id": "bytedance/seedance-2.0-mini",
    "input": [
      "text",
      "image",
      "audio"
    ],
    "kind": "video",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "Ko‘rsatilgan tariflar xarajatni generatsiyadan oldin taxminiy hisoblash uchun xizmat qiladi. Yakuniy to‘lov dastlabki generatsiya uchun qayd etilgan xarajat asosida hisoblanadi. Natijaning o‘lchangan davomiyligi va oldindan taxmin qilingan miqdorlar haq undiriladigan yakuniy miqdor hisoblanmaydi.",
          "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": {
            "all_results": "Egalik qilinadigan har bir haqiqiy chiqish natijasini va u bilan qaytarilgan o‘lchangan metama’lumotlarni saqlang.",
            "defaults": {
              "aspect_ratio": null,
              "duration": null,
              "generate_audio": "endpoint capability flag when published; omitted unknown stays unknown; never guarantees audio track",
              "resolution": null,
              "seed": null,
              "size": null,
              "wire_omissions_preserved": true
            },
            "errors": [
              {
                "condition": "Videoga kirish mavjud emas yoki ushbu video ID si topilmadi.",
                "http_status": 404,
                "public_identifier_field": "error.type",
                "recovery": "Videoga kirishni tekshiring. Mavjud video uchun uning dastlabki ochiq ID si va ayni API kalitidan foydalaning.",
                "type": "not_found_error"
              },
              {
                "condition": "API kaliti autentifikatsiyadan o‘tgan hisobga mos kelmaydi.",
                "http_status": 401,
                "public_identifier_field": "error.type",
                "recovery": "Yuborishdan oldin API kalitingiz va hisobga kirishingizni tekshiring.",
                "type": "authentication_error"
              },
              {
                "condition": "So‘rovni o‘qib bo‘lmadi yoki yuklab olish indeksi yaroqsiz.",
                "http_status": 400,
                "public_identifier_field": "error.type",
                "recovery": "So‘rov tanasini tuzating. Yuklab olish uchun dastlabki vazifa qaytargan chiqish indeksini tanlang.",
                "type": "invalid_request_error"
              },
              {
                "condition": "Tanlangan video sozlamasining narxini hisoblab bo‘lmaydi.",
                "http_status": 422,
                "public_identifier_field": "error.type",
                "recovery": "Tuzatilgan so‘rovni yuborishdan oldin qo‘llab-quvvatlanadigan video sozlamasini tanlang va uning majburiy parametrlarini to‘ldiring.",
                "type": "price_unavailable"
              },
              {
                "condition": "Video kirishi yoki dastlabki davom ettirish vazifasi yaroqsiz.",
                "http_status": 422,
                "public_identifier_field": "error.type",
                "recovery": "Yaroqli HTTPS kirishlaridan foydalaning. Davom ettirish uchun yakunlangan dastlabki videongizning ochiq ID si va ayni API kalitidan foydalaning.",
                "type": "invalid_request_error"
              },
              {
                "condition": "Mavjud balans yoki limitlar mablag‘ni band qilishga imkon bermaydi.",
                "http_status": 402,
                "public_identifier_field": "error.type",
                "recovery": "Yangi so‘rov yuborishdan oldin mavjud balans va limitlaringizni tekshiring.",
                "type": "billing_error"
              },
              {
                "condition": "Videoni tekshirish, saqlash yoki xizmatga kirish vaqtincha mavjud emas.",
                "http_status": 503,
                "public_identifier_field": "error.type",
                "recovery": "Xizmat mavjud bo‘lishini kuting. Video ID si allaqachon bo‘lsa, boshqa yaratishni boshlash o‘rniga shu dastlabki vazifani tekshiring.",
                "type": "server_error"
              },
              {
                "code": "result_pending_check",
                "condition": "Dastlabki video natijasi va to‘lovni tekshirish kerak.",
                "http_status": 503,
                "public_identifier_field": "error.code",
                "recovery": "Qaytarilgan video ID sini saqlang va shu vazifani tekshiring. U tekshirilayotgan paytda o‘rniga boshqa yaratish so‘rovini yubormang.",
                "type": "server_error"
              },
              {
                "code": "owned_result_unavailable",
                "condition": "Mavjud videoni yuklab olish vaqtincha ishlamayapti.",
                "http_status": 503,
                "public_identifier_field": "error.code",
                "recovery": "Keyinroq ayni video vazifasini tekshiring va uning mavjud chiqishini yuklab oling. Yangi yaratish alohida operatsiya hosil qiladi.",
                "type": "server_error"
              },
              {
                "condition": "Video mazmuni e’lon qilinmagan.",
                "http_status": 409,
                "public_identifier_field": "error.type",
                "recovery": "Dastlabki vazifa holatini tekshiring. completed bildirgach yuklab oling; failed bildirsa, uning to‘lovni tekshirish bildirishnomasiga rioya qiling.",
                "type": "video_not_ready"
              }
            ],
            "hints": [
              "No null values or duplicate keys at any JSON object level",
              "No duration/resolution/aspect default is inserted",
              "Prompt required for all21 despite broader official image-only schema",
              "A request must also pass model membership, exact price card, SKU selection and frozen quote construction",
              "Non-string known trace fields reject; other trace keys retain arbitrary JSON",
              "No n/output-count/client price fields accepted",
              "Provider passthrough disabled for all21; feed allowlist names do not supply provider slug/value contract"
            ],
            "ignored_fields": [],
            "lifecycle": {
              "cancel_endpoint": null,
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{public_id}/content",
                  "query": {
                    "index": "actual output index"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "mode": "submit_once_poll_original",
              "public_id": "video_<uuid>; owner user/key/group scope",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{public_id}"
                }
              ],
              "submit_status": 202,
              "terminal_failure_public": "200 failed + charge_pending_check=true; inspect original operation",
              "terminal_provider_states": [
                "failed",
                "cancelled",
                "expired"
              ],
              "unknown": "503 result_pending_check + dastlabki id + X-Should-Retry:false; dastlabki so‘rovni hech qachon qayta yubormang"
            },
            "material_combinations": [
              {
                "mode": "text_to_video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "Matnli ko‘rsatma va qo‘llab-quvvatlanadigan butun soniyali davomiylikni bering. Ro‘yxatdagi aniq o‘lchamdan yoki ro‘yxatdagi o‘lchamlarga mos keladigan aniqlik va tomonlar nisbatidan foydalaning.",
                "required": [
                  "model",
                  "prompt",
                  "duration"
                ],
                "required_material": "Yozma ko‘rsatma."
              },
              {
                "exact_keys": [
                  "type",
                  "image_url",
                  "frame_type"
                ],
                "mode": "image_to_video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "frame_images — type=image_url, url saqlovchi image_url va frame_type maydonlaridan iborat obyektlar massivi. Ochiq HTTPS rasm URL idan foydalaning; first_frame va last_frame har biri bir martadan uchrashi mumkin. Ro‘yxatdagi chiqish o‘lchami yoki mos o‘lchamlardan foydalaning. Video referenslarni qo‘shmang.",
                "required": [
                  "model",
                  "prompt",
                  "duration",
                  "frame_images"
                ],
                "required_material": "Yozma ko‘rsatma va kadr rasmi."
              },
              {
                "mode": "Reference to video",
                "model": {
                  "enum": [
                    "bytedance/seedance-2.0-mini"
                  ],
                  "enum_known": true,
                  "type": "string"
                },
                "prompt": {
                  "max_utf8_bytes": 10000,
                  "non_whitespace": true,
                  "type": "string"
                },
                "representation": "input_references — massiv. Har bir obyektda type=image_url yoki type=audio_url hamda url saqlovchi mos URL obyekti mavjud. Ochiq HTTPS havolalaridan foydalaning. Referens rejimini tanlash uchun frame_images ni yubormang. Video referenslar narxini hisoblab bo‘lmaydi.",
                "required": [
                  "model",
                  "prompt",
                  "duration",
                  "input_references"
                ],
                "required_material": "Yozma ko‘rsatma va rasm yoki audio referenslari."
              }
            ],
            "operation_modes": [
              "text_to_video",
              "image_to_video_frame_images",
              "reference_to_video"
            ],
            "outputs": {
              "content_range_supported": true,
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "condition": "Always present for each completed output.",
                  "description": "Ushbu videoning chiqishlar ro‘yxatidagi noldan boshlanuvchi o‘rni.",
                  "field_path": "outputs[].index",
                  "json_schema": {
                    "type": "integer"
                  },
                  "name": "index",
                  "nullable": false,
                  "type": "integer"
                },
                {
                  "condition": "Present after the owned result is available and a signed URL is created.",
                  "description": "Ushbu yakunlangan video uchun imzolangan HTTPS yuklab olish URL i.",
                  "field_path": "outputs[].content_url",
                  "json_schema": {
                    "type": "string"
                  },
                  "name": "content_url",
                  "nullable": false,
                  "type": "string"
                },
                {
                  "condition": "A nonempty recorded digest is returned; otherwise null.",
                  "description": "Dastlabki video baytlarining SHA-256 xeshi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].sha256",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "sha256",
                  "nullable": true,
                  "type": "string | null"
                },
                {
                  "condition": "Returned when the recorded file size is positive.",
                  "description": "Dastlabki video faylining baytlardagi hajmi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].size_bytes",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "size_bytes",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Returned when the measured duration is positive.",
                  "description": "Videoning millisoniyalarda o‘lchangan davomiyligi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].duration_ms",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "duration_ms",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Width, height and the video codec are returned together when recorded.",
                  "description": "Videoning piksellardagi eni; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].width",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "width",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Width, height and the video codec are returned together when recorded.",
                  "description": "Videoning piksellardagi bo‘yi; mavjud bo‘lmasa null.",
                  "field_path": "outputs[].height",
                  "json_schema": {
                    "type": [
                      "integer",
                      "null"
                    ]
                  },
                  "name": "height",
                  "nullable": true,
                  "type": "integer | null"
                },
                {
                  "condition": "Returned together with positive recorded width and height.",
                  "description": "Video kodeki identifikatori; qayd etilmagan bo‘lsa null.",
                  "field_path": "outputs[].video_codec",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "video_codec",
                  "nullable": true,
                  "type": "string | null"
                },
                {
                  "condition": "Returned when width, height and the video codec are recorded; false is a known result.",
                  "description": "Videoda audio yo‘lak bor-yo‘qligi; o‘lchanmagan bo‘lsa null.",
                  "field_path": "outputs[].has_audio",
                  "json_schema": {
                    "type": [
                      "boolean",
                      "null"
                    ]
                  },
                  "name": "has_audio",
                  "nullable": true,
                  "type": "boolean | null"
                },
                {
                  "condition": "Returned when video metadata is recorded and the audio codec identifier is nonempty.",
                  "description": "Audio kodeki identifikatori; identifikator qayd etilmagan bo‘lsa null.",
                  "field_path": "outputs[].audio_codec",
                  "json_schema": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "name": "audio_codec",
                  "nullable": true,
                  "type": "string | null"
                }
              ],
              "format": "original MP4 bytes; no normalization/transcode",
              "max_aggregate_seconds": 2400,
              "max_bytes_per_output": 67108864,
              "max_seconds_per_output": 600,
              "result": "egalik qilinadigan mazmunning imzolangan URL lari",
              "unmeasured_fields_nullable": true
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "bytedance/seedance-2.0-mini"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "schema": {
                  "const": "bytedance/seedance-2.0-mini"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "minLength": 1,
                "name": "prompt",
                "required": true,
                "schema": {
                  "minLength": 1,
                  "type": "string",
                  "x-source-max-utf8-bytes": 10000,
                  "x-source-non-whitespace": true
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  4,
                  5,
                  6,
                  7,
                  8,
                  9,
                  10,
                  11,
                  12,
                  13,
                  14,
                  15
                ],
                "enum_known": true,
                "maximum": 600,
                "minimum": 1,
                "name": "duration",
                "required": true,
                "schema": {
                  "enum": [
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                  ],
                  "maximum": 600,
                  "minimum": 1,
                  "type": "integer"
                },
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "480p",
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": false,
                "schema": {
                  "enum": [
                    "480p",
                    "720p"
                  ]
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "1:1",
                  "3:4",
                  "9:16",
                  "4:3",
                  "16:9",
                  "21:9",
                  "9:21"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": false,
                "schema": {
                  "enum": [
                    "1:1",
                    "3:4",
                    "9:16",
                    "4:3",
                    "16:9",
                    "21:9",
                    "9:21"
                  ]
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "conditions": "generate_audio ni bermaslik audioli narxni, false esa audiosiz narxni tanlaydi. Audio yo‘lak qaytarilganini bilish uchun natijadagi has_audio ni tekshiring.",
                "default": null,
                "default_known": false,
                "enum": [
                  false,
                  true
                ],
                "enum_known": true,
                "name": "generate_audio",
                "required": false,
                "schema": {
                  "enum": [
                    false,
                    true
                  ],
                  "x-omitted-default": "published audio capability when true/false; unknown if null; output audio must be measured"
                },
                "type": "boolean"
              },
              {
                "availability": "source_interface",
                "conditions": "Bu kalitlar har bir kadr obyektiga tegishli. Faqat matnli so‘rov uchun frame_images ni yubormang.",
                "content": "Kadr obyektlari massivi. Har birida type=image_url, url saqlovchi image_url va frame_type=first_frame yoki last_frame bo‘ladi. Har bir vazifa ko‘pi bilan bir marta uchraydi. Ochiq HTTPS URL laridan foydalaning.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "exact_keys": [
                  "type",
                  "image_url",
                  "frame_type"
                ],
                "maxItems": 2,
                "max_items": 2,
                "minItems": 1,
                "min_items": 1,
                "name": "frame_images",
                "required": false,
                "schema": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "frame_type": {
                        "enum": [
                          "first_frame",
                          "last_frame"
                        ]
                      },
                      "image_url": {
                        "additionalProperties": false,
                        "properties": {
                          "url": {
                            "format": "uri",
                            "pattern": "^https://",
                            "type": "string",
                            "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url",
                      "frame_type"
                    ],
                    "type": "object"
                  },
                  "maxItems": 2,
                  "minItems": 1,
                  "type": "array",
                  "x-source-unique-role": "frame_type"
                },
                "type": "array"
              },
              {
                "availability": "source_interface",
                "conditions": "Referens rejimini ishlatish uchun frame_images ni yubormang. Ochiq HTTPS URL laridan foydalaning.",
                "content": "Rasm yoki audio referens obyektlari massivi. type qiymatini image_url yoki audio_url qilib belgilang va url saqlovchi mos URL obyektini bering. Video referenslar narxini hisoblab bo‘lmaydi.",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "input_references",
                "required": false,
                "schema": {
                  "items": {
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "properties": {
                          "image_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "image_url"
                          }
                        },
                        "required": [
                          "type",
                          "image_url"
                        ],
                        "type": "object"
                      },
                      {
                        "additionalProperties": false,
                        "properties": {
                          "audio_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "audio_url"
                          }
                        },
                        "required": [
                          "type",
                          "audio_url"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  "type": "array"
                },
                "type": "array"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "480x480",
                  "480x640",
                  "480x854",
                  "640x480",
                  "854x480",
                  "1120x480",
                  "720x720",
                  "720x960",
                  "720x1280",
                  "720x1680",
                  "960x720",
                  "1280x720",
                  "1680x720"
                ],
                "enum_known": true,
                "name": "size",
                "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                "required": false,
                "schema": {
                  "enum": [
                    "480x480",
                    "480x640",
                    "480x854",
                    "640x480",
                    "854x480",
                    "1120x480",
                    "720x720",
                    "720x960",
                    "720x1280",
                    "720x1680",
                    "960x720",
                    "1280x720",
                    "1680x720"
                  ],
                  "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                  "type": "string"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum": 9223372036854775807,
                "minimum": -9223372036854775808,
                "name": "seed",
                "required": false,
                "schema": {
                  "maximum": 9223372036854775807,
                  "minimum": -9223372036854775808,
                  "type": "integer"
                },
                "type": "integer"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "callback_url",
                "pattern": "^https://",
                "required": false,
                "schema": {
                  "format": "uri",
                  "pattern": "^https://",
                  "type": "string",
                  "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "session_id",
                "required": false,
                "schema": {
                  "maxLength": 256,
                  "type": "string"
                },
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "name": "trace",
                "required": false,
                "schema": {
                  "additionalProperties": true,
                  "properties": {
                    "generation_name": {
                      "type": "string"
                    },
                    "parent_span_id": {
                      "type": "string"
                    },
                    "span_name": {
                      "type": "string"
                    },
                    "trace_id": {
                      "type": "string"
                    },
                    "trace_name": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": "object"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maxLength": 256,
                "name": "user",
                "required": false,
                "schema": {
                  "maxLength": 256,
                  "type": "string"
                },
                "type": "string"
              }
            ],
            "request_schema": {
              "$schema": "https://json-schema.org/draft/2020-12/schema",
              "additionalProperties": false,
              "properties": {
                "aspect_ratio": {
                  "enum": [
                    "1:1",
                    "3:4",
                    "9:16",
                    "4:3",
                    "16:9",
                    "21:9",
                    "9:21"
                  ]
                },
                "callback_url": {
                  "format": "uri",
                  "pattern": "^https://",
                  "type": "string",
                  "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                },
                "creativity": false,
                "duration": {
                  "enum": [
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13,
                    14,
                    15
                  ],
                  "maximum": 600,
                  "minimum": 1,
                  "type": "integer"
                },
                "frame_images": {
                  "items": {
                    "additionalProperties": false,
                    "properties": {
                      "frame_type": {
                        "enum": [
                          "first_frame",
                          "last_frame"
                        ]
                      },
                      "image_url": {
                        "additionalProperties": false,
                        "properties": {
                          "url": {
                            "format": "uri",
                            "pattern": "^https://",
                            "type": "string",
                            "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                          }
                        },
                        "required": [
                          "url"
                        ],
                        "type": "object"
                      },
                      "type": {
                        "const": "image_url"
                      }
                    },
                    "required": [
                      "type",
                      "image_url",
                      "frame_type"
                    ],
                    "type": "object"
                  },
                  "maxItems": 2,
                  "minItems": 1,
                  "type": "array",
                  "x-source-unique-role": "frame_type"
                },
                "generate_audio": {
                  "enum": [
                    false,
                    true
                  ],
                  "x-omitted-default": "published audio capability when true/false; unknown if null; output audio must be measured"
                },
                "input_references": {
                  "items": {
                    "oneOf": [
                      {
                        "additionalProperties": false,
                        "properties": {
                          "image_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "image_url"
                          }
                        },
                        "required": [
                          "type",
                          "image_url"
                        ],
                        "type": "object"
                      },
                      {
                        "additionalProperties": false,
                        "properties": {
                          "audio_url": {
                            "additionalProperties": false,
                            "properties": {
                              "url": {
                                "format": "uri",
                                "pattern": "^https://",
                                "type": "string",
                                "x-source-rule": "public HTTPS; no userinfo, fragment, whitespace, private/reserved hosts; own-media links additionally require owner/signature/status/hash/MIME/bytes"
                              }
                            },
                            "required": [
                              "url"
                            ],
                            "type": "object"
                          },
                          "type": {
                            "const": "audio_url"
                          }
                        },
                        "required": [
                          "type",
                          "audio_url"
                        ],
                        "type": "object"
                      }
                    ]
                  },
                  "type": "array"
                },
                "model": {
                  "const": "bytedance/seedance-2.0-mini"
                },
                "previous_job_id": false,
                "prompt": {
                  "minLength": 1,
                  "type": "string",
                  "x-source-max-utf8-bytes": 10000,
                  "x-source-non-whitespace": true
                },
                "provider": false,
                "resolution": {
                  "enum": [
                    "480p",
                    "720p"
                  ]
                },
                "seed": {
                  "maximum": 9223372036854775807,
                  "minimum": -9223372036854775808,
                  "type": "integer"
                },
                "session_id": {
                  "maxLength": 256,
                  "type": "string"
                },
                "size": {
                  "enum": [
                    "480x480",
                    "480x640",
                    "480x854",
                    "640x480",
                    "854x480",
                    "1120x480",
                    "720x720",
                    "720x960",
                    "720x1280",
                    "720x1680",
                    "960x720",
                    "1280x720",
                    "1680x720"
                  ],
                  "pattern": "^[1-9][0-9]*x[1-9][0-9]*$",
                  "type": "string"
                },
                "trace": {
                  "additionalProperties": true,
                  "properties": {
                    "generation_name": {
                      "type": "string"
                    },
                    "parent_span_id": {
                      "type": "string"
                    },
                    "span_name": {
                      "type": "string"
                    },
                    "trace_id": {
                      "type": "string"
                    },
                    "trace_name": {
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "upscale_factor": false,
                "user": {
                  "maxLength": 256,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt",
                "duration"
              ],
              "title": "Video generation request",
              "type": "object",
              "x-source-global-rules": [
                "No null values or duplicate keys at any JSON object level",
                "No duration/resolution/aspect default is inserted",
                "Prompt required for all21 despite broader official image-only schema",
                "A request must also pass model membership, exact price card, SKU selection and frozen quote construction",
                "Non-string known trace fields reject; other trace keys retain arbitrary JSON",
                "No n/output-count/client price fields accepted",
                "Provider passthrough disabled for all21; feed allowlist names do not supply provider slug/value contract"
              ],
              "x-source-material-combinations": [
                "Exact model/card, positive published duration, model resolution/aspect membership and valid frozen quote are all required; independent enum arrays are not proven provider Cartesian combinations.",
                "Use exact published size or compatible resolution/aspect. Omitted options stay omitted; no guessed geometry.",
                "first_frame/last_frame roles each occur at most once; frame_images wins mode precedence over input_references.",
                "provider options are unavailable for this model despite any published passthrough-name allowlist.",
                "Request geometry is required for the pre-generation estimate and reserve. Returned geometry and track time describe the generated output; final charge follows the actual billed configuration.",
                "Video references with *_with_video_input quantity are rejected; image/audio references only where model reference types admit them."
              ]
            },
            "unsupported": [
              "provider",
              "previous_job_id",
              "upscale_factor",
              "creativity"
            ]
          },
          "input": {
            "additional_properties": false,
            "content_type": "application/json",
            "material_types": [
              "text",
              "image",
              "audio"
            ],
            "optional_controls": [
              "resolution",
              "aspect_ratio",
              "generate_audio",
              "frame_images",
              "input_references",
              "size",
              "seed",
              "callback_url",
              "session_id",
              "trace",
              "user"
            ],
            "required": [
              "model",
              "prompt",
              "duration"
            ]
          },
          "lifecycle": {
            "cancel_endpoint": null,
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{public_id}/content",
                "query": {
                  "index": "actual output index"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "mode": "submit_once_poll_original",
            "public_id": "video_<uuid>; owner user/key/group scope",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{public_id}"
              }
            ],
            "submit_status": 202,
            "terminal_failure_public": "200 failed + charge_pending_check=true; inspect original operation",
            "terminal_provider_states": [
              "failed",
              "cancelled",
              "expired"
            ],
            "unknown": "503 result_pending_check + originalid + X-Should-Retry:false; never replay original"
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [],
          "operation_modes": [
            "text_to_video",
            "image_to_video_frame_images",
            "reference_to_video"
          ],
          "output": {
            "content_range_supported": true,
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "condition": "Always present for each completed output.",
                "description": "Zero-based position of this video in the outputs list.",
                "field_path": "outputs[].index",
                "json_schema": {
                  "type": "integer"
                },
                "name": "index",
                "nullable": false,
                "type": "integer"
              },
              {
                "condition": "Present after the owned result is available and a signed URL is created.",
                "description": "Signed HTTPS download URL for this completed video.",
                "field_path": "outputs[].content_url",
                "json_schema": {
                  "type": "string"
                },
                "name": "content_url",
                "nullable": false,
                "type": "string"
              },
              {
                "condition": "A nonempty recorded digest is returned; otherwise null.",
                "description": "SHA-256 digest of the original video bytes; null if unavailable.",
                "field_path": "outputs[].sha256",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "sha256",
                "nullable": true,
                "type": "string | null"
              },
              {
                "condition": "Returned when the recorded file size is positive.",
                "description": "Size of the original video file in bytes; null if unavailable.",
                "field_path": "outputs[].size_bytes",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "size_bytes",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Returned when the measured duration is positive.",
                "description": "Measured video duration in milliseconds; null if unavailable.",
                "field_path": "outputs[].duration_ms",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "duration_ms",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Width, height and the video codec are returned together when recorded.",
                "description": "Video width in pixels; null if unavailable.",
                "field_path": "outputs[].width",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "width",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Width, height and the video codec are returned together when recorded.",
                "description": "Video height in pixels; null if unavailable.",
                "field_path": "outputs[].height",
                "json_schema": {
                  "type": [
                    "integer",
                    "null"
                  ]
                },
                "name": "height",
                "nullable": true,
                "type": "integer | null"
              },
              {
                "condition": "Returned together with positive recorded width and height.",
                "description": "Video codec identifier; null if not recorded.",
                "field_path": "outputs[].video_codec",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "video_codec",
                "nullable": true,
                "type": "string | null"
              },
              {
                "condition": "Returned when width, height and the video codec are recorded; false is a known result.",
                "description": "Whether the video contains an audio track; null if not measured.",
                "field_path": "outputs[].has_audio",
                "json_schema": {
                  "type": [
                    "boolean",
                    "null"
                  ]
                },
                "name": "has_audio",
                "nullable": true,
                "type": "boolean | null"
              },
              {
                "condition": "Returned when video metadata is recorded and the audio codec identifier is nonempty.",
                "description": "Audio codec identifier; null when no identifier is recorded.",
                "field_path": "outputs[].audio_codec",
                "json_schema": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "name": "audio_codec",
                "nullable": true,
                "type": "string | null"
              }
            ],
            "format": "original MP4 bytes; no normalization/transcode",
            "max_aggregate_seconds": 2400,
            "max_bytes_per_output": 67108864,
            "max_seconds_per_output": 600,
            "result": "signed owned content URLs",
            "unmeasured_fields_nullable": true
          }
        },
        "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"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "No additional condition is declared in this pricing key.",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "Video token tarifi asosiy narx ma’lumotidir. Soniyasiga ko‘rsatilgan umumiy narx taxminlari alohida ma’lumot bo‘lib, qo‘shimcha to‘lov hisoblanmaydi.",
            "dimensions": {
              "conditions": "kirish: with_video_input",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video tokeni narxi",
            "units": [
              {
                "amount": "0.0042000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_with_video_input",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.0000042",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "reference",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "audio: without_audio",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_without_audio",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "Bu taxmin qo‘shimcha to‘lov ham, tugallangan generatsiya uchun qat’iy tarif ham emas.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Yaratishning taxminiy qiymati",
            "units": [
              {
                "amount": "0.1512",
                "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.1512",
                "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}\"\npython3 - <<'PY_REQUEST'\nfrom pathlib import Path\nPath('request.json').write_text('{\"model\":\"bytedance/seedance-2.0-mini\",\"prompt\":\"A serene mountain landscape at sunset\",\"duration\":4,\"resolution\":\"480p\",\"size\":\"480x480\",\"generate_audio\":false}', encoding='utf-8')\nPY_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\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('result.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "curl · create video",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\npython3 - <<'PY_STATUS_URL'\nimport json\nfrom pathlib import Path\nfrom urllib.parse import quote\nr=json.loads(Path('result.json').read_text())\nif not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')\nPath('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))\nPY_STATUS_URL\ncurl --fail-with-body --silent --show-error \"$(cat status-url.txt)\" \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -D status-headers.txt -o status.json\npython3 - <<'PY_RESULT'\nimport json\nfrom pathlib import Path\nr=json.loads(Path('status.json').read_text())\nprint(json.dumps(r,ensure_ascii=False,indent=2))\nprint('Keep the complete JSON and response headers; do not resubmit an unknown creation.')\nPY_RESULT\n",
            "label": "GET original status",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_ASSETS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path('status.json').read_text())\nif r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')\nif not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')\nurls=[]\nfor i,u in enumerate(r.get('data',[])):\n    if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')\n    urls.append((str(i),u))\nfor label,path in urls:\n    u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)\n    if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')\n    target=Path('owned-'+label+'.bin')\n    subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)\nprint('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')\nPY_ASSETS\n",
            "label": "Save every completed owned output",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "hints": [],
        "http": "POST",
        "in": null,
        "input": [
          "text",
          "image",
          "audio"
        ],
        "label": "Видео",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "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"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "No additional condition is declared in this pricing key.",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "input: with_video_input",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.0042000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_with_video_input",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.0000042",
                "native_quantity": 1,
                "public_unit_label": "per 1,000 video tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "reference",
                "unit": "video_token"
              }
            ]
          },
          {
            "basis": "The video-token rate is the primary price reference. Per-second headline estimates are separate references, not an extra charge.",
            "dimensions": {
              "conditions": "audio: without_audio",
              "quoted_unit": "per 1,000 video tokens"
            },
            "label": "Video-token price",
            "units": [
              {
                "amount": "0.007000",
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "video_tokens_without_audio",
                "label": "Video-token price",
                "native_amount_usd_per_unit": "0.000007",
                "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_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.1512",
                "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.1512",
                "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": "bytedance/seedance-2.0-mini",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{public_id}",
          "GET /v1/videos/{public_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.007000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.000007",
            "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_token"
          },
          {
            "amount": "0.0042000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens_with_video_input",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.0000042",
            "native_quantity": 1,
            "public_unit_label": "per 1,000 video tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "reference",
            "unit": "video_token"
          },
          {
            "amount": "0.007000",
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "video_tokens_without_audio",
            "label": "Video-token price",
            "native_amount_usd_per_unit": "0.000007",
            "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_token"
          },
          {
            "amount": "0.1512",
            "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.1512",
            "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": "bytedance/seedance-2.0-mini",
        "request_model_id": "bytedance/seedance-2.0-mini",
        "route_label": "Ultra"
      }
    ],
    "name": "ByteDance: Seedance 2.0 Mini",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.1512,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.1512,
      "varies": false
    },
    "pricing_profiles": [
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "billable_token_source": "usage.completion_tokens",
          "estimated_quantity_formula": "(input_video_duration+output_video_duration)*output_width*output_height*output_fps/1024",
          "image_audio_ref_independent_charge": "not listed separately in this tariff",
          "input_includes_video": false,
          "maker_model_id": "dreamina-seedance-2-0-mini-260615",
          "minimum_token_schedule": "depends on resolution/aspect/output duration; separate official estimate table, actual usage governs",
          "minimum_tokens_when_video_input": false,
          "offline_not_supported": true,
          "quoted_unit": "1000000_video_tokens",
          "resolution": "480p/720p"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.0000070",
            "amount_unit": "usd_per_token",
            "conditions": {
              "billable_token_source": "usage.completion_tokens",
              "estimated_quantity_formula": "(input_video_duration+output_video_duration)*output_width*output_height*output_fps/1024",
              "image_audio_ref_independent_charge": "not listed separately in this tariff",
              "input_includes_video": false,
              "maker_model_id": "dreamina-seedance-2-0-mini-260615",
              "minimum_token_schedule": "depends on resolution/aspect/output duration; separate official estimate table, actual usage governs",
              "minimum_tokens_when_video_input": false,
              "offline_not_supported": true,
              "quoted_unit": "1000000_video_tokens",
              "resolution": "480p/720p"
            },
            "key": "base",
            "label": "base",
            "profile_index": 0,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "video_token"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "billable_token_source": "usage.completion_tokens",
          "estimated_quantity_formula": "(input_video_duration+output_video_duration)*output_width*output_height*output_fps/1024",
          "image_audio_ref_independent_charge": "not listed separately in this tariff",
          "input_includes_video": true,
          "maker_model_id": "dreamina-seedance-2-0-mini-260615",
          "minimum_token_schedule": "depends on resolution/aspect/output duration; separate official estimate table, actual usage governs",
          "minimum_tokens_when_video_input": true,
          "offline_not_supported": true,
          "quoted_unit": "1000000_video_tokens",
          "resolution": "480p/720p"
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.0000042",
            "amount_unit": "usd_per_token",
            "conditions": {
              "billable_token_source": "usage.completion_tokens",
              "estimated_quantity_formula": "(input_video_duration+output_video_duration)*output_width*output_height*output_fps/1024",
              "image_audio_ref_independent_charge": "not listed separately in this tariff",
              "input_includes_video": true,
              "maker_model_id": "dreamina-seedance-2-0-mini-260615",
              "minimum_token_schedule": "depends on resolution/aspect/output duration; separate official estimate table, actual usage governs",
              "minimum_tokens_when_video_input": true,
              "offline_not_supported": true,
              "quoted_unit": "1000000_video_tokens",
              "resolution": "480p/720p"
            },
            "key": "base",
            "label": "base",
            "profile_index": 1,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "video_token"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "no_method_admission_claim": true,
          "scope": "supplier_tariff_reference"
        },
        "dimensions": {},
        "label": "Ailoot Ultra · Tariff components",
        "units": [
          {
            "amount": "0.0070000",
            "amount_unit": "usd_per_thousand_tokens",
            "basis": "video token",
            "billing_original_currency": "USD",
            "billing_original_rate": "0.0000070",
            "key": "video_tokens",
            "label": "video token",
            "native_amount_usd_per_unit": "0.0000070",
            "native_quantity": 1,
            "quantity": 1000,
            "side": "out",
            "unit": "video_token"
          },
          {
            "amount": "0.0070000",
            "amount_unit": "usd_per_thousand_tokens",
            "basis": "audio=false",
            "billing_original_currency": "USD",
            "billing_original_rate": "0.0000070",
            "key": "video_tokens_without_audio",
            "label": "video token",
            "native_amount_usd_per_unit": "0.0000070",
            "native_quantity": 1,
            "quantity": 1000,
            "side": "out",
            "unit": "video_token"
          },
          {
            "amount": "0.0042000",
            "amount_unit": "usd_per_thousand_tokens",
            "basis": "video_reference_present Source-only tariff component.",
            "billing_original_currency": "USD",
            "billing_original_rate": "0.0000042",
            "key": "video_tokens_with_video_input",
            "label": "video token",
            "native_amount_usd_per_unit": "0.0000042",
            "native_quantity": 1,
            "quantity": 1000,
            "side": "out",
            "unit": "video_token"
          }
        ]
      }
    ],
    "public_id": "bytedance/seedance-2.0-mini",
    "short": "Seedance 2.0 Mini matn, rasm, video va audio namunalaridan ixtiyoriy yaratilgan tovush bilan qisqa videolar yaratadi. U sahna yaratish, aniq video tahrirlari va davom ettirishni qo‘llab-quvvatlaydi; chiqish profili 480p yoki 720p sifatida hujjatlashtirilgan."
  },
  "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.0 Mini matn, rasm, video va audio namunalaridan ixtiyoriy yaratilgan tovush bilan qisqa videolar yaratadi. U sahna yaratish, aniq video tahrirlari va davom ettirishni qo‘llab-quvvatlaydi; chiqish profili 480p yoki 720p sifatida hujjatlashtirilgan.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_exact_canonical_sha256": "13232a25e077edadd798feb7ef70b7adca0cddcb4f50b653f063eb47319240ba",
    "raw_model_js_projection_sha256": "05a9e60f07a87bc07bbc44df5c3c7cd4cd7f389900894181c33113b85f1fe9ed",
    "raw_model_json_sha256": "13232a25e077edadd798feb7ef70b7adca0cddcb4f50b653f063eb47319240ba",
    "renderer_sha256": "aa8a0fca1bd770c042b64987512b6187fca2067aea3ddc877f68b163d80e7df6"
  },
  "sourceRevision": "111b6cd93d7bbb54f10af63fe31e956c2ce9d74596bd5e459518286992efac0b"
}
