{
  "aboutHtml": "<p>hunyuan az a videógenerálási bejegyzés, amelynek elfogadott /v1/videos kérése model és prompt mezőt igényel. Konkrét alkalmazás lehet szövegből koncepciójelenet, például üzlet előtt elhaladó kerékpár készítése későbbi storyboardhoz. Akkor válassza, ha a szövegből videó illik a feladathoz, és elegendő a minimális kérésfelület.</p><p>A szerződés nem azonosít pontosabb Hunyuan-kiadást, és nem kínál időtartam-, felbontás- vagy referenciakép-vezérlőt. A jelenetet egyszer küldje be, és a visszaadott eredeti feladat állapotát olvassa a befejezésig; a kezdeti feladatazonosító nem a kész videó. Gyűjtse be e feladat minden tényleges kimenetét. A külön hunyuan-pro és hunyuan-role bejegyzés szöveges beszélgetési útvonal, nem helyettesíti ezt a videós folyamatot.</p>",
  "aboutText": "hunyuan az a videógenerálási bejegyzés, amelynek elfogadott /v1/videos kérése model és prompt mezőt igényel. Konkrét alkalmazás lehet szövegből koncepciójelenet, például üzlet előtt elhaladó kerékpár készítése későbbi storyboardhoz. Akkor válassza, ha a szövegből videó illik a feladathoz, és elegendő a minimális kérésfelület. A szerződés nem azonosít pontosabb Hunyuan-kiadást, és nem kínál időtartam-, felbontás- vagy referenciakép-vezérlőt. A jelenetet egyszer küldje be, és a visszaadott eredeti feladat állapotát olvassa a befejezésig; a kezdeti feladatazonosító nem a kész videó. Gyűjtse be e feladat minden tényleges kimenetét. A külön hunyuan-pro és hunyuan-role bejegyzés szöveges beszélgetési útvonal, nem helyettesíti ezt a videós folyamatot.",
  "editorialOverlay": {
    "copy_fields": {
      "about_html": "<p>hunyuan az a videógenerálási bejegyzés, amelynek elfogadott /v1/videos kérése model és prompt mezőt igényel. Konkrét alkalmazás lehet szövegből koncepciójelenet, például üzlet előtt elhaladó kerékpár készítése későbbi storyboardhoz. Akkor válassza, ha a szövegből videó illik a feladathoz, és elegendő a minimális kérésfelület.</p><p>A szerződés nem azonosít pontosabb Hunyuan-kiadást, és nem kínál időtartam-, felbontás- vagy referenciakép-vezérlőt. A jelenetet egyszer küldje be, és a visszaadott eredeti feladat állapotát olvassa a befejezésig; a kezdeti feladatazonosító nem a kész videó. Gyűjtse be e feladat minden tényleges kimenetét. A külön hunyuan-pro és hunyuan-role bejegyzés szöveges beszélgetési útvonal, nem helyettesíti ezt a videós folyamatot.</p>",
      "short_text": "Szövegből videót készítő útvonal minimális model és prompt kéréssel, aszinkron eredménybegyűjtéssel."
    },
    "copy_sha256": "7bd6d4e2842fdcb502ada6f173fb73486a10aa2a7cbe9dcbeb7a94fcd591ff56",
    "copy_source": {
      "locale": "hu",
      "pack_sha256": "0f56d90ba41881e1134accf82e57338f246f8753ca4c0cee929aaffada5d10e7",
      "record_model_id": "hunyuan",
      "source_facts_sha256": "5d78c89409c5df32be84e9c9c1a2ebe0bb6f4327831e0ca23a5b4f16cfcda352",
      "validation_sha256": "a2ac2f28056280fc0b2ea34a501bf156d5ce155406e57e708edf30bfdf6bfdc6"
    },
    "html_sha256": "27a22b498ff05b00b159aaf8d35626398f5c22872be39116d8ad3d2a948e0194",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "hu",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">Hunyuan</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"Bezárás\">×</button></div><div class=\"idline\"><span>Hunyuan /</span><code>hunyuan</code><button type=\"button\" id=\"copy-id\">ID másolása</button></div><nav class=\"card-jump-nav\" aria-label=\"Modellkártya szakaszai\"><button type=\"button\" data-card-jump=\"overview\">Kezdő lépések</button><button type=\"button\" data-card-jump=\"methods\">Bemenetek és metódusok</button><button type=\"button\" data-card-jump=\"pricing\">Díjcsomagok</button><button type=\"button\" data-card-jump=\"examples\">Példák</button><button type=\"button\" data-card-jump=\"results\">Eredmények</button><button type=\"button\" data-card-jump=\"aliases\">Álnevek</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"API-metódusok\"><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|hunyuan\">Videó</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\">Kezdő lépések</h3><p class=\"mdesc-full\">Szövegből videót készítő útvonal minimális model és prompt kéréssel, aszinkron eredménybegyűjtéssel.</p><dl class=\"card-io\" data-card-io><div><dt>Elfogadott bemenetek</dt><dd>Szöveg</dd></div><div><dt>Eredmények</dt><dd>Videó</dd></div></dl><details class=\"card-about\"><summary>A modellről</summary><p class=\"note-s\" data-model-method-boundary>Ez a leírás a modell képességeit ismerteti. Az Ailootban elérhető bemenetek, kimenetek és lehetőségek alább, a kiválasztott metódusnál láthatók.</p><div class=\"mabout\" id=\"m-about\"><p>hunyuan az a videógenerálási bejegyzés, amelynek elfogadott /v1/videos kérése model és prompt mezőt igényel. Konkrét alkalmazás lehet szövegből koncepciójelenet, például üzlet előtt elhaladó kerékpár készítése későbbi storyboardhoz. Akkor válassza, ha a szövegből videó illik a feladathoz, és elegendő a minimális kérésfelület.</p><p>A szerződés nem azonosít pontosabb Hunyuan-kiadást, és nem kínál időtartam-, felbontás- vagy referenciakép-vezérlőt. A jelenetet egyszer küldje be, és a visszaadott eredeti feladat állapotát olvassa a befejezésig; a kezdeti feladatazonosító nem a kész videó. Gyűjtse be e feladat minden tényleges kimenetét. A külön hunyuan-pro és hunyuan-role bejegyzés szöveges beszélgetési útvonal, nem helyettesíti ezt a videós folyamatot.</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">Elérhető az Ailootban · bemenetek és metódusok</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · Video</b> <code>POST /v1/videos</code></summary><dl class=\"method-capabilities\"><div><dt>Bemenet</dt><dd><code>text</code></dd></div><div><dt>Kimenet</dt><dd><code>video</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>Mező</th><th>Típus</th><th>Követelmény</th><th>Értékek és korlátok</th><th>Alapértelmezett</th></tr></thead><tbody><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span><code>string</code></td><td data-cell-label=\"Követelmény\"><span class=\"card-cell-label\">Követelmény</span>Kötelező</td><td data-cell-label=\"Értékek és korlátok\"><span class=\"card-cell-label\">Értékek és korlátok</span><div>hunyuan</div><div>Feltételek: Pontosan ezt az Ailoot-útválasztási azonosítót használja.</div></td><td data-cell-label=\"Alapértelmezett\" data-default=\"unspecified\"><span class=\"card-cell-label\">Alapértelmezett</span>—</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">prompt</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span><code>string</code></td><td data-cell-label=\"Követelmény\"><span class=\"card-cell-label\">Követelmény</span>Kötelező</td><td data-cell-label=\"Értékek és korlátok\"><span class=\"card-cell-label\">Értékek és korlátok</span><div>Feltételek: Írja le a jelenetet és a benne zajló mozgást.</div></td><td data-cell-label=\"Alapértelmezett\" data-default=\"unspecified\"><span class=\"card-cell-label\">Alapértelmezett</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>Metódus paraméterei és életciklusa</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>Paraméter</th><th>Szerződés</th></tr></thead><tbody><tr><th data-cell-label=\"Paraméter\" scope=\"row\"><span class=\"card-cell-label\">Paraméter</span><code>content_type</code></th><td data-cell-label=\"Szerződés\"><span class=\"card-cell-label\">Szerződés</span>application/json</td></tr><tr><th data-cell-label=\"Paraméter\" scope=\"row\"><span class=\"card-cell-label\">Paraméter</span><code>required</code></th><td data-cell-label=\"Szerződés\"><span class=\"card-cell-label\">Szerződés</span>model, prompt</td></tr><tr><th data-cell-label=\"Paraméter\" scope=\"row\"><span class=\"card-cell-label\">Paraméter</span><code>optional</code></th><td data-cell-label=\"Szerződés\"><span class=\"card-cell-label\">Szerződés</span></td></tr><tr><th data-cell-label=\"Paraméter\" scope=\"row\"><span class=\"card-cell-label\">Paraméter</span><code>material_types</code></th><td data-cell-label=\"Szerződés\"><span class=\"card-cell-label\">Szerződés</span>text</td></tr><tr><th data-cell-label=\"Paraméter\" scope=\"row\"><span class=\"card-cell-label\">Paraméter</span><code>conditions</code></th><td data-cell-label=\"Szerződés\"><span class=\"card-cell-label\">Szerződés</span>Pontosan ezt az Ailoot-útválasztási azonosítót használja., Írja le a jelenetet és a benne zajló mozgást.</td></tr></tbody></table></div><p>Metódus álnevei: <code>/v1/videos/generations</code></p><p>Életciklus: <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/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">Díjcsomagok</h3><div class=\"card-result-process\" data-billing-basis><h5>A végső díj számítása</h5><p class=\"note-s\">A megjelenített díjtételek a generálás előtti költségbecsléshez szolgálnak. A végleges díj az eredeti generáláshoz rögzített költségből számítódik. A kimenet mért időtartama és az előre jelzett mennyiségek nem azonosak a véglegesen elszámolandó mennyiséggel.</p></div><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>A díjszabás nem ad új kérési lehetőségeket. A támogatott paraméterek a kiválasztott módszernél szerepelnek.</p><dl data-price-conditions><dt>Gyors mód</dt><dd>Nincs megadva <span class=\"note-s\">Ha a gyors mód van kiválasztva</span></dd><dt>Flex mód</dt><dd>Nincs megadva <span class=\"note-s\">Ha a flex mód van kiválasztva</span></dd><dt>Maximális gondolkodási ráfordítás</dt><dd>Nincs megadva <span class=\"note-s\">Ha a maximális gondolkodási ráfordításra a default beállításhoz tartozó korrekció vonatkozik</span></dd></dl></div><div data-declared-tariff-pricing><h4>Becsült díjak összehasonlításhoz</h4><h4>Árak beállításonként</h4><p class=\"note-s\">Minden díjat a megjelenített feltételekhez rendeljen. Az alternatív beállítások minden csoportjához egy díjtételt használjon.</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>Beállítás</th><th>Díjtáblázat</th><th>Előre jelzett mennyiség</th><th>Elszámolási mennyiség</th><th>Díj</th></tr></thead><tbody><tr><th data-cell-label=\"Beállítás\" scope=\"row\"><span class=\"card-cell-label\">Beállítás</span>Tokenek alapdíjai</th><td data-cell-label=\"Díjtáblázat\"><span class=\"card-cell-label\">Díjtáblázat</span>Alapdíj</td><td data-cell-label=\"Előre jelzett mennyiség\"><span class=\"card-cell-label\">Előre jelzett mennyiség</span>—</td><td data-cell-label=\"Elszámolási mennyiség\"><span class=\"card-cell-label\">Elszámolási mennyiség</span>—</td><td data-cell-label=\"Díj\"><span class=\"card-cell-label\">Díj</span><div><span>Bemenet · Bemeneti tokenek · Becslés, csak összehasonlításra</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Kimenet · Kimeneti tokenek · Becslés, csak összehasonlításra</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Bemenet · Gyorsítótár olvasása · Becslés, csak összehasonlításra</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Bemenet · Írás a gyorsítótárba · Becslés, csak összehasonlításra</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div><div><span>Bemenet · Írás a gyorsítótárba, 1 óra · Becslés, csak összehasonlításra</span> <b>—</b> <span class=\"price-unit\">/ 1K token</span></div></td></tr><tr><th data-cell-label=\"Beállítás\" scope=\"row\"><span class=\"card-cell-label\">Beállítás</span>Kérésenként</th><td data-cell-label=\"Díjtáblázat\"><span class=\"card-cell-label\">Díjtáblázat</span>—</td><td data-cell-label=\"Előre jelzett mennyiség\"><span class=\"card-cell-label\">Előre jelzett mennyiség</span>—</td><td data-cell-label=\"Elszámolási mennyiség\"><span class=\"card-cell-label\">Elszámolási mennyiség</span>egy kérés</td><td data-cell-label=\"Díj\"><span class=\"card-cell-label\">Díj</span><div><span>Bemenet · Becslés, csak összehasonlításra</span> <b>$1.2</b> <span class=\"price-unit\">kérésenként</span></div></td></tr><tr><th data-cell-label=\"Beállítás\" scope=\"row\"><span class=\"card-cell-label\">Beállítás</span>A generálás becsült költsége</th><td data-cell-label=\"Díjtáblázat\"><span class=\"card-cell-label\">Díjtáblázat</span>—</td><td data-cell-label=\"Előre jelzett mennyiség\"><span class=\"card-cell-label\">Előre jelzett mennyiség</span>becslés egy generálásra</td><td data-cell-label=\"Elszámolási mennyiség\"><span class=\"card-cell-label\">Elszámolási mennyiség</span>—</td><td data-cell-label=\"Díj\"><span class=\"card-cell-label\">Díj</span><div><span>Kimenet · Becsült generálási költség · Becslés, csak összehasonlításra</span> <b>$1.2</b> <span class=\"price-unit\">becslés a generálás előtt</span></div><p class=\"note-s\">Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra.</p></td></tr></tbody></table></div></div><p class=\"note-s\">Az Ailoot a kérés előtt becsült összeget foglal le. Az eredmény után a mért használat alapján elszámolja a végső díjat. Folyamatos átvitel esetén a végső használati rekordot használja. <a href=\"/docs/hu/billing/reserve/\">A foglalás és az elszámolás működése →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">Példakérések</h3><h4>Ailoot Ultra · Video</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"Kódváltozatok\"><button class=\"cg-tab\" id=\"model-code-2804-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2804-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · hozd létre egyszer, és őrizd meg a művelet visszaigazolását</button><button class=\"cg-tab\" id=\"model-code-2804-tab-1\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2804-panel-1\" aria-selected=\"false\" tabindex=\"-1\">Olvasd be az eredeti feladatot</button><button class=\"cg-tab\" id=\"model-code-2804-tab-2\" role=\"tab\" type=\"button\" aria-controls=\"model-code-2804-panel-2\" aria-selected=\"false\" tabindex=\"-1\">Ments el minden elkészült, a tulajdonodban lévő digitális elemet</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"Kód másolása\"><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-2804-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-2804-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncat &gt; request.json &lt;&lt;&#39;JSON&#39;\n{\n  &quot;model&quot;: &quot;hunyuan&quot;,\n  &quot;prompt&quot;: &quot;A cat is walking on grass.&quot;\n}\nJSON\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# Create once; retain id, polling_url, original task identifiers and every header.\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2804-panel-1\" role=\"tabpanel\" aria-labelledby=\"model-code-2804-tab-1\" hidden><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_STATUS&#39;\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(&quot;result.json&quot;).read_text())\nu=urljoin(&quot;https://api.ailoot.ai&quot;,r[&quot;polling_url&quot;])\np=urlsplit(u)\nif p.scheme!=&quot;https&quot; or p.netloc!=&quot;api.ailoot.ai&quot; or p.username or p.password:\n    raise SystemExit(&quot;Unexpected returned polling URL; preserve the response&quot;)\nsubprocess.run([&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,u,&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;],&quot;-D&quot;,&quot;status-headers.txt&quot;,&quot;-o&quot;,&quot;status.json&quot;],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n</code></pre></div><div class=\"cg-pane\" id=\"model-code-2804-panel-2\" role=\"tabpanel\" aria-labelledby=\"model-code-2804-tab-2\" hidden><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(&quot;status.json&quot;).read_text())\nroles={}\ndef visit(v,path=&quot;&quot;):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+&quot;/&quot;+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+&quot;/&quot;+str(i))\n    elif isinstance(v,str):\n        u=urljoin(&quot;https://api.ailoot.ai&quot;,v); p=urlsplit(u)\n        if p.scheme==&quot;https&quot; and p.netloc==&quot;api.ailoot.ai&quot; and not p.username and not p.password and p.path.startswith(&quot;/v1/media/assets/&quot;) and p.path.endswith(&quot;/content&quot;):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(&quot;No completed owned assets; retain the original status&quot;)\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f&quot;asset-{i}.bin&quot;)\n    subprocess.run([&quot;curl&quot;,&quot;--fail-with-body&quot;,&quot;--silent&quot;,&quot;--show-error&quot;,u,&quot;-H&quot;,&quot;Authorization: Bearer &quot;+os.environ[&quot;AILOOT_API_KEY&quot;],&quot;-o&quot;,str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(&quot;Empty asset; retain original status and metadata&quot;)\n    ext=&quot;glb&quot; if raw[:4]==b&quot;glTF&quot; else &quot;png&quot; if raw[:8]==b&quot;\\x89PNG\\r\\n\\x1a\\n&quot; else &quot;jpg&quot; if raw[:3]==b&quot;\\xff\\xd8\\xff&quot; else &quot;webp&quot; if raw[:4]==b&quot;RIFF&quot; and raw[8:12]==b&quot;WEBP&quot; else &quot;mp4&quot; if raw[4:8]==b&quot;ftyp&quot; else &quot;bin&quot;\n    name=f&quot;asset-{i}.{ext}&quot;\n    if target.name!=name: target.rename(name)\n    manifest.append({&quot;file&quot;:name,&quot;response_paths&quot;:paths,&quot;bytes&quot;:len(raw)})\nPath(&quot;asset-manifest.json&quot;).write_text(json.dumps(manifest,indent=2))\nprint(&quot;Saved&quot;,len(manifest),&quot;unique owned assets; every response role retained&quot;)\nPY_ASSETS\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">Eredmények fogadása és mentése</h3><h4>Ailoot Ultra · Video</h4><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/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>Őrizzen meg minden elkészült eredményt</h5><p class=\"note-s\">Mentsen minden elkészült videót és visszaadott fájlt; töltse le az összes ténylegesen visszaadott médiafájl URL-jének tartalmát.</p><p class=\"note-s\">Őrizze meg a teljes választ és fejléceit, az eredeti azonosítókat, az összes tényleges kimenetet és minden felhasználási, illetve elszámolási mezőt. Mentsen el minden egyedi saját médiaállományt, és őrizzen meg minden rá mutató szerepet.</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>Ha az eredeti választ ellenőrizni kell</h5><p class=\"note-s\">Őrizze meg a visszaadott nyilvános feladat- vagy műveletazonosítót és az összes fejlécet. Csak az eredeti feladatot kérdezze le; az unknown vagy result_pending_check nem jogosít fel újabb létrehozásra.</p></div><details class=\"card-about\" data-output-fields><summary>Válaszmezők</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>Mező</th><th>Típus</th></tr></thead><tbody><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">id</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">polling_url</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">provider_task_id</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">task_id</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">status</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr><tr><th data-cell-label=\"Mező\" scope=\"row\"><span class=\"card-cell-label\">Mező</span><code class=\"card-field-name\">video_url</code></th><td data-cell-label=\"Típus\" data-field-type><span class=\"card-cell-label\">Típus</span>string</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">Álnevek</h3><h4>Modell álnevei</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=hunyuan&amp;route=Ultra&amp;caller=hunyuan&amp;fmt=videos\"><code>hunyuan</code></a></span></p><h4>Metódusútvonalak álnevei</h4><p class=\"note-s\"><code>/v1/videos/generations</code></p><h4>Kapcsolódó modellazonosítók</h4><p class=\"note-s\"><a href=\"#m=hunyuan&amp;route=Ultra&amp;caller=hunyuan&amp;fmt=videos\"><code>hunyuan</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "hunyuan",
        "fmt": "videos",
        "http": "POST",
        "path": "/v1/videos",
        "request_model_id": "hunyuan",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|videos|/v1/videos|hunyuan",
      "ordinal": 0,
      "rawMethod": {
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "The displayed rates estimate the cost before generation. The final charge is calculated from the cost recorded for the original generation. Measured output duration and forecast quantities are not the final billable quantity.",
          "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": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "cancel_endpoint": null,
              "completed_states": [
                "completed"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed"
              ],
              "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
              "mode": "submit_once_poll_original",
              "owned_content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "Use the exact returned signed URL; never construct a token."
              },
              "pending_states": [
                "pending",
                "processing"
              ],
              "state_field": "status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "unknown": "Őrizze meg a visszaadott nyilvános feladat- vagy műveletazonosítót és az összes fejlécet. Csak az eredeti feladatot kérdezze le; az unknown vagy result_pending_check nem jogosít fel újabb létrehozásra.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Őrizze meg a teljes választ és fejléceit, az eredeti azonosítókat, az összes tényleges kimenetet és minden felhasználási, illetve elszámolási mezőt. Mentsen el minden egyedi saját médiaállományt, és őrizzen meg minden rá mutató szerepet.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "name": "task_id",
                  "type": "string"
                },
                {
                  "name": "status",
                  "type": "string"
                },
                {
                  "name": "video_url",
                  "type": "string"
                }
              ],
              "maximum_outputs": null
            },
            "parameters": [
              {
                "conditions": "Pontosan ezt az Ailoot-útválasztási azonosítót használja.",
                "default_known": false,
                "enum": [
                  "hunyuan"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Írja le a jelenetet és a benne zajló mozgást.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "prompt",
                "required": true,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "model": {
                  "enum": [
                    "hunyuan"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "hunyuan",
                "prompt": "A cat is walking on grass."
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Pontosan ezt az Ailoot-útválasztási azonosítót használja.",
              "Írja le a jelenetet és a benne zajló mozgást."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "cancel_endpoint": null,
            "completed_states": [
              "completed"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed"
            ],
            "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
            "mode": "submit_once_poll_original",
            "owned_content": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}/content",
              "url_source": "Use the exact returned signed URL; never construct a token."
            },
            "pending_states": [
              "pending",
              "processing"
            ],
            "state_field": "status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "unknown": "Keep the returned public task or operation id and all headers. Read only the original task; unknown or result_pending_check does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "polling_url",
                "type": "string"
              },
              {
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "name": "task_id",
                "type": "string"
              },
              {
                "name": "status",
                "type": "string"
              },
              {
                "name": "video_url",
                "type": "string"
              }
            ],
            "maximum_outputs": null
          }
        },
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "1.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "1.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "basis": "Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "A generálás becsült költsége",
            "units": [
              {
                "amount": "1.2",
                "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": "1.2",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"hunyuan\",\n  \"prompt\": \"A cat is walking on grass.\"\n}\nJSON\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# Create once; retain id, polling_url, original task identifiers and every header.\n",
            "label": "curl · create once and retain receipt",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_STATUS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\nu=urljoin(\"https://api.ailoot.ai\",r[\"polling_url\"])\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or p.username or p.password:\n    raise SystemExit(\"Unexpected returned polling URL; preserve the response\")\nsubprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-D\",\"status-headers.txt\",\"-o\",\"status.json\"],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n",
            "label": "Read the original task",
            "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())\nroles={}\ndef visit(v,path=\"\"):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+\"/\"+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+\"/\"+str(i))\n    elif isinstance(v,str):\n        u=urljoin(\"https://api.ailoot.ai\",v); p=urlsplit(u)\n        if p.scheme==\"https\" and p.netloc==\"api.ailoot.ai\" and not p.username and not p.password and p.path.startswith(\"/v1/media/assets/\") and p.path.endswith(\"/content\"):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(\"No completed owned assets; retain the original status\")\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f\"asset-{i}.bin\")\n    subprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-o\",str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(\"Empty asset; retain original status and metadata\")\n    ext=\"glb\" if raw[:4]==b\"glTF\" else \"png\" if raw[:8]==b\"\\x89PNG\\r\\n\\x1a\\n\" else \"jpg\" if raw[:3]==b\"\\xff\\xd8\\xff\" else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"mp4\" if raw[4:8]==b\"ftyp\" else \"bin\"\n    name=f\"asset-{i}.{ext}\"\n    if target.name!=name: target.rename(name)\n    manifest.append({\"file\":name,\"response_paths\":paths,\"bytes\":len(raw)})\nPath(\"asset-manifest.json\").write_text(json.dumps(manifest,indent=2))\nprint(\"Saved\",len(manifest),\"unique owned assets; every response role retained\")\nPY_ASSETS\n",
            "label": "Save every completed owned asset",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Video",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "1.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "1.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "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": "1.2",
                "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": "1.2",
                "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": "hunyuan",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}"
        ],
        "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": "1.2",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "per_request",
            "label": "per request",
            "native_amount_usd_per_unit": "1.2",
            "native_quantity": 1,
            "public_unit_label": "per request",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "per_request"
          },
          {
            "amount": "1.2",
            "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": "1.2",
            "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": "hunyuan",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "65e6bbdfae154925b47b7aeeb62e803984677670a0141050572a9d8cd3cc6b4f",
    "input_html_sha256": "5c1cd861b00f31360eb4a3b59b789e378ceee34c3ee296f7c9495efb8139c375",
    "private_audit_sha256": "914c8222a72dde4beaaae8a47a7bb5ec230062f7aeffc776d7a78084f97954b2",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/hu/hunyuan/",
    "description": "Szövegből videót készítő útvonal minimális model és prompt kéréssel, aszinkron eredménybegyűjtéssel.",
    "locale": "hu",
    "md_url": "https://ailoot.ai/models/hu/hunyuan/index.md",
    "title": "Hunyuan — Ailoot",
    "url": "https://ailoot.ai/models/hu/hunyuan/"
  },
  "rawModel": {
    "about": "A Hunyuan szövegből videót készítő modell, amellyel írásos instrukció alapján hozhatsz létre mozgó jelenetet. A dokumentált modellbejegyzés modellválasztást és szöveges promptot használ. Kezdd azzal az eseménnyel, amelyet a nézőnek látnia kell: egy kirakat előtt elhaladó kerékpárossal, egy csendes szobán végigvándorló napfénnyel vagy egy mólóhoz közeledő kis csónakkal. A jelenetnek legyen egyértelmű témája és jól követhető cselekvése.\n\nA szereplőt vagy tárgyat a környezete előtt írd le. Add meg a megkülönböztető fizikai részleteit, a helyszínt, valamint a kép szempontjából lényeges időpontot vagy fényviszonyokat. Egy kék üzletajtó mellett álló piros futárkerékpár konkrétabb vizuális támpontokat ad a beállításhoz, mint egy vonzó városi jelenetre vonatkozó általános kérés. Az instrukció egészében tartsd következetesen ugyanazokat a részleteket.\n\nÍrd le, hogyan bontakozik ki az esemény. Egy használható beállításleírás megadja a kiinduló helyzetet, a mozgást és a kívánt záróképet. Feltáró beállításnál nevezd meg, mi válik láthatóvá; interakciónál add meg, melyik szereplő cselekszik, és melyik tárgyra irányul a cselekvés. Így az elkészült képsort könnyebb összevetni az eredeti ötlettel.\n\nA kamerát a cselekvéstől külön írd le. A rögzített kamera felé sétáló ember más kompozíciót eredményez, mint az embert hátulról követő kamera. Válaszd ki a jelenetet szolgáló nézőpontot és mozgást, majd a szövegben tedd egyértelművé a kapcsolatukat. Ha a kamera mozdulatlan marad, add meg, minek kell mozognia a képmezőben.\n\nStoryboard vagy koncepcióképsor esetén minden beállítást a saját célja köré építs. Az egyik beállítás bemutathatja a helyszínt, a másik bevezethet egy szereplőt, a harmadik pedig megmutathat egy következményt. A kapcsolódó instrukciókban következetesen használd a környezet és a szereplő megkülönböztető jegyeinek közös leírását. A kész klipeket a történetnek megfelelően állítsd össze, és a vágás során ellenőrizd a vizuális folytonosságukat.\n\nHangulati tanulmányoknál nevezd meg a hangulat látható forrásait. Írj le lágy ablakfényt, sűrű reggeli ködöt, nedves járdán megjelenő tükröződéseket vagy egy udvarban a levelek mozgását. A kért érzetet megfigyelhető jegyekhez kösd, hogy az eredményt a tényleges világítása, textúrája és mozgása alapján lehessen értékelni.\n\nNézd végig a teljes elkészült klipet. Ellenőrizd, hogy a kért cselekvés használható sorrendben történik-e, a fontos tárgyak felismerhetők maradnak-e, és a befejezés illeszkedik-e a tervezett vágáshoz. A teljes képsorban figyeld a változó alakzatokat, tükröződéseket és interakciókat. Egy erős nyitókép csak az egyik része a használható mozgó beállításnak.\n\nA promptot, a kiválasztott modellt és a kész videót együtt őrizd meg. Ha egy változat javításra szorul, rögzítsd a konkrét problémát, például a haladás irányát vagy egy nehezen követhető feltárást. A jól működő környezeti és szereplőrészleteket tartsd meg, és a problémához kapcsolódó instrukciót módosítsd. Így a következő összehasonlítás egy egyértelmű vizuális kérdésre ad választ.",
    "about_sha256": "66a0d73a74cb7d1684c296c35461d316193a153b1ee13fa0d9539524e87b5262",
    "alias_of": null,
    "aliases": [],
    "author": "Hunyuan",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "video"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "1.2",
            "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": "1.2",
            "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": "A konfiguráció teljes árazása a részletekben."
      }
    ],
    "ctx": null,
    "display_name": "Hunyuan",
    "formats": [
      "videos"
    ],
    "id": "hunyuan",
    "input": [
      "text"
    ],
    "kind": "video",
    "locale": "en",
    "max_out": null,
    "methods": [
      {
        "billing_basis": {
          "basis": "original_invoice_usd",
          "description": "The displayed rates estimate the cost before generation. The final charge is calculated from the cost recorded for the original generation. Measured output duration and forecast quantities are not the final billable quantity.",
          "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": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "cancel_endpoint": null,
              "completed_states": [
                "completed"
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}/content",
                  "query": {
                    "index": "actual output index; default 0"
                  }
                }
              ],
              "create": {
                "http": "POST",
                "path": "/v1/videos"
              },
              "failed_states": [
                "failed"
              ],
              "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
              "mode": "submit_once_poll_original",
              "owned_content": {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "Use the exact returned signed URL; never construct a token."
              },
              "pending_states": [
                "pending",
                "processing"
              ],
              "state_field": "status",
              "status": [
                {
                  "http": "GET",
                  "path": "/v1/videos/{request_id}"
                },
                {
                  "http": "GET",
                  "path": "/v1/videos/generations/{request_id}"
                }
              ],
              "unknown": "Őrizze meg a visszaadott nyilvános feladat- vagy műveletazonosítót és az összes fejlécet. Csak az eredeti feladatot kérdezze le; az unknown vagy result_pending_check nem jogosít fel újabb létrehozásra.",
              "unknown_no_replay": true
            },
            "outputs": {
              "all_results": "Őrizze meg a teljes választ és fejléceit, az eredeti azonosítókat, az összes tényleges kimenetet és minden felhasználási, illetve elszámolási mezőt. Mentsen el minden egyedi saját médiaállományt, és őrizzen meg minden rá mutató szerepet.",
              "every_actual_output": true,
              "family": "video",
              "fields": [
                {
                  "name": "id",
                  "type": "string"
                },
                {
                  "name": "polling_url",
                  "type": "string"
                },
                {
                  "name": "provider_task_id",
                  "type": "string"
                },
                {
                  "name": "task_id",
                  "type": "string"
                },
                {
                  "name": "status",
                  "type": "string"
                },
                {
                  "name": "video_url",
                  "type": "string"
                }
              ],
              "maximum_outputs": null
            },
            "parameters": [
              {
                "conditions": "Pontosan ezt az Ailoot-útválasztási azonosítót használja.",
                "default_known": false,
                "enum": [
                  "hunyuan"
                ],
                "enum_known": true,
                "maximum_length": null,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "conditions": "Írja le a jelenetet és a benne zajló mozgást.",
                "default_known": false,
                "enum_known": false,
                "maximum_length": null,
                "name": "prompt",
                "required": true,
                "type": "string"
              }
            ],
            "request_schema": {
              "additionalProperties": true,
              "properties": {
                "model": {
                  "enum": [
                    "hunyuan"
                  ],
                  "type": "string"
                },
                "prompt": {
                  "type": "string"
                }
              },
              "required": [
                "model",
                "prompt"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "model": "hunyuan",
                "prompt": "A cat is walking on grass."
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "conditions": [
              "Pontosan ezt az Ailoot-útválasztási azonosítót használja.",
              "Írja le a jelenetet és a benne zajló mozgást."
            ],
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "optional": [],
            "required": [
              "model",
              "prompt"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "cancel_endpoint": null,
            "completed_states": [
              "completed"
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}/content",
                "query": {
                  "index": "actual output index; default 0"
                }
              }
            ],
            "create": {
              "http": "POST",
              "path": "/v1/videos"
            },
            "failed_states": [
              "failed"
            ],
            "id_source": "Use returned polling_url and id. Keep provider_task_id and X-Ailoot-Task-Id as separate original identifiers.",
            "mode": "submit_once_poll_original",
            "owned_content": {
              "http": "GET",
              "path": "/v1/media/assets/{asset_id}/content",
              "url_source": "Use the exact returned signed URL; never construct a token."
            },
            "pending_states": [
              "pending",
              "processing"
            ],
            "state_field": "status",
            "status": [
              {
                "http": "GET",
                "path": "/v1/videos/{request_id}"
              },
              {
                "http": "GET",
                "path": "/v1/videos/generations/{request_id}"
              }
            ],
            "unknown": "Keep the returned public task or operation id and all headers. Read only the original task; unknown or result_pending_check does not authorize another creation.",
            "unknown_no_replay": true
          },
          "method": {
            "http": "POST",
            "path": "/v1/videos"
          },
          "method_aliases": [
            "/v1/videos/generations"
          ],
          "output": {
            "all_results": "Retain the complete response and headers, original identifiers, every actual output and all usage/accounting fields. Save each unique owned asset and retain every role pointing to it.",
            "every_actual_output": true,
            "family": "video",
            "fields": [
              {
                "name": "id",
                "type": "string"
              },
              {
                "name": "polling_url",
                "type": "string"
              },
              {
                "name": "provider_task_id",
                "type": "string"
              },
              {
                "name": "task_id",
                "type": "string"
              },
              {
                "name": "status",
                "type": "string"
              },
              {
                "name": "video_url",
                "type": "string"
              }
            ],
            "maximum_outputs": null
          }
        },
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "1.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "1.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "basis": "Ez a becslés nem jelent további díjat, és nem rögzített díjszabás az elkészült generálásra.",
            "dimensions": {
              "forecast_quantity": "one generation estimate"
            },
            "label": "A generálás becsült költsége",
            "units": [
              {
                "amount": "1.2",
                "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": "1.2",
                "native_quantity": 1,
                "public_unit_label": "estimate before generation",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "request_estimate"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncat > request.json <<'JSON'\n{\n  \"model\": \"hunyuan\",\n  \"prompt\": \"A cat is walking on grass.\"\n}\nJSON\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# Create once; retain id, polling_url, original task identifiers and every header.\n",
            "label": "curl · create once and retain receipt",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\nexport AILOOT_API_KEY\npython3 - <<'PY_STATUS'\nimport json,os,subprocess\nfrom pathlib import Path\nfrom urllib.parse import urljoin,urlsplit\nr=json.loads(Path(\"result.json\").read_text())\nu=urljoin(\"https://api.ailoot.ai\",r[\"polling_url\"])\np=urlsplit(u)\nif p.scheme!=\"https\" or p.netloc!=\"api.ailoot.ai\" or p.username or p.password:\n    raise SystemExit(\"Unexpected returned polling URL; preserve the response\")\nsubprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-D\",\"status-headers.txt\",\"-o\",\"status.json\"],check=True)\n# Read this same original polling_url again while pending.\n# Preserve unknown/result_pending_check; do not repeat creation.\nPY_STATUS\n",
            "label": "Read the original task",
            "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())\nroles={}\ndef visit(v,path=\"\"):\n    if isinstance(v,dict):\n        for k,x in v.items(): visit(x,path+\"/\"+k)\n    elif isinstance(v,list):\n        for i,x in enumerate(v): visit(x,path+\"/\"+str(i))\n    elif isinstance(v,str):\n        u=urljoin(\"https://api.ailoot.ai\",v); p=urlsplit(u)\n        if p.scheme==\"https\" and p.netloc==\"api.ailoot.ai\" and not p.username and not p.password and p.path.startswith(\"/v1/media/assets/\") and p.path.endswith(\"/content\"):\n            roles.setdefault(u,[]).append(path)\nvisit(r)\nif not roles: raise SystemExit(\"No completed owned assets; retain the original status\")\nmanifest=[]\nfor i,(u,paths) in enumerate(roles.items()):\n    target=Path(f\"asset-{i}.bin\")\n    subprocess.run([\"curl\",\"--fail-with-body\",\"--silent\",\"--show-error\",u,\"-H\",\"Authorization: Bearer \"+os.environ[\"AILOOT_API_KEY\"],\"-o\",str(target)],check=True)\n    raw=target.read_bytes()\n    if not raw: raise SystemExit(\"Empty asset; retain original status and metadata\")\n    ext=\"glb\" if raw[:4]==b\"glTF\" else \"png\" if raw[:8]==b\"\\x89PNG\\r\\n\\x1a\\n\" else \"jpg\" if raw[:3]==b\"\\xff\\xd8\\xff\" else \"webp\" if raw[:4]==b\"RIFF\" and raw[8:12]==b\"WEBP\" else \"mp4\" if raw[4:8]==b\"ftyp\" else \"bin\"\n    name=f\"asset-{i}.{ext}\"\n    if target.name!=name: target.rename(name)\n    manifest.append({\"file\":name,\"response_paths\":paths,\"bytes\":len(raw)})\nPath(\"asset-manifest.json\").write_text(json.dumps(manifest,indent=2))\nprint(\"Saved\",len(manifest),\"unique owned assets; every response role retained\")\nPY_ASSETS\n",
            "label": "Save every completed owned asset",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "videos",
        "http": "POST",
        "in": null,
        "input": [
          "text"
        ],
        "label": "Video",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "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": {
              "billing_quantity": "one request"
            },
            "label": "Per request",
            "units": [
              {
                "amount": "1.2",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": false,
                "estimate_only": true,
                "key": "per_request",
                "label": "per request",
                "native_amount_usd_per_unit": "1.2",
                "native_quantity": 1,
                "public_unit_label": "per request",
                "quantity": 1,
                "quantity_is_estimate": true,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "per_request"
              }
            ]
          },
          {
            "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": "1.2",
                "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": "1.2",
                "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": "hunyuan",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/videos/{request_id}",
          "GET /v1/videos/generations/{request_id}"
        ],
        "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": "1.2",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": false,
            "estimate_only": true,
            "key": "per_request",
            "label": "per request",
            "native_amount_usd_per_unit": "1.2",
            "native_quantity": 1,
            "public_unit_label": "per request",
            "quantity": 1,
            "quantity_is_estimate": true,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "per_request"
          },
          {
            "amount": "1.2",
            "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": "1.2",
            "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": "hunyuan",
        "request_model_id": "hunyuan",
        "route_label": "Ultra"
      }
    ],
    "name": "Hunyuan",
    "price": {
      "estimate_only": true,
      "in": null,
      "in_label": null,
      "out": 1.2,
      "out_label": "estimate before generation",
      "scope_label": "Estimated generation cost",
      "sort_in": null,
      "sort_out": 1.2,
      "varies": false
    },
    "short": "A Hunyuan egy jelenet írásos leírásából készít videót. Egyértelműen meghatározott témával, látható cselekvéssel és kameranézőponttal alakíthatsz ki szövegből rövid vizuális ötleteket, storyboardhoz szánt beállításokat és hangulati képsorokat.",
    "short_sha256": "279836b31a0184470d38bd37aa9ee8c682e96de56bb8123e43cd7be4b6b5a314"
  },
  "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": "Szövegből videót készítő útvonal minimális model és prompt kéréssel, aszinkron eredménybegyűjtéssel.",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "0c18cdaf618e934637d8c343e9d79a5985b68f706055aeb19fdc87ea40688538",
    "renderer_sha256": "59b0e30a0b251f9d98bf0bafcc7ef50440c33057c2bf9c9fadabbcaeefffb5bb"
  },
  "sourceRevision": "471f45dcdee30270f901fd0254730ac3ebc07937c6f0f48db9a1ebe0dabcb57f"
}
