{
  "aboutHtml": "<p>Alibaba HappyHorse 1.1 er en videogenereringsutgave med egne navngitte profiler for tekst-til-video, bilde-til-video fra første bilde og referanse-til-video. Produsenten fremhever forbedrede visuelle detaljer, bevegelse, karakteridentitet mellom klipp, tekststabilitet og synkronisering av lyd og bilde. Resultatet er en kort video med lyd, nyttig til et produktopptak, en portrettanimasjon eller en liten karakterscene. Velg inndatamodus etter hva som skal definere scenen: et skriftlig konsept, et nøyaktig åpningsbilde eller flere visuelle referanser.</p><p>For tekst-til-video beskriver du motiv, lokasjon, handling, utsnitt, kamerabevegelse og ønsket lyd. I en kort handlingsscene kan du vise en syklist som stopper ved en kafé langs elven, mens kameraet beveger seg rolig mot den parkerte sykkelen. Hold handlingen passende for et kort klipp, og beskriv sluttøyeblikket. Produsentens nåværende tekstveiledning tillater opptil 5 000 ikke-kinesiske eller 2 500 kinesiske tegn og kutter tekst utover grensen. Organiser beskrivelsen slik at det vesentlige motivet og handlingen er uttrykkelige, fremfor begravet i gjentatte adjektiver.</p><p>Bilde-til-video fra første bilde bruker nøyaktig ett bilde som åpning. Klargjør motivet, komposisjonen og ønsket utsnitt i dette stillbildet, og beskriv deretter hva som skal bevege seg eller hvordan kameraet skal endres. De dokumenterte bildeformatene er JPEG/JPG, PNG og WEBP, opptil 20 MB, med begge dimensjoner på minst 300 piksler og et sideforhold mellom 1:2.5 og 2.5:1. Resultatet tilnærmer seg det valgte oppløsningsnivået samtidig som kildebildets proporsjoner bevares. Et stående resultat begynner derfor med en egnet stående komposisjon, fremfor en urelatert instruksjon om sideforhold.</p><p>Referanse-til-video tar imot ett til ni bilder. Prompten bruker [Image 1], [Image 2] og påfølgende posisjoner til å identifisere dem i inndatarekkefølgen. Angi rollen til hver referanse, og navngi det relevante objektet eller personen, slik at et scenebilde ikke forveksles med en karakterkilde. Referanseveiledningen godtar JPEG/JPG, PNG eller WEBP på opptil 20 MB, krever en kortside på minst 400 piksler og anbefaler tydelige referanser i 720p eller høyere. Unngå en sterkt komprimert referanse der identifiserende detaljer allerede mangler.</p><p>For en scene med flere referanser kan du plassere personen fra ett bilde i rommet fra et annet, samtidig som en frakk eller et produkt fra et tredje bevares. Beskriv samspillet og kameraet i den samme beskrivelsen. Referanseprofilen i 1.1 fremhever stabilitet i motiver, scenestil og filmatiske bevegelser; undersøk det faktiske resultatet for ønsket identitet, produktmerking og romlig plassering. Flere bilder gir beskrivelsen mer informasjon, men gjennomgangen må fortsatt kontrollere hvilke egenskaper som ble overført til videoen.</p><p>Produsenten oppgir utdata i 480p, 720p og 1080p for genereringsmodusene i 1.1, med lengde i hele sekunder fra tre til femten og MP4 ved 24 bilder per sekund. API-responsen beskriver H.264-koding. Tekst- og referansegenerering tilbyr formater som 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 og 21:9; generering fra første bilde følger inngangsbildet. Velg format etter bruksstedet, og gi plass til senere undertekster eller layoutelementer. Undersøk det faktiske utsnittet i den returnerte videoen i den tiltenkte visningsstørrelsen.</p><p>Modellfamiliens resultater inkluderer lyd. Gi fremføringen eller atmosfæren en tydelig rolle i beskrivelsen, og vurder eventuell dialog, effekter eller bakgrunnsspor sammen med bildet. Hold talematerialet kort nok til handlingen og pausene, fremfor å presse et langt manus inn i ett kort opptak. Kontroller leppebevegelse, hvem som snakker og den faktiske ordlyden når tale er med. At et promptspråk godtas, innebærer i seg selv verken garantert uttale eller en separat inngang for stemmereferanse.</p><p>Produsentens dokumenterte arbeidsflyt er asynkron: en oppgaveidentifikator følger behandlingen, og et vellykket resultat gir videoens adresse. Resultatlenken og oppgavesøkene er dokumentert med en gyldighetsperiode på tjuefire timer. Behold det ferdige klippet, referansene og prompten som revisjonsgrunnlag. Veiledningene dokumenterer også kontroller for seed og vannmerke. En fast seed kan hjelpe med sammenligning, men produsenten sier uttrykkelig at den ikke garanterer identiske resultater, så vurder den returnerte filen fremfor å anta at én innstilling fastsetter hvert bilde.</p><p>HappyHorse 1.0 og 1.1 er separate utgaver. Utdatatabellen for 1.1 legger 480p til valgene 720p og 1080p fra 1.0, og modellsidene for 1.1 beskriver oppgraderinger i detaljer, bevegelse og konsistens. Den separat navngitte video-edit-profilen for HappyHorse 1.0 har egne inndata og grenser og er ikke en redigeringsmodus som uten videre kan tilordnes 1.1. Vurder hele 1.1-klippet for identitet, bevegelse, utsnitt, tekst og lyd, og gjør deretter en konkret korrigering samtidig som de vellykkede delene av beskrivelsen bevares.</p>",
  "aboutText": "Alibaba HappyHorse 1.1 er en videogenereringsutgave med egne navngitte profiler for tekst-til-video, bilde-til-video fra første bilde og referanse-til-video. Produsenten fremhever forbedrede visuelle detaljer, bevegelse, karakteridentitet mellom klipp, tekststabilitet og synkronisering av lyd og bilde. Resultatet er en kort video med lyd, nyttig til et produktopptak, en portrettanimasjon eller en liten karakterscene. Velg inndatamodus etter hva som skal definere scenen: et skriftlig konsept, et nøyaktig åpningsbilde eller flere visuelle referanser.\n\nFor tekst-til-video beskriver du motiv, lokasjon, handling, utsnitt, kamerabevegelse og ønsket lyd. I en kort handlingsscene kan du vise en syklist som stopper ved en kafé langs elven, mens kameraet beveger seg rolig mot den parkerte sykkelen. Hold handlingen passende for et kort klipp, og beskriv sluttøyeblikket. Produsentens nåværende tekstveiledning tillater opptil 5 000 ikke-kinesiske eller 2 500 kinesiske tegn og kutter tekst utover grensen. Organiser beskrivelsen slik at det vesentlige motivet og handlingen er uttrykkelige, fremfor begravet i gjentatte adjektiver.\n\nBilde-til-video fra første bilde bruker nøyaktig ett bilde som åpning. Klargjør motivet, komposisjonen og ønsket utsnitt i dette stillbildet, og beskriv deretter hva som skal bevege seg eller hvordan kameraet skal endres. De dokumenterte bildeformatene er JPEG/JPG, PNG og WEBP, opptil 20 MB, med begge dimensjoner på minst 300 piksler og et sideforhold mellom 1:2.5 og 2.5:1. Resultatet tilnærmer seg det valgte oppløsningsnivået samtidig som kildebildets proporsjoner bevares. Et stående resultat begynner derfor med en egnet stående komposisjon, fremfor en urelatert instruksjon om sideforhold.\n\nReferanse-til-video tar imot ett til ni bilder. Prompten bruker [Image 1], [Image 2] og påfølgende posisjoner til å identifisere dem i inndatarekkefølgen. Angi rollen til hver referanse, og navngi det relevante objektet eller personen, slik at et scenebilde ikke forveksles med en karakterkilde. Referanseveiledningen godtar JPEG/JPG, PNG eller WEBP på opptil 20 MB, krever en kortside på minst 400 piksler og anbefaler tydelige referanser i 720p eller høyere. Unngå en sterkt komprimert referanse der identifiserende detaljer allerede mangler.\n\nFor en scene med flere referanser kan du plassere personen fra ett bilde i rommet fra et annet, samtidig som en frakk eller et produkt fra et tredje bevares. Beskriv samspillet og kameraet i den samme beskrivelsen. Referanseprofilen i 1.1 fremhever stabilitet i motiver, scenestil og filmatiske bevegelser; undersøk det faktiske resultatet for ønsket identitet, produktmerking og romlig plassering. Flere bilder gir beskrivelsen mer informasjon, men gjennomgangen må fortsatt kontrollere hvilke egenskaper som ble overført til videoen.\n\nProdusenten oppgir utdata i 480p, 720p og 1080p for genereringsmodusene i 1.1, med lengde i hele sekunder fra tre til femten og MP4 ved 24 bilder per sekund. API-responsen beskriver H.264-koding. Tekst- og referansegenerering tilbyr formater som 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 og 21:9; generering fra første bilde følger inngangsbildet. Velg format etter bruksstedet, og gi plass til senere undertekster eller layoutelementer. Undersøk det faktiske utsnittet i den returnerte videoen i den tiltenkte visningsstørrelsen.\n\nModellfamiliens resultater inkluderer lyd. Gi fremføringen eller atmosfæren en tydelig rolle i beskrivelsen, og vurder eventuell dialog, effekter eller bakgrunnsspor sammen med bildet. Hold talematerialet kort nok til handlingen og pausene, fremfor å presse et langt manus inn i ett kort opptak. Kontroller leppebevegelse, hvem som snakker og den faktiske ordlyden når tale er med. At et promptspråk godtas, innebærer i seg selv verken garantert uttale eller en separat inngang for stemmereferanse.\n\nProdusentens dokumenterte arbeidsflyt er asynkron: en oppgaveidentifikator følger behandlingen, og et vellykket resultat gir videoens adresse. Resultatlenken og oppgavesøkene er dokumentert med en gyldighetsperiode på tjuefire timer. Behold det ferdige klippet, referansene og prompten som revisjonsgrunnlag. Veiledningene dokumenterer også kontroller for seed og vannmerke. En fast seed kan hjelpe med sammenligning, men produsenten sier uttrykkelig at den ikke garanterer identiske resultater, så vurder den returnerte filen fremfor å anta at én innstilling fastsetter hvert bilde.\n\nHappyHorse 1.0 og 1.1 er separate utgaver. Utdatatabellen for 1.1 legger 480p til valgene 720p og 1080p fra 1.0, og modellsidene for 1.1 beskriver oppgraderinger i detaljer, bevegelse og konsistens. Den separat navngitte video-edit-profilen for HappyHorse 1.0 har egne inndata og grenser og er ikke en redigeringsmodus som uten videre kan tilordnes 1.1. Vurder hele 1.1-klippet for identitet, bevegelse, utsnitt, tekst og lyd, og gjør deretter en konkret korrigering samtidig som de vellykkede delene av beskrivelsen bevares.",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "8bb495a3d6abbfe75efa6b468e614e6aace8f6c5577931331bd508e2661a4e81",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "nb",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">Al</span><h2 id=\"sheet-title\">Alibaba: HappyHorse 1.1</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Lukk\">×</button></div><div class=\"idline\"><span>Alibaba /</span><code>alibaba/happyhorse-1.1</code><button type=\"button\" id=\"copy-id\">Kopier ID</button></div><nav class=\"card-jump-nav\" aria-label=\"Seksjoner i modellkortet\"><button type=\"button\" data-card-jump=\"overview\">Start</button><button type=\"button\" data-card-jump=\"methods\">Inndata &amp; metoder</button><button type=\"button\" data-card-jump=\"pricing\">Priser</button><button type=\"button\" data-card-jump=\"examples\">Eksempler</button><button type=\"button\" data-card-jump=\"results\">Resultater</button><button type=\"button\" data-card-jump=\"aliases\">Aliaser</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-metoder\"><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|alibaba%2Fhappyhorse-1.1\">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\">Start</h3><p class=\"mdesc-full\">Alibaba HappyHorse 1.1 genererer korte videoer med lyd fra en tekstbeskrivelse, ett startbilde eller opptil ni referansebilder. Produsentens profiler fremhever forbedret bevegelse, huddetaljer og karakterkonsistens mellom klipp. Resultatet er MP4 på 3–15 sekunder ved 24 bilder per sekund, med valg mellom 480p, 720p og 1080p.</p><dl class=\"card-io\" data-card-io><div><dt>Godkjente inndata</dt><dd>Tekst</dd></div><div><dt>Resultater</dt><dd>Video</dd></div></dl><details class=\"card-about\"><summary>Om modellen</summary><p class=\"note-s\" data-model-method-boundary>Denne beskrivelsen dekker modellens funksjoner. Tilgjengelige inndata, utdata og alternativer i Ailoot er oppført nedenfor for den valgte metoden.</p><div class=\"mabout\" id=\"m-about\"><p>Alibaba HappyHorse 1.1 er en videogenereringsutgave med egne navngitte profiler for tekst-til-video, bilde-til-video fra første bilde og referanse-til-video. Produsenten fremhever forbedrede visuelle detaljer, bevegelse, karakteridentitet mellom klipp, tekststabilitet og synkronisering av lyd og bilde. Resultatet er en kort video med lyd, nyttig til et produktopptak, en portrettanimasjon eller en liten karakterscene. Velg inndatamodus etter hva som skal definere scenen: et skriftlig konsept, et nøyaktig åpningsbilde eller flere visuelle referanser.</p><p>For tekst-til-video beskriver du motiv, lokasjon, handling, utsnitt, kamerabevegelse og ønsket lyd. I en kort handlingsscene kan du vise en syklist som stopper ved en kafé langs elven, mens kameraet beveger seg rolig mot den parkerte sykkelen. Hold handlingen passende for et kort klipp, og beskriv sluttøyeblikket. Produsentens nåværende tekstveiledning tillater opptil 5 000 ikke-kinesiske eller 2 500 kinesiske tegn og kutter tekst utover grensen. Organiser beskrivelsen slik at det vesentlige motivet og handlingen er uttrykkelige, fremfor begravet i gjentatte adjektiver.</p><p>Bilde-til-video fra første bilde bruker nøyaktig ett bilde som åpning. Klargjør motivet, komposisjonen og ønsket utsnitt i dette stillbildet, og beskriv deretter hva som skal bevege seg eller hvordan kameraet skal endres. De dokumenterte bildeformatene er JPEG/JPG, PNG og WEBP, opptil 20 MB, med begge dimensjoner på minst 300 piksler og et sideforhold mellom 1:2.5 og 2.5:1. Resultatet tilnærmer seg det valgte oppløsningsnivået samtidig som kildebildets proporsjoner bevares. Et stående resultat begynner derfor med en egnet stående komposisjon, fremfor en urelatert instruksjon om sideforhold.</p><p>Referanse-til-video tar imot ett til ni bilder. Prompten bruker [Image 1], [Image 2] og påfølgende posisjoner til å identifisere dem i inndatarekkefølgen. Angi rollen til hver referanse, og navngi det relevante objektet eller personen, slik at et scenebilde ikke forveksles med en karakterkilde. Referanseveiledningen godtar JPEG/JPG, PNG eller WEBP på opptil 20 MB, krever en kortside på minst 400 piksler og anbefaler tydelige referanser i 720p eller høyere. Unngå en sterkt komprimert referanse der identifiserende detaljer allerede mangler.</p><p>For en scene med flere referanser kan du plassere personen fra ett bilde i rommet fra et annet, samtidig som en frakk eller et produkt fra et tredje bevares. Beskriv samspillet og kameraet i den samme beskrivelsen. Referanseprofilen i 1.1 fremhever stabilitet i motiver, scenestil og filmatiske bevegelser; undersøk det faktiske resultatet for ønsket identitet, produktmerking og romlig plassering. Flere bilder gir beskrivelsen mer informasjon, men gjennomgangen må fortsatt kontrollere hvilke egenskaper som ble overført til videoen.</p><p>Produsenten oppgir utdata i 480p, 720p og 1080p for genereringsmodusene i 1.1, med lengde i hele sekunder fra tre til femten og MP4 ved 24 bilder per sekund. API-responsen beskriver H.264-koding. Tekst- og referansegenerering tilbyr formater som 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 og 21:9; generering fra første bilde følger inngangsbildet. Velg format etter bruksstedet, og gi plass til senere undertekster eller layoutelementer. Undersøk det faktiske utsnittet i den returnerte videoen i den tiltenkte visningsstørrelsen.</p><p>Modellfamiliens resultater inkluderer lyd. Gi fremføringen eller atmosfæren en tydelig rolle i beskrivelsen, og vurder eventuell dialog, effekter eller bakgrunnsspor sammen med bildet. Hold talematerialet kort nok til handlingen og pausene, fremfor å presse et langt manus inn i ett kort opptak. Kontroller leppebevegelse, hvem som snakker og den faktiske ordlyden når tale er med. At et promptspråk godtas, innebærer i seg selv verken garantert uttale eller en separat inngang for stemmereferanse.</p><p>Produsentens dokumenterte arbeidsflyt er asynkron: en oppgaveidentifikator følger behandlingen, og et vellykket resultat gir videoens adresse. Resultatlenken og oppgavesøkene er dokumentert med en gyldighetsperiode på tjuefire timer. Behold det ferdige klippet, referansene og prompten som revisjonsgrunnlag. Veiledningene dokumenterer også kontroller for seed og vannmerke. En fast seed kan hjelpe med sammenligning, men produsenten sier uttrykkelig at den ikke garanterer identiske resultater, så vurder den returnerte filen fremfor å anta at én innstilling fastsetter hvert bilde.</p><p>HappyHorse 1.0 og 1.1 er separate utgaver. Utdatatabellen for 1.1 legger 480p til valgene 720p og 1080p fra 1.0, og modellsidene for 1.1 beskriver oppgraderinger i detaljer, bevegelse og konsistens. Den separat navngitte video-edit-profilen for HappyHorse 1.0 har egne inndata og grenser og er ikke en redigeringsmodus som uten videre kan tilordnes 1.1. Vurder hele 1.1-klippet for identitet, bevegelse, utsnitt, tekst og lyd, og gjør deretter en konkret korrigering samtidig som de vellykkede delene av beskrivelsen bevares.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Tilgjengelig i Ailoot · inndata &amp; metoder</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Video</b> <code>POST /v1/videos</code></summary><dl class=\"method-capabilities\"><div><dt>Inndatatyper</dt><dd><code>text</code></dd></div><div><dt>Utdatatyper</dt><dd><code>video</code></dd></div><div><dt>Utdataformat</dt><dd>mp4</dd></div><div><dt>Antall utdata</dt><dd>Opptil 4 utdatas</dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Felt</th><th>Type</th><th>Krav</th><th>Verdier &amp; grenser</th><th>Standard</th></tr></thead><tbody><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>alibaba/happyhorse-1.1</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>Minste lengde: 1</div><div>Maksimalt antall byte: 10 000</div><div>Enhet: UTF8-byte</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">duration</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>integer</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>Minimum: 3</div><div>Maksimum: 15</div><div>Enhet: sekunder</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">resolution</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>720p</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr><tr data-parameter-availability=\"source_interface\"><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">aspect_ratio</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span><code>string</code></td><td data-cell-label=\"Krav\"><span class=\"card-cell-label\">Krav</span>Påkrevd</td><td data-cell-label=\"Verdier &amp; grenser\"><span class=\"card-cell-label\">Verdier &amp; grenser</span><div>16:9</div></td><td data-cell-label=\"Standard\" data-default=\"unspecified\"><span class=\"card-cell-label\">Standard</span>—</td></tr></tbody></table></div><details class=\"card-about\" data-material-combinations><summary>Kombinasjoner av inngående materialer</summary><p class=\"note-s\"><b>Tekst til video</b> · Påkrevd: prompt</p></details><details class=\"note-s\" data-method-contract><summary>Metodeparametere og livssyklus</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Parameter</th><th>Avtale</th></tr></thead><tbody><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>content_type</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>application/json</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>required</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>model, prompt, duration, resolution, aspect_ratio</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>other_options</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>false</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>resolution</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>720p</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>prompt_max_bytes</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>10000</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>duration_integer_range</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>3, 15</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>aspect_ratio</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>16:9</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>generate_audio</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>Må utelates (ikke false); AAC er inkludert</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>material_types</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>text</td></tr><tr><th data-cell-label=\"Parameter\" scope=\"row\"><span class=\"card-cell-label\">Parameter</span><code>additional_properties</code></th><td data-cell-label=\"Avtale\"><span class=\"card-cell-label\">Avtale</span>false</td></tr></tbody></table></div><p>Metodealiaser: <code>/v1/videos/generations</code>, <code>/videos</code>, <code>/videos/generations</code></p><p>Livssyklus: <code>submit_once_poll_original</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}</code></p><p class=\"note-s\"><code>GET /v1/videos/{request_id}/content</code></p><p class=\"note-s\"><code>GET /v1/videos/generations/{request_id}/content</code></p><p class=\"note-s\">Opprett én gang og lagre den returnerte ID-en.</p><p class=\"note-s\">Spør jevnlig etter den opprinnelige statusen; behold hver ferdigstilte ressurs og varigheten.</p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Priser</h3><div class=\"card-result-process\" data-billing-basis><h5>Slik beregnes det endelige beløpet</h5><p class=\"note-s\">De viste satsene anslår kostnaden før generering. Det endelige beløpet beregnes ut fra kostnaden som er registrert for den opprinnelige genereringen. Målt varighet på utdataene og anslåtte mengder er ikke den endelige fakturerbare mengden.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>Tariffopplysninger legger ikke til forespørselsvalg. Støttede parametere står ved den valgte metoden.</p><dl data-price-conditions><dt>Hurtigmodus</dt><dd>Ikke angitt <span class=\"note-s\">Når hurtigmodus er valgt</span></dd><dt>Flex-modus</dt><dd>Ikke angitt <span class=\"note-s\">Når flex-modus er valgt</span></dd><dt>Maksimal resonneringsinnsats</dt><dd>Ikke angitt <span class=\"note-s\">Når justeringen «default» brukes for maksimal resonneringsinnsats</span></dd></dl></div><div data-declared-tariff-pricing><h4>Estimerte satser for sammenligning</h4><h4>Priser etter konfigurasjon</h4><p class=\"note-s\">Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurasjon</th><th>Prisplan</th><th>Forventet mengde</th><th>Faktureringsenhet</th><th>Faktureringsvilkår</th><th>Kostnad</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Grunnpriser for tokener</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>Grunnsats</td><td data-cell-label=\"Forventet mengde\"><span class=\"card-cell-label\">Forventet mengde</span>—</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>—</td><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>—</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Inndata · Inngående tokener · Estimat kun for sammenligning</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Utdata · Utgående tokener · Estimat kun for sammenligning</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Lesing fra hurtigbuffer · Estimat kun for sammenligning</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Skriving til hurtigbuffer · Estimat kun for sammenligning</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div><div><span>Inndata · Skriving til hurtigbuffer, 1 time · Estimat kun for sammenligning</span> <b>—</b> <span class=\"price-unit\">/ 1K tokener</span></div></td></tr><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Videopris</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>—</td><td data-cell-label=\"Forventet mengde\"><span class=\"card-cell-label\">Forventet mengde</span>—</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>per videosekund</td><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>resolution: 1080p</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Utdata · Videopris · Estimat kun for sammenligning</span> <b>$0.2556</b> <span class=\"price-unit\">per videosekund</span></div></td></tr><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Videopris</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>—</td><td data-cell-label=\"Forventet mengde\"><span class=\"card-cell-label\">Forventet mengde</span>—</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>per videosekund</td><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>resolution: 720p</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Utdata · Videopris · Estimat kun for sammenligning</span> <b>$0.1976</b> <span class=\"price-unit\">per videosekund</span></div></td></tr><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Anslått genereringskostnad</th><td data-cell-label=\"Prisplan\"><span class=\"card-cell-label\">Prisplan</span>—</td><td data-cell-label=\"Forventet mengde\"><span class=\"card-cell-label\">Forventet mengde</span>estimat for én generering</td><td data-cell-label=\"Faktureringsenhet\"><span class=\"card-cell-label\">Faktureringsenhet</span>—</td><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>—</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Utdata · Anslått genereringskostnad · Estimat kun for sammenligning</span> <b>$0.5928</b> <span class=\"price-unit\">estimat før generering</span></div><p class=\"note-s\">Dette anslaget er verken en tilleggsavgift eller en fast sats for den fullførte genereringen.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot reserverer et estimert beløp før en forespørsel. Etter resultatet gjøres det endelige beløpet opp basert på målt forbruk. Oppgjør for strømming bruker den endelige forbruksposten. <a href=\"/docs/nb/billing/reserve/\">Slik fungerer reservasjon og oppgjør →</a></p><div data-declared-reference-pricing><h4>Detaljer om referansetariffen</h4><p class=\"note-s\">Referanseprisplaner på modellnivå endrer ikke metodevalg, prisoverslag eller kostnader. Aktive kostnader bruker satsene til den valgte Ailoot-metoden.</p><details class=\"card-price-reference\" data-declared-reference-group data-client-selectable=\"false\"><summary>Prisreferanser for videokonfigurasjoner</summary><h4>Priser etter konfigurasjon</h4><p class=\"note-s\">Knytt hver kostnad til de viste vilkårene. Bruk én sats for hvert sett med alternative konfigurasjoner.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Konfigurasjon</th><th>Faktureringsvilkår</th><th>Kostnad</th></tr></thead><tbody><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Videopris</th><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>resolution: 720p</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Utdata · Videopris</span> <b>$0.1976</b> <span class=\"price-unit\">per videosekund</span></div><p class=\"note-s\">Publisert prisreferanse for den viste konfigurasjonen. Endelige belastninger følger konfigurasjonen som faktisk faktureres.</p></td></tr><tr><th data-cell-label=\"Konfigurasjon\" scope=\"row\"><span class=\"card-cell-label\">Konfigurasjon</span>Videopris</th><td data-cell-label=\"Faktureringsvilkår\"><span class=\"card-cell-label\">Faktureringsvilkår</span>resolution: 1080p</td><td data-cell-label=\"Kostnad\"><span class=\"card-cell-label\">Kostnad</span><div><span>Utdata · Videopris</span> <b>$0.2556</b> <span class=\"price-unit\">per videosekund</span></div><p class=\"note-s\">Publisert prisreferanse for den viste konfigurasjonen. Endelige belastninger følger konfigurasjonen som faktisk faktureres.</p></td></tr></tbody></table></div></details></div></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Eksempelforespørsler</h3><h4>Ailoot Ultra · Video</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodevarianter\"><button class=\"cg-tab\" id=\"model-code-1000-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1000-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · nøyaktig bevart opprettelsesforespørsel</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopier kode\"><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-1000-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1000-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;\nimport json,os\nfrom pathlib import Path\np=json.loads(&#39;{&quot;model&quot;: &quot;alibaba/happyhorse-1.1&quot;, &quot;prompt&quot;: &quot;A cat in a spacesuit walking on the Moon&quot;, &quot;duration&quot;: 3, &quot;resolution&quot;: &quot;720p&quot;, &quot;aspect_ratio&quot;: &quot;16:9&quot;}&#39;)\n\nPath(&quot;request.json&quot;).write_text(json.dumps(p,ensure_ascii=False))\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\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Motta og lagre resultater</h3><h4>Ailoot Ultra · Video</h4><p class=\"note-s\">mp4</p><ul class=\"card-result-paths\"><li><code>GET /v1/videos/{request_id}</code></li><li><code>GET /v1/videos/generations/{request_id}</code></li><li><code>GET /v1/videos/{request_id}/content</code></li><li><code>GET /v1/videos/generations/{request_id}/content</code></li></ul><h5>Kontroller jobbstatus</h5><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodevarianter\"><button class=\"cg-tab\" id=\"model-code-1001-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1001-panel-0\" aria-selected=\"true\" tabindex=\"0\">GET status for opprinnelig operasjon</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopier kode\"><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-1001-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1001-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>Andre innholdslesinger</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kodevarianter\"><button class=\"cg-tab\" id=\"model-code-1002-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1002-panel-0\" aria-selected=\"true\" tabindex=\"0\">Lagre alle ferdige utdata som tilhører deg</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kopier kode\"><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-1002-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1002-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>Behold alle ferdige resultater</h5><p class=\"note-s\">Lagre hver ferdige video eller returnerte fil; hent hver faktisk returnerte ressurs-URL.</p><p class=\"note-s\">Ferdigstilt data[] inneholder alle signerte URL-er til innhold du eier. Hent hver returnert URL, eller bruk innholdsendepunktet med index satt til en faktisk utdataindeks. En mislykket opprinnelig jobb kan returnere charge_pending_check; kontroller den opprinnelige jobben fremfor å opprette den igjen.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Hvis det opprinnelige svaret må kontrolleres</h5><p class=\"note-s\">Les den eksisterende opprinnelige jobben; send aldri en forespørsel med ukjent utfall på nytt.</p></div><p class=\"note-s\">Maksimalt antall utdata: 4.</p><details class=\"card-about\" data-output-fields><summary>Svarfelter</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Felt</th><th>Type</th><th>Betydning</th></tr></thead><tbody><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">id</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">object</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">status</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">data[]</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>signed content URL</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">charge_pending_check</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>boolean</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">error.code</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">error.message</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>—</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">operation_id</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>Opprinnelig status-/innholdssvar med HTTP503 result_pending_check: samme opprinnelige offentlige video-ID som id.</td></tr><tr><th data-cell-label=\"Felt\" scope=\"row\"><span class=\"card-cell-label\">Felt</span><code class=\"card-field-name\">error.type</code></th><td data-cell-label=\"Type\" data-field-type><span class=\"card-cell-label\">Type</span>string</td><td data-cell-label=\"Betydning\"><span class=\"card-cell-label\">Betydning</span>server_error ved HTTP503 result_pending_check.</td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>Feil og neste trinn</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>Svar</th><th>Vilkår</th><th>Neste trinn</th></tr></thead><tbody><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Lesing av den rå forespørselskroppen mislykkes før videoprofilen tolkes</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold det returnerte svaret og korriger den uleselige forespørselskroppen.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Tolking av den eksakte videoprofilen mislykkes, eller hele den tolkede profilen mangler et klart og eksakt priskort</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold svaret; bruk hele den eksakte godkjente profilen og det publiserte priskortet. Denne grenen kjøres før en forespørsel sendes til leverandøren.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>409 · <code>video_not_ready</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Det opprinnelige resultatinnholdet er ennå ikke tilgjengelig</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Spør jevnlig etter den opprinnelige returnerte ID-en og følg Retry-After.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span><code>server_error</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>Det returnerte svaret angir at operasjonen eller resultatet må kontrolleres</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Bevar den opprinnelige returnerte operasjons-/oppgave-ID-en, forespørselshodene og svaret; fortsett å lese den opprinnelige operasjonen på de støttede måtene. Ikke send opprettelsesforespørselen på nytt.</td></tr><tr><th data-cell-label=\"Svar\" scope=\"row\"><span class=\"card-cell-label\">Svar</span>503 · <code>result_pending_check</code></th><td data-cell-label=\"Vilkår\"><span class=\"card-cell-label\">Vilkår</span>GET for opprinnelig status/innhold: oppgaven er ikke publisert, den opprinnelige jobben er ikke failed/cancelled/expired, og lokal tilstand er unknown eller den opprinnelige jobbstatusen er completed.</td><td data-cell-label=\"Neste trinn\"><span class=\"card-cell-label\">Neste trinn</span>Behold opprinnelig id og operation_id (samme offentlige video-ID), svar og svarhoder; les bare opprinnelig status og innhold. Send aldri en ny forespørsel om generering.</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Aliaser</h3><h4>Modellaliaser</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=alibaba%2Fhappyhorse-1.1&amp;route=Ultra&amp;caller=alibaba%2Fhappyhorse-1.1&amp;fmt=videos\"><code>alibaba/happyhorse-1.1</code></a></span></p><h4>Aliaser for metodestier</h4><p class=\"note-s\"><code>/v1/videos/generations</code>, <code>/videos</code>, <code>/videos/generations</code></p><h4>Tilknyttede anroper-ID-er</h4><p class=\"note-s\"><a href=\"#m=alibaba%2Fhappyhorse-1.1&amp;route=Ultra&amp;caller=alibaba%2Fhappyhorse-1.1&amp;fmt=videos\"><code>alibaba/happyhorse-1.1</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "alibaba/happyhorse-1.1",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "alibaba/happyhorse-1.1",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|alibaba%2Fhappyhorse-1.1",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "De viste satsene anslår kostnaden før generering. Det endelige beløpet beregnes ut fra kostnaden som er registrert for den opprinnelige genereringen. Målt varighet på utdataene og anslåtte mengder er ikke den endelige fakturerbare mengden.",
          "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": "Completeddata[] contains all owned signedcontentURLs. FetcheachactualURL,orusecontent?index=actualindex. Failedoriginaljobs maycarrycharge_pending_check; do not recreate.",
            "errors": [
              {
                "code": null,
                "condition": "Lesing av den rå forespørselskroppen mislykkes før videoprofilen tolkes",
                "http_status": 400,
                "recovery": "Behold det returnerte svaret og korriger den uleselige forespørselskroppen.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Tolking av den eksakte videoprofilen mislykkes, eller hele den tolkede profilen mangler et klart og eksakt priskort",
                "http_status": 422,
                "message": "The complete video request cannot be priced",
                "recovery": "Behold svaret; bruk hele den eksakte godkjente profilen og det publiserte priskortet. Denne grenen kjøres før en forespørsel sendes til leverandøren.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Det opprinnelige resultatinnholdet er ennå ikke tilgjengelig",
                "http_status": 409,
                "recovery": "Spør jevnlig etter den opprinnelige returnerte ID-en og følg Retry-After.",
                "type": "video_not_ready"
              },
              {
                "code": null,
                "condition": "Det returnerte svaret angir at operasjonen eller resultatet må kontrolleres",
                "http_status": null,
                "recovery": "Bevar den opprinnelige returnerte operasjons-/oppgave-ID-en, forespørselshodene og svaret; fortsett å lese den opprinnelige operasjonen på de støttede måtene. Ikke send opprettelsesforespørselen på nytt.",
                "type": "server_error"
              },
              {
                "absent_fields": [
                  "status",
                  "object",
                  "model",
                  "data"
                ],
                "code": "result_pending_check",
                "condition": "GET for opprinnelig status/innhold: oppgaven er ikke publisert, den opprinnelige jobben er ikke failed/cancelled/expired, og lokal tilstand er unknown eller den opprinnelige jobbstatusen er completed.",
                "friendly_fields": "error.reason=result_pending_check,error.param=null; error.operation_id and error.request_id when the existing context supplies them. error.message is rewritten/localized.",
                "headers": {
                  "Retry-After": null,
                  "X-Should-Retry": "false"
                },
                "http_status": 503,
                "recovery": "Behold opprinnelig id og operation_id (samme offentlige video-ID), svar og svarhoder; les bare opprinnelig status og innhold. Send aldri en ny forespørsel om generering.",
                "response_fields": {
                  "charge_pending_check": true,
                  "error.code": "result_pending_check",
                  "error.type": "server_error",
                  "id": "original public video ID",
                  "operation_id": "same as id"
                },
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "content": [
                {
                  "http": "GET",
                  "parameters": [
                    {
                      "availability": "source_interface",
                      "conditions": "Must be less than the actual returned output count.",
                      "default": 0,
                      "default_known": true,
                      "enum": null,
                      "enum_known": false,
                      "maximum": null,
                      "maximum_known": false,
                      "minimum": 0,
                      "name": "index",
                      "required": false,
                      "type": "integer"
                    }
                  ],
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default0"
                  }
                },
                {
                  "http": "GET",
                  "parameters": [
                    {
                      "availability": "source_interface",
                      "conditions": "Must be less than the actual returned output count.",
                      "default": 0,
                      "default_known": true,
                      "enum": null,
                      "enum_known": false,
                      "maximum": null,
                      "maximum_known": false,
                      "minimum": 0,
                      "name": "index",
                      "required": false,
                      "type": "integer"
                    }
                  ],
                  "path": "/v1/videos/generations/{request_id}/content"
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "id_source": "Actualreturnedpublicid; opaque URLencodeit forGET. On HTTP503 result_pending_check from original status/content GET, operation_id equals id: use that same original public video ID for polling. Do not substitute unrelated operation IDs from other responses.",
              "mode": "submit_once_poll_original",
              "multioutputs": "retain every completed data output; index0 alone is not all outputs",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 202,
              "unknown": "Les den eksisterende opprinnelige jobben; send aldri en forespørsel med ukjent utfall på nytt.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_video",
                "required": [
                  "prompt"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "Use actual returned task_id or original public video id from response/media library. On HTTP503 result_pending_check from original video status/content GET, operation_id equals that original public video id. Do not assume unrelated operation IDs name media tasks.",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_video"
            ],
            "outputs": {
              "all_results": "Ferdigstilt data[] inneholder alle signerte URL-er til innhold du eier. Hent hver returnert URL, eller bruk innholdsendepunktet med index satt til en faktisk utdataindeks. En mislykket opprinnelig jobb kan returnere charge_pending_check; kontroller den opprinnelige jobben fremfor å opprette den igjen.",
              "create_status": 202,
              "family": "video",
              "fields": [
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "status",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[]",
                  "type": "signed content URL"
                },
                {
                  "description": null,
                  "name": "charge_pending_check",
                  "type": "boolean"
                },
                {
                  "description": null,
                  "name": "error.code",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "error.message",
                  "type": "string"
                },
                {
                  "description": "Opprinnelig status-/innholdssvar med HTTP503 result_pending_check: samme opprinnelige offentlige video-ID som id.",
                  "name": "operation_id",
                  "type": "string"
                },
                {
                  "description": "server_error ved HTTP503 result_pending_check.",
                  "name": "error.type",
                  "type": "string"
                }
              ],
              "format": "mp4",
              "maximum_outputs": 4,
              "status_enum": [
                "in_progress",
                "completed",
                "failed"
              ]
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "alibaba/happyhorse-1.1"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_bytes": 10000,
                "maximum_length": null,
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string",
                "unit": "UTF8-byte"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum": 15,
                "minimum": 3,
                "name": "duration",
                "required": true,
                "type": "integer",
                "unit": "sekunder"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "16:9"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "everyfieldoutsideexactrequiredprofile",
              "generate_audio field must be omitted"
            ]
          },
          "hints": [
            "Opprett én gang og lagre den returnerte ID-en.",
            "Spør jevnlig etter den opprinnelige statusen; behold hver ferdigstilte ressurs og varigheten."
          ],
          "input": {
            "additional_properties": false,
            "aspect_ratio": [
              "16:9"
            ],
            "content_type": "application/json",
            "duration_integer_range": [
              3,
              15
            ],
            "generate_audio": "Må utelates (ikke false); AAC er inkludert",
            "material_types": [
              "text"
            ],
            "other_options": false,
            "prompt_max_bytes": 10000,
            "required": [
              "model",
              "prompt",
              "duration",
              "resolution",
              "aspect_ratio"
            ],
            "resolution": [
              "720p"
            ]
          },
          "lifecycle": {
            "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
            "content": [
              {
                "http": "GET",
                "parameters": [
                  {
                    "availability": "source_interface",
                    "conditions": "Must be less than the actual returned output count.",
                    "default": 0,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": null,
                    "maximum_known": false,
                    "minimum": 0,
                    "name": "index",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default0"
                }
              },
              {
                "http": "GET",
                "parameters": [
                  {
                    "availability": "source_interface",
                    "conditions": "Must be less than the actual returned output count.",
                    "default": 0,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": null,
                    "maximum_known": false,
                    "minimum": 0,
                    "name": "index",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/videos/generations/{request_id}/content"
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "id_source": "Actualreturnedpublicid; opaque URLencodeit forGET. On HTTP503 result_pending_check from original status/content GET, operation_id equals id: use that same original public video ID for polling. Do not substitute unrelated operation IDs from other responses.",
            "mode": "submit_once_poll_original",
            "multioutputs": "retain every completed data output; index0 alone is not all outputs",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 202,
            "unknown": "Read existing original job; never resubmit unknown send.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations",
            "/videos",
            "/videos/generations"
          ],
          "operation_modes": [
            "text_to_video"
          ],
          "output": {
            "all_results": "Completed data[] contains all owned signed content URLs. Fetch each returned URL, or use the content endpoint with index set to an actual output index. A failed original job may return charge_pending_check; check that original job rather than creating it again.",
            "create_status": 202,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "object",
                "type": "string"
              },
              {
                "description": null,
                "name": "model",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string"
              },
              {
                "description": null,
                "name": "data[]",
                "type": "signed content URL"
              },
              {
                "description": null,
                "name": "charge_pending_check",
                "type": "boolean"
              },
              {
                "description": null,
                "name": "error.code",
                "type": "string"
              },
              {
                "description": null,
                "name": "error.message",
                "type": "string"
              }
            ],
            "format": "mp4",
            "maximum_outputs": 4,
            "status_enum": [
              "in_progress",
              "completed",
              "failed"
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 1080p",
              "quoted_unit": "per video second"
            },
            "label": "Videopris",
            "units": [
              {
                "amount": "0.2556",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_1080p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.2556",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 720p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.1976",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_720p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.1976",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "basis": "Dette anslaget er verken en tilleggsavgift eller en fast sats for den fullførte genereringen.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Anslått genereringskostnad",
            "units": [
              {
                "amount": "0.5928",
                "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.5928",
                "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'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"alibaba/happyhorse-1.1\", \"prompt\": \"A cat in a spacesuit walking on the Moon\", \"duration\": 3, \"resolution\": \"720p\", \"aspect_ratio\": \"16:9\"}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\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\n",
            "label": "curl · exact retained creation",
            "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": [
          "Create once and save returned ID.",
          "Poll original status; retain every completed asset and duration."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Видео",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations",
          "/videos",
          "/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 1080p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.2556",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_1080p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.2556",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 720p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.1976",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_720p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.1976",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "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.5928",
                "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.5928",
                "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": "alibaba/happyhorse-1.1",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}",
          "GET /v1/videos/{request_id}/content",
          "GET /v1/videos/generations/{request_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.2556",
            "amount_unit": "usd_per_video_second",
            "billing_input": false,
            "estimate_only": true,
            "key": "duration_seconds_1080p",
            "label": "Video price",
            "native_amount_usd_per_unit": "0.2556",
            "native_quantity": 1,
            "public_unit_label": "per video second",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_second"
          },
          {
            "amount": "0.1976",
            "amount_unit": "usd_per_video_second",
            "billing_input": false,
            "estimate_only": true,
            "key": "duration_seconds_720p",
            "label": "Video price",
            "native_amount_usd_per_unit": "0.1976",
            "native_quantity": 1,
            "public_unit_label": "per video second",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_second"
          },
          {
            "amount": "0.5928",
            "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.5928",
            "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": "alibaba/happyhorse-1.1",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "31afe357b41b531a030fd160ae263a116a9e54006b0c980e7cea35689cf529f0",
    "input_html_sha256": "5d4b9d0a8a3302f10c2c9940434c285c10c93b73d35028aebb3e04a91ceec318",
    "private_audit_sha256": "25b2471068c9ffe547f20325fe7176f010d8ffc6f0296b87fcf79aebe32780a8",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/nb/alibaba-happyhorse-1-1/",
    "description": "Alibaba HappyHorse 1.1 genererer korte videoer med lyd fra en tekstbeskrivelse, ett startbilde eller opptil ni referansebilder. Produsentens profiler fremhever forbedret bevegelse, huddetaljer og karakterkonsistens mellom klipp. Resultatet er MP4 på 3–15 sekunder ved 24 bilder per sekund, med valg mellom 480p, 720p og 1080p.",
    "locale": "nb",
    "md_url": "https://ailoot.ai/models/nb/alibaba-happyhorse-1-1/index.md",
    "title": "Alibaba: HappyHorse 1.1 — Ailoot",
    "url": "https://ailoot.ai/models/nb/alibaba-happyhorse-1-1/"
  },
  "rawModel": {
    "about": "Alibaba HappyHorse 1.1 er en videogenereringsutgave med egne navngitte profiler for tekst-til-video, bilde-til-video fra første bilde og referanse-til-video. Produsenten fremhever forbedrede visuelle detaljer, bevegelse, karakteridentitet mellom klipp, tekststabilitet og synkronisering av lyd og bilde. Resultatet er en kort video med lyd, nyttig til et produktopptak, en portrettanimasjon eller en liten karakterscene. Velg inndatamodus etter hva som skal definere scenen: et skriftlig konsept, et nøyaktig åpningsbilde eller flere visuelle referanser.\n\nFor tekst-til-video beskriver du motiv, lokasjon, handling, utsnitt, kamerabevegelse og ønsket lyd. I en kort handlingsscene kan du vise en syklist som stopper ved en kafé langs elven, mens kameraet beveger seg rolig mot den parkerte sykkelen. Hold handlingen passende for et kort klipp, og beskriv sluttøyeblikket. Produsentens nåværende tekstveiledning tillater opptil 5 000 ikke-kinesiske eller 2 500 kinesiske tegn og kutter tekst utover grensen. Organiser beskrivelsen slik at det vesentlige motivet og handlingen er uttrykkelige, fremfor begravet i gjentatte adjektiver.\n\nBilde-til-video fra første bilde bruker nøyaktig ett bilde som åpning. Klargjør motivet, komposisjonen og ønsket utsnitt i dette stillbildet, og beskriv deretter hva som skal bevege seg eller hvordan kameraet skal endres. De dokumenterte bildeformatene er JPEG/JPG, PNG og WEBP, opptil 20 MB, med begge dimensjoner på minst 300 piksler og et sideforhold mellom 1:2.5 og 2.5:1. Resultatet tilnærmer seg det valgte oppløsningsnivået samtidig som kildebildets proporsjoner bevares. Et stående resultat begynner derfor med en egnet stående komposisjon, fremfor en urelatert instruksjon om sideforhold.\n\nReferanse-til-video tar imot ett til ni bilder. Prompten bruker [Image 1], [Image 2] og påfølgende posisjoner til å identifisere dem i inndatarekkefølgen. Angi rollen til hver referanse, og navngi det relevante objektet eller personen, slik at et scenebilde ikke forveksles med en karakterkilde. Referanseveiledningen godtar JPEG/JPG, PNG eller WEBP på opptil 20 MB, krever en kortside på minst 400 piksler og anbefaler tydelige referanser i 720p eller høyere. Unngå en sterkt komprimert referanse der identifiserende detaljer allerede mangler.\n\nFor en scene med flere referanser kan du plassere personen fra ett bilde i rommet fra et annet, samtidig som en frakk eller et produkt fra et tredje bevares. Beskriv samspillet og kameraet i den samme beskrivelsen. Referanseprofilen i 1.1 fremhever stabilitet i motiver, scenestil og filmatiske bevegelser; undersøk det faktiske resultatet for ønsket identitet, produktmerking og romlig plassering. Flere bilder gir beskrivelsen mer informasjon, men gjennomgangen må fortsatt kontrollere hvilke egenskaper som ble overført til videoen.\n\nProdusenten oppgir utdata i 480p, 720p og 1080p for genereringsmodusene i 1.1, med lengde i hele sekunder fra tre til femten og MP4 ved 24 bilder per sekund. API-responsen beskriver H.264-koding. Tekst- og referansegenerering tilbyr formater som 16:9, 9:16, 1:1, 4:3, 3:4, 4:5, 5:4, 9:21 og 21:9; generering fra første bilde følger inngangsbildet. Velg format etter bruksstedet, og gi plass til senere undertekster eller layoutelementer. Undersøk det faktiske utsnittet i den returnerte videoen i den tiltenkte visningsstørrelsen.\n\nModellfamiliens resultater inkluderer lyd. Gi fremføringen eller atmosfæren en tydelig rolle i beskrivelsen, og vurder eventuell dialog, effekter eller bakgrunnsspor sammen med bildet. Hold talematerialet kort nok til handlingen og pausene, fremfor å presse et langt manus inn i ett kort opptak. Kontroller leppebevegelse, hvem som snakker og den faktiske ordlyden når tale er med. At et promptspråk godtas, innebærer i seg selv verken garantert uttale eller en separat inngang for stemmereferanse.\n\nProdusentens dokumenterte arbeidsflyt er asynkron: en oppgaveidentifikator følger behandlingen, og et vellykket resultat gir videoens adresse. Resultatlenken og oppgavesøkene er dokumentert med en gyldighetsperiode på tjuefire timer. Behold det ferdige klippet, referansene og prompten som revisjonsgrunnlag. Veiledningene dokumenterer også kontroller for seed og vannmerke. En fast seed kan hjelpe med sammenligning, men produsenten sier uttrykkelig at den ikke garanterer identiske resultater, så vurder den returnerte filen fremfor å anta at én innstilling fastsetter hvert bilde.\n\nHappyHorse 1.0 og 1.1 er separate utgaver. Utdatatabellen for 1.1 legger 480p til valgene 720p og 1080p fra 1.0, og modellsidene for 1.1 beskriver oppgraderinger i detaljer, bevegelse og konsistens. Den separat navngitte video-edit-profilen for HappyHorse 1.0 har egne inndata og grenser og er ikke en redigeringsmodus som uten videre kan tilordnes 1.1. Vurder hele 1.1-klippet for identitet, bevegelse, utsnitt, tekst og lyd, og gjør deretter en konkret korrigering samtidig som de vellykkede delene av beskrivelsen bevares.",
    "alias_of": null,
    "aliases": [],
    "author": "Alibaba",
    "available": null,
    "canonical_model": "alibaba/happyhorse-1.1",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text",
        "image"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.5928",
            "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.5928",
            "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": "Fullstendige priser for konfigurasjonen finnes i detaljene."
      }
    ],
    "ctx": null,
    "declared_tariff_references": [
      {
        "client_selectable": false,
        "key": "07cb5e688ee1902482b38ff2",
        "label": "Prisreferanser for videokonfigurasjoner",
        "profiles": [
          {
            "basis": "Publisert prisreferanse for den viste konfigurasjonen. Endelige belastninger følger konfigurasjonen som faktisk faktureres.",
            "dimensions": {
              "conditions": "resolution: 720p"
            },
            "label": "Videopris",
            "units": [
              {
                "amount": "0.1976",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "key": "video_second",
                "label": "Video price",
                "public_unit_label": "per video second",
                "quantity": 1,
                "rate_role": "typed_video_second_reference",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "basis": "Publisert prisreferanse for den viste konfigurasjonen. Endelige belastninger følger konfigurasjonen som faktisk faktureres.",
            "dimensions": {
              "conditions": "resolution: 1080p"
            },
            "label": "Videopris",
            "units": [
              {
                "amount": "0.2556",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "key": "video_second",
                "label": "Video price",
                "public_unit_label": "per video second",
                "quantity": 1,
                "rate_role": "typed_video_second_reference",
                "side": "out",
                "unit": "video_second"
              }
            ]
          }
        ]
      }
    ],
    "entity_type": "model",
    "formats": [
      "videos"
    ],
    "id": "alibaba/happyhorse-1.1",
    "input": [
      "text"
    ],
    "kind": "video",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "De viste satsene anslår kostnaden før generering. Det endelige beløpet beregnes ut fra kostnaden som er registrert for den opprinnelige genereringen. Målt varighet på utdataene og anslåtte mengder er ikke den endelige fakturerbare mengden.",
          "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": "Completeddata[] contains all owned signedcontentURLs. FetcheachactualURL,orusecontent?index=actualindex. Failedoriginaljobs maycarrycharge_pending_check; do not recreate.",
            "errors": [
              {
                "code": null,
                "condition": "Lesing av den rå forespørselskroppen mislykkes før videoprofilen tolkes",
                "http_status": 400,
                "recovery": "Behold det returnerte svaret og korriger den uleselige forespørselskroppen.",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "Tolking av den eksakte videoprofilen mislykkes, eller hele den tolkede profilen mangler et klart og eksakt priskort",
                "http_status": 422,
                "message": "The complete video request cannot be priced",
                "recovery": "Behold svaret; bruk hele den eksakte godkjente profilen og det publiserte priskortet. Denne grenen kjøres før en forespørsel sendes til leverandøren.",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "Det opprinnelige resultatinnholdet er ennå ikke tilgjengelig",
                "http_status": 409,
                "recovery": "Spør jevnlig etter den opprinnelige returnerte ID-en og følg Retry-After.",
                "type": "video_not_ready"
              },
              {
                "code": null,
                "condition": "Det returnerte svaret angir at operasjonen eller resultatet må kontrolleres",
                "http_status": null,
                "recovery": "Bevar den opprinnelige returnerte operasjons-/oppgave-ID-en, forespørselshodene og svaret; fortsett å lese den opprinnelige operasjonen på de støttede måtene. Ikke send opprettelsesforespørselen på nytt.",
                "type": "server_error"
              },
              {
                "absent_fields": [
                  "status",
                  "object",
                  "model",
                  "data"
                ],
                "code": "result_pending_check",
                "condition": "GET for opprinnelig status/innhold: oppgaven er ikke publisert, den opprinnelige jobben er ikke failed/cancelled/expired, og lokal tilstand er unknown eller den opprinnelige jobbstatusen er completed.",
                "friendly_fields": "error.reason=result_pending_check,error.param=null; error.operation_id and error.request_id when the existing context supplies them. error.message is rewritten/localized.",
                "headers": {
                  "Retry-After": null,
                  "X-Should-Retry": "false"
                },
                "http_status": 503,
                "recovery": "Behold opprinnelig id og operation_id (samme offentlige video-ID), svar og svarhoder; les bare opprinnelig status og innhold. Send aldri en ny forespørsel om generering.",
                "response_fields": {
                  "charge_pending_check": true,
                  "error.code": "result_pending_check",
                  "error.type": "server_error",
                  "id": "original public video ID",
                  "operation_id": "same as id"
                },
                "type": "server_error"
              }
            ],
            "hints": [],
            "ignored_fields": [],
            "lifecycle": {
              "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
              "content": [
                {
                  "http": "GET",
                  "parameters": [
                    {
                      "availability": "source_interface",
                      "conditions": "Must be less than the actual returned output count.",
                      "default": 0,
                      "default_known": true,
                      "enum": null,
                      "enum_known": false,
                      "maximum": null,
                      "maximum_known": false,
                      "minimum": 0,
                      "name": "index",
                      "required": false,
                      "type": "integer"
                    }
                  ],
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default0"
                  }
                },
                {
                  "http": "GET",
                  "parameters": [
                    {
                      "availability": "source_interface",
                      "conditions": "Must be less than the actual returned output count.",
                      "default": 0,
                      "default_known": true,
                      "enum": null,
                      "enum_known": false,
                      "maximum": null,
                      "maximum_known": false,
                      "minimum": 0,
                      "name": "index",
                      "required": false,
                      "type": "integer"
                    }
                  ],
                  "path": "/v1/videos/generations/{request_id}/content"
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "id_source": "Actualreturnedpublicid; opaque URLencodeit forGET. On HTTP503 result_pending_check from original status/content GET, operation_id equals id: use that same original public video ID for polling. Do not substitute unrelated operation IDs from other responses.",
              "mode": "submit_once_poll_original",
              "multioutputs": "retain every completed data output; index0 alone is not all outputs",
              "owned_result": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              },
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "submit_status": 202,
              "unknown": "Les den eksisterende opprinnelige jobben; send aldri en forespørsel med ukjent utfall på nytt.",
              "unknown_no_replay": true
            },
            "material_combinations": [
              {
                "content_type": "application/json",
                "mode": "text_to_video",
                "required": [
                  "prompt"
                ]
              }
            ],
            "media_library": {
              "asset": {
                "fields": [
                  {
                    "description": null,
                    "name": "asset_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "task_id",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "output_key",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "family",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "model",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "method",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "status",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "content_type",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "sha256",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "size_bytes",
                    "type": "integer"
                  },
                  {
                    "description": null,
                    "name": "content_url",
                    "type": "string"
                  }
                ],
                "http": "GET",
                "id_source": "actual returned asset_id",
                "path": "/v1/media/assets/{asset_id}"
              },
              "content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "range_header_supported": true,
                "url_source": "Use exact returned signed content_url including its token; do not construct a token."
              },
              "expired_link": {
                "code": "link_expired",
                "http_status": 404,
                "recovery": "Read the asset again to obtain its refreshed signed content_url, then fetch that URL. Do not regenerate."
              },
              "list": {
                "all_pages": "Follow every returned next_cursor, then select records by their actual task_id/output_key.",
                "http": "GET",
                "output_fields": [
                  {
                    "description": null,
                    "name": "object",
                    "type": "string"
                  },
                  {
                    "description": null,
                    "name": "data",
                    "type": "asset[]"
                  },
                  {
                    "description": null,
                    "name": "next_cursor",
                    "type": "string|null"
                  }
                ],
                "parameters": [
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "family",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": null,
                    "default_known": false,
                    "enum": null,
                    "enum_known": false,
                    "name": "cursor",
                    "required": false,
                    "type": "string"
                  },
                  {
                    "availability": "source_interface",
                    "default": 20,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": 100,
                    "minimum": 1,
                    "name": "limit",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/media/assets"
              },
              "revoke": {
                "http": "DELETE",
                "meaning": "Revokes/deletes the existing owned file; this is not generation cancellation.",
                "path": "/v1/media/assets/{asset_id}",
                "pending_status": "revoking",
                "success_statuses": [
                  202,
                  204
                ]
              },
              "task": {
                "http": "GET",
                "id_source": "Use actual returned task_id or original public video id from response/media library. On HTTP503 result_pending_check from original video status/content GET, operation_id equals that original public video id. Do not assume unrelated operation IDs name media tasks.",
                "path": "/v1/media/tasks/{task_id}"
              }
            },
            "operation_modes": [
              "text_to_video"
            ],
            "outputs": {
              "all_results": "Ferdigstilt data[] inneholder alle signerte URL-er til innhold du eier. Hent hver returnert URL, eller bruk innholdsendepunktet med index satt til en faktisk utdataindeks. En mislykket opprinnelig jobb kan returnere charge_pending_check; kontroller den opprinnelige jobben fremfor å opprette den igjen.",
              "create_status": 202,
              "family": "video",
              "fields": [
                {
                  "description": null,
                  "name": "id",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "object",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "model",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "status",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "data[]",
                  "type": "signed content URL"
                },
                {
                  "description": null,
                  "name": "charge_pending_check",
                  "type": "boolean"
                },
                {
                  "description": null,
                  "name": "error.code",
                  "type": "string"
                },
                {
                  "description": null,
                  "name": "error.message",
                  "type": "string"
                },
                {
                  "description": "Opprinnelig status-/innholdssvar med HTTP503 result_pending_check: samme opprinnelige offentlige video-ID som id.",
                  "name": "operation_id",
                  "type": "string"
                },
                {
                  "description": "server_error ved HTTP503 result_pending_check.",
                  "name": "error.type",
                  "type": "string"
                }
              ],
              "format": "mp4",
              "maximum_outputs": 4,
              "status_enum": [
                "in_progress",
                "completed",
                "failed"
              ]
            },
            "parameters": [
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "alibaba/happyhorse-1.1"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum_bytes": 10000,
                "maximum_length": null,
                "min_length": 1,
                "name": "prompt",
                "required": true,
                "type": "string",
                "unit": "UTF8-byte"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": null,
                "enum_known": false,
                "maximum": 15,
                "minimum": 3,
                "name": "duration",
                "required": true,
                "type": "integer",
                "unit": "sekunder"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "720p"
                ],
                "enum_known": true,
                "name": "resolution",
                "required": true,
                "type": "string"
              },
              {
                "availability": "source_interface",
                "default": null,
                "default_known": false,
                "enum": [
                  "16:9"
                ],
                "enum_known": true,
                "name": "aspect_ratio",
                "required": true,
                "type": "string"
              }
            ],
            "profile_binding": "Exact existing Ailoot model and method; interface constraints below do not assert provider qualification.",
            "unsupported": [
              "everyfieldoutsideexactrequiredprofile",
              "generate_audio field must be omitted"
            ]
          },
          "hints": [
            "Opprett én gang og lagre den returnerte ID-en.",
            "Spør jevnlig etter den opprinnelige statusen; behold hver ferdigstilte ressurs og varigheten."
          ],
          "input": {
            "additional_properties": false,
            "aspect_ratio": [
              "16:9"
            ],
            "content_type": "application/json",
            "duration_integer_range": [
              3,
              15
            ],
            "generate_audio": "Må utelates (ikke false); AAC er inkludert",
            "material_types": [
              "text"
            ],
            "other_options": false,
            "prompt_max_bytes": 10000,
            "required": [
              "model",
              "prompt",
              "duration",
              "resolution",
              "aspect_ratio"
            ],
            "resolution": [
              "720p"
            ]
          },
          "lifecycle": {
            "all_results": "Follow everyactualreturnedoutputandownedasset; no result is discardedbecauseindex0orcontent_urlalreadyexists.",
            "content": [
              {
                "http": "GET",
                "parameters": [
                  {
                    "availability": "source_interface",
                    "conditions": "Must be less than the actual returned output count.",
                    "default": 0,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": null,
                    "maximum_known": false,
                    "minimum": 0,
                    "name": "index",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default0"
                }
              },
              {
                "http": "GET",
                "parameters": [
                  {
                    "availability": "source_interface",
                    "conditions": "Must be less than the actual returned output count.",
                    "default": 0,
                    "default_known": true,
                    "enum": null,
                    "enum_known": false,
                    "maximum": null,
                    "maximum_known": false,
                    "minimum": 0,
                    "name": "index",
                    "required": false,
                    "type": "integer"
                  }
                ],
                "path": "/v1/videos/generations/{request_id}/content"
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "id_source": "Actualreturnedpublicid; opaque URLencodeit forGET. On HTTP503 result_pending_check from original status/content GET, operation_id equals id: use that same original public video ID for polling. Do not substitute unrelated operation IDs from other responses.",
            "mode": "submit_once_poll_original",
            "multioutputs": "retain every completed data output; index0 alone is not all outputs",
            "owned_result": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}"
            },
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "submit_status": 202,
            "unknown": "Read existing original job; never resubmit unknown send.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations",
            "/videos",
            "/videos/generations"
          ],
          "operation_modes": [
            "text_to_video"
          ],
          "output": {
            "all_results": "Completed data[] contains all owned signed content URLs. Fetch each returned URL, or use the content endpoint with index set to an actual output index. A failed original job may return charge_pending_check; check that original job rather than creating it again.",
            "create_status": 202,
            "family": "video",
            "fields": [
              {
                "description": null,
                "name": "id",
                "type": "string"
              },
              {
                "description": null,
                "name": "object",
                "type": "string"
              },
              {
                "description": null,
                "name": "model",
                "type": "string"
              },
              {
                "description": null,
                "name": "status",
                "type": "string"
              },
              {
                "description": null,
                "name": "data[]",
                "type": "signed content URL"
              },
              {
                "description": null,
                "name": "charge_pending_check",
                "type": "boolean"
              },
              {
                "description": null,
                "name": "error.code",
                "type": "string"
              },
              {
                "description": null,
                "name": "error.message",
                "type": "string"
              }
            ],
            "format": "mp4",
            "maximum_outputs": 4,
            "status_enum": [
              "in_progress",
              "completed",
              "failed"
            ]
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 1080p",
              "quoted_unit": "per video second"
            },
            "label": "Videopris",
            "units": [
              {
                "amount": "0.2556",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_1080p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.2556",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 720p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.1976",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_720p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.1976",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "basis": "Dette anslaget er verken en tilleggsavgift eller en fast sats for den fullførte genereringen.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "Anslått genereringskostnad",
            "units": [
              {
                "amount": "0.5928",
                "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.5928",
                "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'\nimport json,os\nfrom pathlib import Path\np=json.loads('{\"model\": \"alibaba/happyhorse-1.1\", \"prompt\": \"A cat in a spacesuit walking on the Moon\", \"duration\": 3, \"resolution\": \"720p\", \"aspect_ratio\": \"16:9\"}')\n\nPath(\"request.json\").write_text(json.dumps(p,ensure_ascii=False))\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\n",
            "label": "curl · exact retained creation",
            "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": [
          "Create once and save returned ID.",
          "Poll original status; retain every completed asset and duration."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Видео",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [
          "/v1/videos/generations",
          "/videos",
          "/videos/generations"
        ],
        "out": null,
        "output": [
          "video"
        ],
        "path": "/v1/videos",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "original_invoice_usd",
          "image_input_price": null,
          "image_output_price": null
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": false,
                "estimate_only": true,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 1080p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.2556",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_1080p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.2556",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "dimensions": {
              "conditions": "resolution: 720p",
              "quoted_unit": "per video second"
            },
            "label": "Video price",
            "units": [
              {
                "amount": "0.1976",
                "amount_unit": "usd_per_video_second",
                "billing_input": false,
                "estimate_only": true,
                "key": "duration_seconds_720p",
                "label": "Video price",
                "native_amount_usd_per_unit": "0.1976",
                "native_quantity": 1,
                "public_unit_label": "per video second",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "video_second"
              }
            ]
          },
          {
            "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.5928",
                "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.5928",
                "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": "alibaba/happyhorse-1.1",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}",
          "GET /v1/videos/{request_id}/content",
          "GET /v1/videos/generations/{request_id}/content"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": false,
            "estimate_only": true,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.2556",
            "amount_unit": "usd_per_video_second",
            "billing_input": false,
            "estimate_only": true,
            "key": "duration_seconds_1080p",
            "label": "Video price",
            "native_amount_usd_per_unit": "0.2556",
            "native_quantity": 1,
            "public_unit_label": "per video second",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_second"
          },
          {
            "amount": "0.1976",
            "amount_unit": "usd_per_video_second",
            "billing_input": false,
            "estimate_only": true,
            "key": "duration_seconds_720p",
            "label": "Video price",
            "native_amount_usd_per_unit": "0.1976",
            "native_quantity": 1,
            "public_unit_label": "per video second",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "video_second"
          },
          {
            "amount": "0.5928",
            "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.5928",
            "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": "alibaba/happyhorse-1.1",
        "request_model_id": "alibaba/happyhorse-1.1",
        "route_label": "Ultra"
      }
    ],
    "name": "Alibaba: HappyHorse 1.1",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 0.5928,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 0.5928,
      "varies": false
    },
    "pricing_profiles": [
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.14",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 0,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.28",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 1,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.36",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 2,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 3,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 4,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 5,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 6,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 7,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 8,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 9,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 10,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 11,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 12,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 13,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-t2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-t2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-t2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-t2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 14,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.14",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 15,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.28",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 16,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.36",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 17,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 18,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 19,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 20,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 21,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 22,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 23,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 24,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 25,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 26,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 27,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 28,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-i2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-i2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-i2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-i2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 29,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.14",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 30,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.28",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 31,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "International",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.36",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "International",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 32,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 33,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 34,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 35,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 36,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 37,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 38,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 39,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 40,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 41,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "480P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.1237690",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "480P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 42,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "720P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.247538",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "720P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 43,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "native_profile_selection_pending": true,
          "scope": "manufacturer_reference"
        },
        "dimensions": {
          "Deployment scope": "Global",
          "Model ID": "happyhorse-1.1-r2v",
          "Output video resolution": "1080P",
          "maker_published_model_id": "happyhorse-1.1-r2v",
          "only_output_billed": true
        },
        "label": "Ultra",
        "units": [
          {
            "amount": "0.330052",
            "amount_unit": "usd_per_output_video_second",
            "conditions": {
              "Deployment scope": "Global",
              "Model ID": "happyhorse-1.1-r2v",
              "Output video resolution": "1080P",
              "maker_published_model_id": "happyhorse-1.1-r2v",
              "only_output_billed": true
            },
            "key": "output_video_second",
            "label": "output video second",
            "profile_index": 44,
            "quantity": "1",
            "rate_role": "binding_component_rate",
            "side": "out",
            "unit": "output_video_second"
          }
        ]
      },
      {
        "applicability": {
          "client_selectable": false,
          "no_method_admission_claim": true,
          "scope": "supplier_tariff_reference"
        },
        "dimensions": {},
        "label": "Ailoot Ultra · Tariff components",
        "units": [
          {
            "amount": "0.1976",
            "amount_unit": "usd_per_exact_physical_unit",
            "basis": "resolution=720p Source-only tariff component.",
            "billing_original_currency": "USD",
            "billing_original_rate": "0.1976",
            "key": "duration_seconds_720p",
            "label": "output second",
            "native_amount_usd_per_unit": "0.1976",
            "native_quantity": 1,
            "quantity": 1,
            "side": "out",
            "unit": "output_second"
          },
          {
            "amount": "0.2556",
            "amount_unit": "usd_per_exact_physical_unit",
            "basis": "resolution=1080p Source-only tariff component.",
            "billing_original_currency": "USD",
            "billing_original_rate": "0.2556",
            "key": "duration_seconds_1080p",
            "label": "output second",
            "native_amount_usd_per_unit": "0.2556",
            "native_quantity": 1,
            "quantity": 1,
            "side": "out",
            "unit": "output_second"
          }
        ]
      }
    ],
    "public_id": "alibaba/happyhorse-1.1",
    "short": "Alibaba HappyHorse 1.1 genererer korte videoer med lyd fra en tekstbeskrivelse, ett startbilde eller opptil ni referansebilder. Produsentens profiler fremhever forbedret bevegelse, huddetaljer og karakterkonsistens mellom klipp. Resultatet er MP4 på 3–15 sekunder ved 24 bilder per sekund, med valg mellom 480p, 720p og 1080p."
  },
  "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": "Alibaba HappyHorse 1.1 genererer korte videoer med lyd fra en tekstbeskrivelse, ett startbilde eller opptil ni referansebilder. Produsentens profiler fremhever forbedret bevegelse, huddetaljer og karakterkonsistens mellom klipp. Resultatet er MP4 på 3–15 sekunder ved 24 bilder per sekund, med valg mellom 480p, 720p og 1080p.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "a4d3d84b2d26122d4e50d1656ce4f00eceb5dcacd9372b7cc4a80af4b5906dfe",
    "renderer_sha256": "c8cb5a92c10b47373d294dee7465d66796cd4710c6626fd81459dc0625fc6d26"
  },
  "sourceRevision": "edd2ba4acc97047c1aee2eaea058840eaa3bd861dc30c16e1453b1dbb267e23c"
}
