[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-nav-en":3,"docs-en-models\u002Fvideo\u002Foverview":180,"$fqdccCToysgRM_ffq2QrjJjBdNl8gBU9qUk4wJmU5fYw":2114,"$fcGvkVCHtgtU-tTjIabSnKGk1hQa4iTsUnm3cQYnjCTk":2164,"$fd2fDQ0cuM20hcs_y29HhxCQevIIp3auSyBXu6CyO4vY":2201,"$fDylU-6-tv5kbQYmvs6zGzc6FAReS2oBCSurPIArY1sE":2259},[4,26,43,105,155,172,176],{"title":5,"path":6,"stem":7,"children":8,"page":25},"Getting Started","\u002Fgetting-started","1.getting-started",[9,13,17,21],{"title":10,"path":11,"stem":12},"Your First SilvaMux API Call","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F1.quick-start",{"title":14,"path":15,"stem":16},"Model Selection","\u002Fgetting-started\u002Fmodel-selection","1.getting-started\u002F2.model-selection",{"title":18,"path":19,"stem":20},"Rate Limits","\u002Fgetting-started\u002Frate-limits","1.getting-started\u002F3.rate-limits",{"title":22,"path":23,"stem":24},"FAQ","\u002Fgetting-started\u002Ffaq","1.getting-started\u002F4.faq",false,{"title":27,"path":28,"stem":29,"children":30,"page":25},"Billing","\u002Fbilling","2.billing",[31,35,39],{"title":32,"path":33,"stem":34},"Billing Overview","\u002Fbilling\u002Foverview","2.billing\u002F1.overview",{"title":36,"path":37,"stem":38},"Online Top-up","\u002Fbilling\u002Frecharge","2.billing\u002F2.recharge",{"title":40,"path":41,"stem":42},"Bills, Usage & Exports","\u002Fbilling\u002Fusage-export","2.billing\u002F3.usage-export",{"title":44,"path":45,"stem":46,"children":47,"page":25},"Coding Plan","\u002Fcoding-plan","3.coding-plan",[48,52,56,60,67,102],{"title":49,"path":50,"stem":51},"Coding Plan Overview","\u002Fcoding-plan\u002Foverview","3.coding-plan\u002F1.overview",{"title":53,"path":54,"stem":55},"Quick Start","\u002Fcoding-plan\u002Fquick-start","3.coding-plan\u002F2.quick-start",{"title":57,"path":58,"stem":59},"Usage Notes","\u002Fcoding-plan\u002Fusage-notes","3.coding-plan\u002F3.usage-notes",{"title":61,"path":62,"stem":63,"children":64},"Personal","\u002Fcoding-plan\u002Fpersonal","3.coding-plan\u002F4.personal\u002Findex",[65],{"title":66,"path":62,"stem":63},"Pricing & Benefits",{"title":68,"path":69,"stem":70,"children":71,"page":-1},"Developer Guide","\u002Fcoding-plan\u002Fguide","3.coding-plan\u002F5.guide\u002Findex",[72,74,78,82,86,90,94,98],{"title":73,"path":69,"stem":70},"Endpoints & Protocols",{"title":75,"path":76,"stem":77},"Claude Code","\u002Fcoding-plan\u002Fguide\u002Fclaude-code","3.coding-plan\u002F5.guide\u002F1.claude-code",{"title":79,"path":80,"stem":81},"OpenCode","\u002Fcoding-plan\u002Fguide\u002Fopencode","3.coding-plan\u002F5.guide\u002F2.opencode",{"title":83,"path":84,"stem":85},"Cursor","\u002Fcoding-plan\u002Fguide\u002Fcursor","3.coding-plan\u002F5.guide\u002F3.cursor",{"title":87,"path":88,"stem":89},"Codex","\u002Fcoding-plan\u002Fguide\u002Fcodex","3.coding-plan\u002F5.guide\u002F4.codex",{"title":91,"path":92,"stem":93},"ZCode","\u002Fcoding-plan\u002Fguide\u002Fzcode","3.coding-plan\u002F5.guide\u002F5.zcode",{"title":95,"path":96,"stem":97},"TRAE","\u002Fcoding-plan\u002Fguide\u002Ftrae","3.coding-plan\u002F5.guide\u002F6.trae",{"title":99,"path":100,"stem":101},"CodeBuddy","\u002Fcoding-plan\u002Fguide\u002Fcodebuddy","3.coding-plan\u002F5.guide\u002F7.codebuddy",{"title":22,"path":103,"stem":104},"\u002Fcoding-plan\u002Ffaq","3.coding-plan\u002F6.faq",{"title":106,"path":107,"stem":108,"children":109,"page":25},"Model APIs","\u002Fmodels","4.models",[110,143],{"title":111,"path":112,"stem":113,"children":114,"page":25},"Text Generation Model API","\u002Fmodels\u002Fchat","4.models\u002F1.chat",[115,119,123,127,131,135,139],{"title":116,"path":117,"stem":118},"Overview","\u002Fmodels\u002Fchat\u002Foverview","4.models\u002F1.chat\u002F1.overview",{"title":120,"path":121,"stem":122},"OpenAI Compatible API","\u002Fmodels\u002Fchat\u002Fopenai","4.models\u002F1.chat\u002F2.openai",{"title":124,"path":125,"stem":126},"Anthropic Compatible","\u002Fmodels\u002Fchat\u002Fanthropic","4.models\u002F1.chat\u002F3.anthropic",{"title":128,"path":129,"stem":130},"Volcengine Compatible","\u002Fmodels\u002Fchat\u002Fvolcengine","4.models\u002F1.chat\u002F4.volcengine",{"title":132,"path":133,"stem":134},"Zhipu Compatible","\u002Fmodels\u002Fchat\u002Fzhipu","4.models\u002F1.chat\u002F5.zhipu",{"title":136,"path":137,"stem":138},"SilvaMux Unified Entry","\u002Fmodels\u002Fchat\u002Funified","4.models\u002F1.chat\u002F6.unified",{"title":140,"path":141,"stem":142},"Multimodal Input","\u002Fmodels\u002Fchat\u002Fmultimodal","4.models\u002F1.chat\u002F7.multimodal",{"title":144,"path":145,"stem":146,"children":147,"page":25},"Image Generation Model API","\u002Fmodels\u002Fimages","4.models\u002F2.images",[148,151],{"title":116,"path":149,"stem":150},"\u002Fmodels\u002Fimages\u002Foverview","4.models\u002F2.images\u002F1.overview",{"title":152,"path":153,"stem":154},"Image Generation API","\u002Fmodels\u002Fimages\u002Fgeneration","4.models\u002F2.images\u002F2.generation",{"title":156,"path":157,"stem":158,"children":159,"page":25},"Usage & Balance","\u002Fusage-and-balance","5.usage-and-balance",[160,164,168],{"title":161,"path":162,"stem":163},"Query Balance","\u002Fusage-and-balance\u002Fbalance","5.usage-and-balance\u002F1.balance",{"title":165,"path":166,"stem":167},"Query Usage","\u002Fusage-and-balance\u002Fusage","5.usage-and-balance\u002F2.usage",{"title":169,"path":170,"stem":171},"Query Request Usage","\u002Fusage-and-balance\u002Frequest-usage","5.usage-and-balance\u002F3.request-usage",{"title":173,"path":174,"stem":175},"Error Codes","\u002Ferrors","6.errors",{"title":177,"path":178,"stem":179},"Getting Started with SilvaMux","\u002F","index",{"id":181,"title":182,"body":183,"description":2105,"extension":2106,"meta":2107,"navigation":25,"path":2108,"rawbody":2109,"requiredFlags":2110,"seo":2111,"stem":2112,"__hash__":2113},"docs_en\u002F4.models\u002F3.video\u002F1.overview.md","Video Generation API",{"type":184,"value":185,"toc":2075},"minimark",[186,190,199,209,214,219,406,420,427,443,448,452,456,1014,1018,1021,1025,1096,1100,1173,1177,1180,1249,1254,1261,1268,1307,1313,1379,1382,1388,1441,1444,1450,1453,1504,1507,1511,1514,1578,1582,1589,1593,1862,1865,1917,1939,1943,1949,1951,1955,1961,1964,1969,1973,1976,1982,1985,1990,1997,2001,2008,2019,2022,2027,2031,2034,2071],[187,188,182],"h1",{"id":189},"video-generation-api",[191,192,193,194,198],"p",{},"Video generation uses an asynchronous task model: create a task → poll the status → read the result. Video and 3D share the same task API and are routed by the ",[195,196,197],"code",{},"model"," field.",[200,201,202],"blockquote",{},[191,203,204,205,208],{},"There are currently no publicly discoverable video model call names in the model list or the Model Plaza. The video requests below only illustrate the structure and cannot be executed directly; ",[195,206,207],{},"\u003CMODEL_CALL_NAME>"," must be replaced with a real call name published later on the Model Plaza.",[200,210,211],{},[191,212,213],{},"Video generation uses the platform's own API + API key, not Volcengine AK\u002FSK signing. The Volcengine-compatible APIs are for asset management only.",[215,216,218],"h2",{"id":217},"key-parameters","Key Parameters",[220,221,222,241],"table",{},[223,224,225],"thead",{},[226,227,228,232,235,238],"tr",{},[229,230,231],"th",{},"Parameter",[229,233,234],{},"Type",[229,236,237],{},"Required",[229,239,240],{},"Description",[242,243,244,260,288,314,345,360,377,392],"tbody",{},[226,245,246,251,254,257],{},[247,248,249],"td",{},[195,250,197],{},[247,252,253],{},"string",[247,255,256],{},"Yes",[247,258,259],{},"Model call name; must come from the Model Plaza or the model list",[226,261,262,267,270,272],{},[247,263,264],{},[195,265,266],{},"content",[247,268,269],{},"array",[247,271,256],{},[247,273,274,275,278,279,278,282,278,285],{},"Input content; supports ",[195,276,277],{},"text",", ",[195,280,281],{},"image_url",[195,283,284],{},"video_url",[195,286,287],{},"audio_url",[226,289,290,295,297,300],{},[247,291,292],{},[195,293,294],{},"resolution",[247,296,253],{},[247,298,299],{},"No",[247,301,302,303,306,307,306,310,313],{},"Model pass-through field; common values ",[195,304,305],{},"480p"," \u002F ",[195,308,309],{},"720p",[195,311,312],{},"1080p",", per model details",[226,315,316,321,323,325],{},[247,317,318],{},[195,319,320],{},"ratio",[247,322,253],{},[247,324,299],{},[247,326,302,327,306,330,306,333,306,336,306,339,306,342],{},[195,328,329],{},"16:9",[195,331,332],{},"9:16",[195,334,335],{},"4:3",[195,337,338],{},"3:4",[195,340,341],{},"1:1",[195,343,344],{},"21:9",[226,346,347,352,355,357],{},[247,348,349],{},[195,350,351],{},"duration",[247,353,354],{},"integer",[247,356,299],{},[247,358,359],{},"Model pass-through field; duration range per model details",[226,361,362,367,369,371],{},[247,363,364],{},[195,365,366],{},"frames",[247,368,354],{},[247,370,299],{},[247,372,373,374,376],{},"Model pass-through field; whether it can replace ",[195,375,351],{}," per model details",[226,378,379,384,387,389],{},[247,380,381],{},[195,382,383],{},"generate_audio",[247,385,386],{},"boolean",[247,388,299],{},[247,390,391],{},"Model pass-through field; audio support per model details",[226,393,394,399,401,403],{},[247,395,396],{},[195,397,398],{},"tools",[247,400,269],{},[247,402,299],{},[247,404,405],{},"Model pass-through field; supported tools per model details",[191,407,408,412,413,416,417],{},[409,410,411],"strong",{},"Creating tasks:"," ",[195,414,415],{},"Authorization: Bearer \u003CAPI_KEY>"," or ",[195,418,419],{},"x-api-key: \u003CAPI_KEY>",[191,421,422,412,425],{},[409,423,424],{},"Querying and canceling tasks:",[195,426,415],{},[200,428,429],{},[191,430,431,434,435,438,439,442],{},[195,432,433],{},"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3"," is the ",[195,436,437],{},"\u002Fapi\u002Fv3"," path under the access domain, routing to ",[195,440,441],{},"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks",".",[444,445,447],"h3",{"id":446},"creating-a-task","Creating a Task",[449,450],"api-endpoint",{"method":451,"path":441},"POST",[215,453,455],{"id":454},"text-to-video","Text-to-Video",[457,458,459,574,699,818],"code-tabs",{},[460,461,463],"code-tab",{"label":462},"cURL",[464,465,470],"pre",{"className":466,"code":467,"language":468,"meta":469,"style":469},"language-bash shiki shiki-themes github-light github-dark","curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n    \"resolution\": \"720p\",\n    \"ratio\": \"16:9\",\n    \"duration\": 5,\n    \"generate_audio\": true\n  }'\n","bash","",[195,471,472,495,513,523,532,538,544,550,556,562,568],{"__ignoreMap":469},[473,474,477,481,485,489,492],"span",{"class":475,"line":476},"line",1,[473,478,480],{"class":479},"sScJk","curl",[473,482,484],{"class":483},"sj4cs"," -X",[473,486,488],{"class":487},"sZZnC"," POST",[473,490,491],{"class":487}," https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks",[473,493,494],{"class":483}," \\\n",[473,496,498,501,504,508,511],{"class":475,"line":497},2,[473,499,500],{"class":483},"  -H",[473,502,503],{"class":487}," \"Authorization: Bearer ",[473,505,507],{"class":506},"sVt8B","$SILVAMUX_API_KEY",[473,509,510],{"class":487},"\"",[473,512,494],{"class":483},[473,514,516,518,521],{"class":475,"line":515},3,[473,517,500],{"class":483},[473,519,520],{"class":487}," \"Content-Type: application\u002Fjson\"",[473,522,494],{"class":483},[473,524,526,529],{"class":475,"line":525},4,[473,527,528],{"class":483},"  -d",[473,530,531],{"class":487}," '{\n",[473,533,535],{"class":475,"line":534},5,[473,536,537],{"class":487},"    \"model\": \"\u003CMODEL_CALL_NAME>\",\n",[473,539,541],{"class":475,"line":540},6,[473,542,543],{"class":487},"    \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n",[473,545,547],{"class":475,"line":546},7,[473,548,549],{"class":487},"    \"resolution\": \"720p\",\n",[473,551,553],{"class":475,"line":552},8,[473,554,555],{"class":487},"    \"ratio\": \"16:9\",\n",[473,557,559],{"class":475,"line":558},9,[473,560,561],{"class":487},"    \"duration\": 5,\n",[473,563,565],{"class":475,"line":564},10,[473,566,567],{"class":487},"    \"generate_audio\": true\n",[473,569,571],{"class":475,"line":570},11,[473,572,573],{"class":487},"  }'\n",[460,575,577],{"label":576},"Python",[464,578,582],{"className":579,"code":580,"language":581,"meta":469,"style":469},"language-python shiki shiki-themes github-light github-dark","# pip install requests\nimport os\nimport requests\n\nresp = requests.post(\n    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n    headers={\n        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n        \"Content-Type\": \"application\u002Fjson\",\n    },\n    json={\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": True,\n    },\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n","python",[195,583,584,589,594,599,605,610,615,620,625,630,635,640,646,652,658,664,670,676,681,687,693],{"__ignoreMap":469},[473,585,586],{"class":475,"line":476},[473,587,588],{},"# pip install requests\n",[473,590,591],{"class":475,"line":497},[473,592,593],{},"import os\n",[473,595,596],{"class":475,"line":515},[473,597,598],{},"import requests\n",[473,600,601],{"class":475,"line":525},[473,602,604],{"emptyLinePlaceholder":603},true,"\n",[473,606,607],{"class":475,"line":534},[473,608,609],{},"resp = requests.post(\n",[473,611,612],{"class":475,"line":540},[473,613,614],{},"    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n",[473,616,617],{"class":475,"line":546},[473,618,619],{},"    headers={\n",[473,621,622],{"class":475,"line":552},[473,623,624],{},"        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n",[473,626,627],{"class":475,"line":558},[473,628,629],{},"        \"Content-Type\": \"application\u002Fjson\",\n",[473,631,632],{"class":475,"line":564},[473,633,634],{},"    },\n",[473,636,637],{"class":475,"line":570},[473,638,639],{},"    json={\n",[473,641,643],{"class":475,"line":642},12,[473,644,645],{},"        \"model\": \"\u003CMODEL_CALL_NAME>\",\n",[473,647,649],{"class":475,"line":648},13,[473,650,651],{},"        \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n",[473,653,655],{"class":475,"line":654},14,[473,656,657],{},"        \"resolution\": \"720p\",\n",[473,659,661],{"class":475,"line":660},15,[473,662,663],{},"        \"ratio\": \"16:9\",\n",[473,665,667],{"class":475,"line":666},16,[473,668,669],{},"        \"duration\": 5,\n",[473,671,673],{"class":475,"line":672},17,[473,674,675],{},"        \"generate_audio\": True,\n",[473,677,679],{"class":475,"line":678},18,[473,680,634],{},[473,682,684],{"class":475,"line":683},19,[473,685,686],{},")\n",[473,688,690],{"class":475,"line":689},20,[473,691,692],{},"resp.raise_for_status()\n",[473,694,696],{"class":475,"line":695},21,[473,697,698],{},"print(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n",[460,700,702],{"label":701},"JavaScript",[464,703,707],{"className":704,"code":705,"language":706,"meta":469,"style":469},"language-javascript shiki shiki-themes github-light github-dark","\u002F\u002F Node 18+ (built-in fetch)\nconst resp = await fetch(\n  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n  {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n      \"Content-Type\": \"application\u002Fjson\",\n    },\n    body: JSON.stringify({\n      model: \"\u003CMODEL_CALL_NAME>\",\n      content: [{ type: \"text\", text: \"A golden retriever running on the beach\" }],\n      resolution: \"720p\",\n      ratio: \"16:9\",\n      duration: 5,\n      generate_audio: true,\n    }),\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n","javascript",[195,708,709,714,719,724,729,734,739,744,749,753,758,763,768,773,778,783,788,793,798,803,807,812],{"__ignoreMap":469},[473,710,711],{"class":475,"line":476},[473,712,713],{},"\u002F\u002F Node 18+ (built-in fetch)\n",[473,715,716],{"class":475,"line":497},[473,717,718],{},"const resp = await fetch(\n",[473,720,721],{"class":475,"line":515},[473,722,723],{},"  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n",[473,725,726],{"class":475,"line":525},[473,727,728],{},"  {\n",[473,730,731],{"class":475,"line":534},[473,732,733],{},"    method: \"POST\",\n",[473,735,736],{"class":475,"line":540},[473,737,738],{},"    headers: {\n",[473,740,741],{"class":475,"line":546},[473,742,743],{},"      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n",[473,745,746],{"class":475,"line":552},[473,747,748],{},"      \"Content-Type\": \"application\u002Fjson\",\n",[473,750,751],{"class":475,"line":558},[473,752,634],{},[473,754,755],{"class":475,"line":564},[473,756,757],{},"    body: JSON.stringify({\n",[473,759,760],{"class":475,"line":570},[473,761,762],{},"      model: \"\u003CMODEL_CALL_NAME>\",\n",[473,764,765],{"class":475,"line":642},[473,766,767],{},"      content: [{ type: \"text\", text: \"A golden retriever running on the beach\" }],\n",[473,769,770],{"class":475,"line":648},[473,771,772],{},"      resolution: \"720p\",\n",[473,774,775],{"class":475,"line":654},[473,776,777],{},"      ratio: \"16:9\",\n",[473,779,780],{"class":475,"line":660},[473,781,782],{},"      duration: 5,\n",[473,784,785],{"class":475,"line":666},[473,786,787],{},"      generate_audio: true,\n",[473,789,790],{"class":475,"line":672},[473,791,792],{},"    }),\n",[473,794,795],{"class":475,"line":678},[473,796,797],{},"  },\n",[473,799,800],{"class":475,"line":683},[473,801,802],{},");\n",[473,804,805],{"class":475,"line":689},[473,806,604],{"emptyLinePlaceholder":603},[473,808,809],{"class":475,"line":695},[473,810,811],{},"const task = await resp.json();\n",[473,813,815],{"class":475,"line":814},22,[473,816,817],{},"console.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n",[460,819,821],{"label":820},"Go",[464,822,826],{"className":823,"code":824,"language":825,"meta":469,"style":469},"language-go shiki shiki-themes github-light github-dark","\u002F\u002F Standard library only\npackage main\n\nimport (\n    \"bytes\"\n    \"fmt\"\n    \"io\"\n    \"net\u002Fhttp\"\n    \"os\"\n)\n\nfunc main() {\n    payload := []byte(`{\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": true\n    }`)\n\n    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n    if err != nil {\n        panic(err)\n    }\n    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n    req.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n\n    resp, err := http.DefaultClient.Do(req)\n    if err != nil {\n        panic(err)\n    }\n    defer resp.Body.Close()\n\n    body, _ := io.ReadAll(resp.Body)\n    fmt.Println(string(body))\n}\n","go",[195,827,828,833,838,842,847,852,857,862,867,872,876,880,885,890,894,898,902,906,910,915,920,924,929,935,941,947,953,959,964,970,975,980,985,991,996,1002,1008],{"__ignoreMap":469},[473,829,830],{"class":475,"line":476},[473,831,832],{},"\u002F\u002F Standard library only\n",[473,834,835],{"class":475,"line":497},[473,836,837],{},"package main\n",[473,839,840],{"class":475,"line":515},[473,841,604],{"emptyLinePlaceholder":603},[473,843,844],{"class":475,"line":525},[473,845,846],{},"import (\n",[473,848,849],{"class":475,"line":534},[473,850,851],{},"    \"bytes\"\n",[473,853,854],{"class":475,"line":540},[473,855,856],{},"    \"fmt\"\n",[473,858,859],{"class":475,"line":546},[473,860,861],{},"    \"io\"\n",[473,863,864],{"class":475,"line":552},[473,865,866],{},"    \"net\u002Fhttp\"\n",[473,868,869],{"class":475,"line":558},[473,870,871],{},"    \"os\"\n",[473,873,874],{"class":475,"line":564},[473,875,686],{},[473,877,878],{"class":475,"line":570},[473,879,604],{"emptyLinePlaceholder":603},[473,881,882],{"class":475,"line":642},[473,883,884],{},"func main() {\n",[473,886,887],{"class":475,"line":648},[473,888,889],{},"    payload := []byte(`{\n",[473,891,892],{"class":475,"line":654},[473,893,645],{},[473,895,896],{"class":475,"line":660},[473,897,651],{},[473,899,900],{"class":475,"line":666},[473,901,657],{},[473,903,904],{"class":475,"line":672},[473,905,663],{},[473,907,908],{"class":475,"line":678},[473,909,669],{},[473,911,912],{"class":475,"line":683},[473,913,914],{},"        \"generate_audio\": true\n",[473,916,917],{"class":475,"line":689},[473,918,919],{},"    }`)\n",[473,921,922],{"class":475,"line":695},[473,923,604],{"emptyLinePlaceholder":603},[473,925,926],{"class":475,"line":814},[473,927,928],{},"    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n",[473,930,932],{"class":475,"line":931},23,[473,933,934],{},"    if err != nil {\n",[473,936,938],{"class":475,"line":937},24,[473,939,940],{},"        panic(err)\n",[473,942,944],{"class":475,"line":943},25,[473,945,946],{},"    }\n",[473,948,950],{"class":475,"line":949},26,[473,951,952],{},"    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n",[473,954,956],{"class":475,"line":955},27,[473,957,958],{},"    req.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n",[473,960,962],{"class":475,"line":961},28,[473,963,604],{"emptyLinePlaceholder":603},[473,965,967],{"class":475,"line":966},29,[473,968,969],{},"    resp, err := http.DefaultClient.Do(req)\n",[473,971,973],{"class":475,"line":972},30,[473,974,934],{},[473,976,978],{"class":475,"line":977},31,[473,979,940],{},[473,981,983],{"class":475,"line":982},32,[473,984,946],{},[473,986,988],{"class":475,"line":987},33,[473,989,990],{},"    defer resp.Body.Close()\n",[473,992,994],{"class":475,"line":993},34,[473,995,604],{"emptyLinePlaceholder":603},[473,997,999],{"class":475,"line":998},35,[473,1000,1001],{},"    body, _ := io.ReadAll(resp.Body)\n",[473,1003,1005],{"class":475,"line":1004},36,[473,1006,1007],{},"    fmt.Println(string(body))\n",[473,1009,1011],{"class":475,"line":1010},37,[473,1012,1013],{},"}\n",[215,1015,1017],{"id":1016},"image-to-video","Image-to-Video",[191,1019,1020],{},"Image-to-video has two mutually exclusive scenarios: first frame, and first + last frames.",[444,1022,1024],{"id":1023},"first-frame","First Frame",[464,1026,1028],{"className":466,"code":1027,"language":468,"meta":469,"style":469},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"text\", \"text\": \"The camera slowly pulls back\"}\n    ]\n  }'\n",[195,1029,1030,1042,1054,1062,1068,1072,1077,1082,1087,1092],{"__ignoreMap":469},[473,1031,1032,1034,1036,1038,1040],{"class":475,"line":476},[473,1033,480],{"class":479},[473,1035,484],{"class":483},[473,1037,488],{"class":487},[473,1039,491],{"class":487},[473,1041,494],{"class":483},[473,1043,1044,1046,1048,1050,1052],{"class":475,"line":497},[473,1045,500],{"class":483},[473,1047,503],{"class":487},[473,1049,507],{"class":506},[473,1051,510],{"class":487},[473,1053,494],{"class":483},[473,1055,1056,1058,1060],{"class":475,"line":515},[473,1057,500],{"class":483},[473,1059,520],{"class":487},[473,1061,494],{"class":483},[473,1063,1064,1066],{"class":475,"line":525},[473,1065,528],{"class":483},[473,1067,531],{"class":487},[473,1069,1070],{"class":475,"line":534},[473,1071,537],{"class":487},[473,1073,1074],{"class":475,"line":540},[473,1075,1076],{"class":487},"    \"content\": [\n",[473,1078,1079],{"class":475,"line":546},[473,1080,1081],{"class":487},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n",[473,1083,1084],{"class":475,"line":552},[473,1085,1086],{"class":487},"      {\"type\": \"text\", \"text\": \"The camera slowly pulls back\"}\n",[473,1088,1089],{"class":475,"line":558},[473,1090,1091],{"class":487},"    ]\n",[473,1093,1094],{"class":475,"line":564},[473,1095,573],{"class":487},[444,1097,1099],{"id":1098},"first-and-last-frames","First and Last Frames",[464,1101,1103],{"className":466,"code":1102,"language":468,"meta":469,"style":469},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n      {\"type\": \"text\", \"text\": \"The scene transitions from day to night\"}\n    ]\n  }'\n",[195,1104,1105,1117,1129,1137,1143,1147,1151,1155,1160,1165,1169],{"__ignoreMap":469},[473,1106,1107,1109,1111,1113,1115],{"class":475,"line":476},[473,1108,480],{"class":479},[473,1110,484],{"class":483},[473,1112,488],{"class":487},[473,1114,491],{"class":487},[473,1116,494],{"class":483},[473,1118,1119,1121,1123,1125,1127],{"class":475,"line":497},[473,1120,500],{"class":483},[473,1122,503],{"class":487},[473,1124,507],{"class":506},[473,1126,510],{"class":487},[473,1128,494],{"class":483},[473,1130,1131,1133,1135],{"class":475,"line":515},[473,1132,500],{"class":483},[473,1134,520],{"class":487},[473,1136,494],{"class":483},[473,1138,1139,1141],{"class":475,"line":525},[473,1140,528],{"class":483},[473,1142,531],{"class":487},[473,1144,1145],{"class":475,"line":534},[473,1146,537],{"class":487},[473,1148,1149],{"class":475,"line":540},[473,1150,1076],{"class":487},[473,1152,1153],{"class":475,"line":546},[473,1154,1081],{"class":487},[473,1156,1157],{"class":475,"line":552},[473,1158,1159],{"class":487},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n",[473,1161,1162],{"class":475,"line":558},[473,1163,1164],{"class":487},"      {\"type\": \"text\", \"text\": \"The scene transitions from day to night\"}\n",[473,1166,1167],{"class":475,"line":564},[473,1168,1091],{"class":487},[473,1170,1171],{"class":475,"line":570},[473,1172,573],{"class":487},[215,1174,1176],{"id":1175},"multimodal-reference-video","Multimodal-Reference Video",[191,1178,1179],{},"Generate video from reference images (1–9) + reference videos (0–3) + reference audio (0–3) + an optional text prompt, supporting fresh generation, editing, and extension.",[464,1181,1183],{"className":466,"code":1182,"language":468,"meta":469,"style":469},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n      {\"type\": \"text\", \"text\": \"Make the character in the frame dance\"}\n    ]\n  }'\n",[195,1184,1185,1197,1209,1217,1223,1227,1231,1236,1241,1245],{"__ignoreMap":469},[473,1186,1187,1189,1191,1193,1195],{"class":475,"line":476},[473,1188,480],{"class":479},[473,1190,484],{"class":483},[473,1192,488],{"class":487},[473,1194,491],{"class":487},[473,1196,494],{"class":483},[473,1198,1199,1201,1203,1205,1207],{"class":475,"line":497},[473,1200,500],{"class":483},[473,1202,503],{"class":487},[473,1204,507],{"class":506},[473,1206,510],{"class":487},[473,1208,494],{"class":483},[473,1210,1211,1213,1215],{"class":475,"line":515},[473,1212,500],{"class":483},[473,1214,520],{"class":487},[473,1216,494],{"class":483},[473,1218,1219,1221],{"class":475,"line":525},[473,1220,528],{"class":483},[473,1222,531],{"class":487},[473,1224,1225],{"class":475,"line":534},[473,1226,537],{"class":487},[473,1228,1229],{"class":475,"line":540},[473,1230,1076],{"class":487},[473,1232,1233],{"class":475,"line":546},[473,1234,1235],{"class":487},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n",[473,1237,1238],{"class":475,"line":552},[473,1239,1240],{"class":487},"      {\"type\": \"text\", \"text\": \"Make the character in the frame dance\"}\n",[473,1242,1243],{"class":475,"line":558},[473,1244,1091],{"class":487},[473,1246,1247],{"class":475,"line":564},[473,1248,573],{"class":487},[200,1250,1251],{},[191,1252,1253],{},"Audio cannot be the only input — include at least one reference video or image. The three image-to-video scenarios (first frame \u002F first + last frames \u002F multimodal reference) are mutually exclusive.",[215,1255,1257,1258,1260],{"id":1256},"the-content-field","The ",[195,1259,266],{}," Field",[444,1262,1264,1265,1267],{"id":1263},"text-text","Text (",[195,1266,277],{},")",[220,1269,1270,1281],{},[223,1271,1272],{},[226,1273,1274,1277,1279],{},[229,1275,1276],{},"Field",[229,1278,237],{},[229,1280,240],{},[242,1282,1283,1296],{},[226,1284,1285,1290,1292],{},[247,1286,1287],{},[195,1288,1289],{},"type",[247,1291,256],{},[247,1293,1294],{},[195,1295,277],{},[226,1297,1298,1302,1304],{},[247,1299,1300],{},[195,1301,277],{},[247,1303,256],{},[247,1305,1306],{},"Prompt, Chinese or English. Recommended ≤500 characters (Chinese) or ≤1000 words (English)",[444,1308,1310,1311,1267],{"id":1309},"image-image_url","Image (",[195,1312,281],{},[220,1314,1315,1325],{},[223,1316,1317],{},[226,1318,1319,1321,1323],{},[229,1320,1276],{},[229,1322,237],{},[229,1324,240],{},[242,1326,1327,1339,1358],{},[226,1328,1329,1333,1335],{},[247,1330,1331],{},[195,1332,1289],{},[247,1334,256],{},[247,1336,1337],{},[195,1338,281],{},[226,1340,1341,1346,1348],{},[247,1342,1343],{},[195,1344,1345],{},"image_url.url",[247,1347,256],{},[247,1349,1350,1351,1354,1355,1267],{},"Image URL, base64 data (",[195,1352,1353],{},"data:image\u002Fpng;base64,...","), or asset ID (",[195,1356,1357],{},"asset:\u002F\u002F\u003CASSET_ID>",[226,1359,1360,1365,1368],{},[247,1361,1362],{},[195,1363,1364],{},"role",[247,1366,1367],{},"Conditional",[247,1369,1370,278,1373,278,1376],{},[195,1371,1372],{},"first_frame",[195,1374,1375],{},"last_frame",[195,1377,1378],{},"reference_image",[191,1380,1381],{},"Image requirements: formats jpeg\u002Fpng\u002Fwebp\u002Fbmp\u002Ftiff\u002Fgif; aspect ratio (0.4, 2.5); dimensions 300–6000px; each ≤30MB.",[444,1383,1385,1386,1267],{"id":1384},"video-video_url","Video (",[195,1387,284],{},[220,1389,1390,1400],{},[223,1391,1392],{},[226,1393,1394,1396,1398],{},[229,1395,1276],{},[229,1397,237],{},[229,1399,240],{},[242,1401,1402,1414,1426],{},[226,1403,1404,1408,1410],{},[247,1405,1406],{},[195,1407,1289],{},[247,1409,256],{},[247,1411,1412],{},[195,1413,284],{},[226,1415,1416,1421,1423],{},[247,1417,1418],{},[195,1419,1420],{},"video_url.url",[247,1422,256],{},[247,1424,1425],{},"Video URL or asset ID",[226,1427,1428,1432,1434],{},[247,1429,1430],{},[195,1431,1364],{},[247,1433,1367],{},[247,1435,1436,1437,1440],{},"Only ",[195,1438,1439],{},"reference_video"," is currently supported",[191,1442,1443],{},"Video requirements: formats mp4\u002Fmov; resolutions 480p\u002F720p\u002F1080p; duration ≤15s, at most 3 reference videos totaling ≤15s; each ≤50MB; frame rate 4–60fps.",[444,1445,1447,1448,1267],{"id":1446},"audio-audio_url","Audio (",[195,1449,287],{},[191,1451,1452],{},"Audio cannot be the only input.",[220,1454,1455,1465],{},[223,1456,1457],{},[226,1458,1459,1461,1463],{},[229,1460,1276],{},[229,1462,237],{},[229,1464,240],{},[242,1466,1467,1479,1491],{},[226,1468,1469,1473,1475],{},[247,1470,1471],{},[195,1472,1289],{},[247,1474,256],{},[247,1476,1477],{},[195,1478,287],{},[226,1480,1481,1486,1488],{},[247,1482,1483],{},[195,1484,1485],{},"audio_url.url",[247,1487,256],{},[247,1489,1490],{},"Audio URL, base64 data, or asset ID",[226,1492,1493,1497,1499],{},[247,1494,1495],{},[195,1496,1364],{},[247,1498,1367],{},[247,1500,1436,1501,1440],{},[195,1502,1503],{},"reference_audio",[191,1505,1506],{},"Audio requirements: formats wav\u002Fmp3; duration ≤15s, at most 3 clips totaling ≤15s; each ≤15MB.",[215,1508,1510],{"id":1509},"response","Response",[191,1512,1513],{},"Creating a task returns a task ID:",[464,1515,1519],{"className":1516,"code":1517,"language":1518,"meta":469,"style":469},"language-json shiki shiki-themes github-light github-dark","{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"model\": \"\u003CMODEL_CALL_NAME>\",\n  \"status\": \"queued\",\n  \"created_at\": \"2026-03-31T12:00:00Z\"\n}\n","json",[195,1520,1521,1526,1540,1552,1564,1574],{"__ignoreMap":469},[473,1522,1523],{"class":475,"line":476},[473,1524,1525],{"class":506},"{\n",[473,1527,1528,1531,1534,1537],{"class":475,"line":497},[473,1529,1530],{"class":483},"  \"id\"",[473,1532,1533],{"class":506},": ",[473,1535,1536],{"class":487},"\"VTK-01JXXXXXXXXXXXXXX\"",[473,1538,1539],{"class":506},",\n",[473,1541,1542,1545,1547,1550],{"class":475,"line":515},[473,1543,1544],{"class":483},"  \"model\"",[473,1546,1533],{"class":506},[473,1548,1549],{"class":487},"\"\u003CMODEL_CALL_NAME>\"",[473,1551,1539],{"class":506},[473,1553,1554,1557,1559,1562],{"class":475,"line":525},[473,1555,1556],{"class":483},"  \"status\"",[473,1558,1533],{"class":506},[473,1560,1561],{"class":487},"\"queued\"",[473,1563,1539],{"class":506},[473,1565,1566,1569,1571],{"class":475,"line":534},[473,1567,1568],{"class":483},"  \"created_at\"",[473,1570,1533],{"class":506},[473,1572,1573],{"class":487},"\"2026-03-31T12:00:00Z\"\n",[473,1575,1576],{"class":475,"line":540},[473,1577,1013],{"class":506},[215,1579,1581],{"id":1580},"querying-a-task","Querying a Task",[464,1583,1587],{"className":1584,"code":1586,"language":277},[1585],"language-text","GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n",[195,1588,1586],{"__ignoreMap":469},[449,1590],{"method":1591,"path":1592},"GET","\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}",[457,1594,1595,1622,1682,1741],{},[460,1596,1597],{"label":462},[464,1598,1600],{"className":466,"code":1599,"language":468,"meta":469,"style":469},"curl https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\"\n",[195,1601,1602,1611],{"__ignoreMap":469},[473,1603,1604,1606,1609],{"class":475,"line":476},[473,1605,480],{"class":479},[473,1607,1608],{"class":487}," https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX",[473,1610,494],{"class":483},[473,1612,1613,1615,1617,1619],{"class":475,"line":497},[473,1614,500],{"class":483},[473,1616,503],{"class":487},[473,1618,507],{"class":506},[473,1620,1621],{"class":487},"\"\n",[460,1623,1624],{"label":576},[464,1625,1627],{"className":579,"code":1626,"language":581,"meta":469,"style":469},"# pip install requests\nimport os\nimport requests\n\ntask_id = \"VTK-01JXXXXXXXXXXXXXX\"\n\nresp = requests.get(\n    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n",[195,1628,1629,1633,1637,1641,1645,1650,1654,1659,1664,1669,1673,1677],{"__ignoreMap":469},[473,1630,1631],{"class":475,"line":476},[473,1632,588],{},[473,1634,1635],{"class":475,"line":497},[473,1636,593],{},[473,1638,1639],{"class":475,"line":515},[473,1640,598],{},[473,1642,1643],{"class":475,"line":525},[473,1644,604],{"emptyLinePlaceholder":603},[473,1646,1647],{"class":475,"line":534},[473,1648,1649],{},"task_id = \"VTK-01JXXXXXXXXXXXXXX\"\n",[473,1651,1652],{"class":475,"line":540},[473,1653,604],{"emptyLinePlaceholder":603},[473,1655,1656],{"class":475,"line":546},[473,1657,1658],{},"resp = requests.get(\n",[473,1660,1661],{"class":475,"line":552},[473,1662,1663],{},"    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n",[473,1665,1666],{"class":475,"line":558},[473,1667,1668],{},"    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n",[473,1670,1671],{"class":475,"line":564},[473,1672,686],{},[473,1674,1675],{"class":475,"line":570},[473,1676,692],{},[473,1678,1679],{"class":475,"line":642},[473,1680,1681],{},"print(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n",[460,1683,1684],{"label":701},[464,1685,1687],{"className":704,"code":1686,"language":706,"meta":469,"style":469},"\u002F\u002F Node 18+ (built-in fetch)\nconst taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n\nconst resp = await fetch(\n  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n  {\n    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n",[195,1688,1689,1693,1698,1702,1706,1711,1715,1720,1724,1728,1732,1736],{"__ignoreMap":469},[473,1690,1691],{"class":475,"line":476},[473,1692,713],{},[473,1694,1695],{"class":475,"line":497},[473,1696,1697],{},"const taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n",[473,1699,1700],{"class":475,"line":515},[473,1701,604],{"emptyLinePlaceholder":603},[473,1703,1704],{"class":475,"line":525},[473,1705,718],{},[473,1707,1708],{"class":475,"line":534},[473,1709,1710],{},"  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n",[473,1712,1713],{"class":475,"line":540},[473,1714,728],{},[473,1716,1717],{"class":475,"line":546},[473,1718,1719],{},"    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n",[473,1721,1722],{"class":475,"line":552},[473,1723,797],{},[473,1725,1726],{"class":475,"line":558},[473,1727,802],{},[473,1729,1730],{"class":475,"line":564},[473,1731,604],{"emptyLinePlaceholder":603},[473,1733,1734],{"class":475,"line":570},[473,1735,811],{},[473,1737,1738],{"class":475,"line":642},[473,1739,1740],{},"console.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n",[460,1742,1743],{"label":820},[464,1744,1746],{"className":823,"code":1745,"language":825,"meta":469,"style":469},"\u002F\u002F Standard library only\npackage main\n\nimport (\n    \"fmt\"\n    \"io\"\n    \"net\u002Fhttp\"\n    \"os\"\n)\n\nfunc main() {\n    taskID := \"VTK-01JXXXXXXXXXXXXXX\"\n\n    req, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n    if err != nil {\n        panic(err)\n    }\n    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\n    resp, err := http.DefaultClient.Do(req)\n    if err != nil {\n        panic(err)\n    }\n    defer resp.Body.Close()\n\n    body, _ := io.ReadAll(resp.Body)\n    fmt.Println(string(body))\n}\n",[195,1747,1748,1752,1756,1760,1764,1768,1772,1776,1780,1784,1788,1792,1797,1801,1806,1810,1814,1818,1822,1826,1830,1834,1838,1842,1846,1850,1854,1858],{"__ignoreMap":469},[473,1749,1750],{"class":475,"line":476},[473,1751,832],{},[473,1753,1754],{"class":475,"line":497},[473,1755,837],{},[473,1757,1758],{"class":475,"line":515},[473,1759,604],{"emptyLinePlaceholder":603},[473,1761,1762],{"class":475,"line":525},[473,1763,846],{},[473,1765,1766],{"class":475,"line":534},[473,1767,856],{},[473,1769,1770],{"class":475,"line":540},[473,1771,861],{},[473,1773,1774],{"class":475,"line":546},[473,1775,866],{},[473,1777,1778],{"class":475,"line":552},[473,1779,871],{},[473,1781,1782],{"class":475,"line":558},[473,1783,686],{},[473,1785,1786],{"class":475,"line":564},[473,1787,604],{"emptyLinePlaceholder":603},[473,1789,1790],{"class":475,"line":570},[473,1791,884],{},[473,1793,1794],{"class":475,"line":642},[473,1795,1796],{},"    taskID := \"VTK-01JXXXXXXXXXXXXXX\"\n",[473,1798,1799],{"class":475,"line":648},[473,1800,604],{"emptyLinePlaceholder":603},[473,1802,1803],{"class":475,"line":654},[473,1804,1805],{},"    req, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n",[473,1807,1808],{"class":475,"line":660},[473,1809,934],{},[473,1811,1812],{"class":475,"line":666},[473,1813,940],{},[473,1815,1816],{"class":475,"line":672},[473,1817,946],{},[473,1819,1820],{"class":475,"line":678},[473,1821,952],{},[473,1823,1824],{"class":475,"line":683},[473,1825,604],{"emptyLinePlaceholder":603},[473,1827,1828],{"class":475,"line":689},[473,1829,969],{},[473,1831,1832],{"class":475,"line":695},[473,1833,934],{},[473,1835,1836],{"class":475,"line":814},[473,1837,940],{},[473,1839,1840],{"class":475,"line":931},[473,1841,946],{},[473,1843,1844],{"class":475,"line":937},[473,1845,990],{},[473,1847,1848],{"class":475,"line":943},[473,1849,604],{"emptyLinePlaceholder":603},[473,1851,1852],{"class":475,"line":949},[473,1853,1001],{},[473,1855,1856],{"class":475,"line":955},[473,1857,1007],{},[473,1859,1860],{"class":475,"line":961},[473,1861,1013],{},[191,1863,1864],{},"Successful response:",[464,1866,1868],{"className":1516,"code":1867,"language":1518,"meta":469,"style":469},"{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"status\": \"succeed\",\n  \"result\": {\"video_url\": \"https:\u002F\u002F...\"}\n}\n",[195,1869,1870,1874,1884,1895,1913],{"__ignoreMap":469},[473,1871,1872],{"class":475,"line":476},[473,1873,1525],{"class":506},[473,1875,1876,1878,1880,1882],{"class":475,"line":497},[473,1877,1530],{"class":483},[473,1879,1533],{"class":506},[473,1881,1536],{"class":487},[473,1883,1539],{"class":506},[473,1885,1886,1888,1890,1893],{"class":475,"line":515},[473,1887,1556],{"class":483},[473,1889,1533],{"class":506},[473,1891,1892],{"class":487},"\"succeed\"",[473,1894,1539],{"class":506},[473,1896,1897,1900,1903,1906,1908,1911],{"class":475,"line":525},[473,1898,1899],{"class":483},"  \"result\"",[473,1901,1902],{"class":506},": {",[473,1904,1905],{"class":483},"\"video_url\"",[473,1907,1533],{"class":506},[473,1909,1910],{"class":487},"\"https:\u002F\u002F...\"",[473,1912,1013],{"class":506},[473,1914,1915],{"class":475,"line":534},[473,1916,1013],{"class":506},[191,1918,1919,1920,1923,1924,1923,1927,306,1930,306,1933,306,1936,442],{},"Task statuses: ",[195,1921,1922],{},"queued"," → ",[195,1925,1926],{},"running",[195,1928,1929],{},"succeed",[195,1931,1932],{},"failed",[195,1934,1935],{},"cancelled",[195,1937,1938],{},"expired",[215,1940,1942],{"id":1941},"task-list","Task List",[464,1944,1947],{"className":1945,"code":1946,"language":277},[1585],"GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\n",[195,1948,1946],{"__ignoreMap":469},[449,1950],{"method":1591,"path":441},[215,1952,1954],{"id":1953},"canceling-a-task","Canceling a Task",[464,1956,1959],{"className":1957,"code":1958,"language":277},[1585],"DELETE \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n",[195,1960,1958],{"__ignoreMap":469},[449,1962],{"method":1963,"path":1592},"DELETE",[191,1965,1436,1966,1968],{},[195,1967,1922],{}," tasks can be canceled.",[215,1970,1972],{"id":1971},"generation-showcase","Generation Showcase",[191,1974,1975],{},"Multimodal-reference video (background image + costume three-view sheet + face close-up + prompt):",[191,1977,1978],{},[1979,1980],"img",{"alt":469,"src":1981},"https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a.webp",[191,1983,1984],{},"Prompt:",[200,1986,1987],{},[191,1988,1989],{},"Background reference image 1. A pale flash crosses the frame; the young nobleman (costume reference image 2; likeness strictly follows image 3) spins and snaps open a folding fan, gilded blades springing out as the ink-bamboo fan face flutters, a slow drum booming once. Close-up: the fan blade parries the villain's long saber, steel on steel; the nobleman's lips curl into a sly smile while his eyes stay cold, fingertips idly twirling the fan handle. Slow motion: he leans low and slides sideways, the fan blade grazing the villain's leg and leaving a faint mark, his robe hem sweeping the ground, jade hairpin swaying. Quick cut: he whirls and throws the fan — the blade shoots past the villain's neck and buries itself in the wooden pillar behind; the villain freezes, not daring to move. Reversal: a palm wind rushes in from behind; he spins to catch it, and as fingertips touch he borrows the force to leap back while the fan blade flies back to his hand from the pillar, eyes alert. Slow-motion highlight: fan half closed, blade resting by his lips, he glances back over his shoulder, hair lifted by the wind, brow raised with a trace of defiance. Pull-back: the nobleman stands on the stone terrace of a courtyard, lightly waving the fan as the camera pulls away, masked figures with curved sabers emerging from all four corners, closing in. Freeze frame: the fan half folded, gilded edge gleaming, he steps forward as the frame darkens, leaving only his silhouette and the blade's glint, sound cut to silence. SFX: crisp fan snaps + blade-wind hiss + slow drum hits (steady).",[191,1991,1992],{},[1993,1994],"video",{"style":1995,"src":1996,"controls":603},"max-width: 480px; margin: 0 auto;","https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a-h265.mp4",[215,1998,2000],{"id":1999},"available-models","Available Models",[191,2002,2003,2004,2007],{},"The 3D sample model currently discoverable in the Model Plaza: ",[195,2005,2006],{},"doubao-seed3d-2.0",". There are no publicly discoverable call names for video models yet.",[200,2009,2010],{},[191,2011,2012,2013,2018],{},"The full model catalog is on the ",[2014,2015,2017],"a",{"href":2016},"\u002Fen\u002Fmodels","Model Plaza",". Some models require permission flags configured by administrators.",[215,2020,27],{"id":2021},"billing",[191,2023,2024,2025,442],{},"Video generation is billed by model and video parameters (resolution, duration, audio); check current unit prices on the corresponding model detail page in the ",[2014,2026,2017],{"href":2016},[215,2028,2030],{"id":2029},"differences-from-the-volcengine-official-api","Differences from the Volcengine Official API",[191,2032,2033],{},"SilvaMux's Seedance API resembles the Volcengine official API field-wise (same models), but:",[2035,2036,2037,2048,2056,2061],"ul",{},[2038,2039,2040,2043,2044,2047],"li",{},[409,2041,2042],{},"Authentication",": the platform API key (",[195,2045,2046],{},"sk_live_","), not Volcengine AK\u002FSK.",[2038,2049,2050,1533,2053,2055],{},[409,2051,2052],{},"Base URL",[195,2054,433],{}," (the platform domain), not the Volcengine Ark domain.",[2038,2057,2058,2060],{},[409,2059,197],{},": the real call name shown by the Model Plaza or the model list, not a Volcengine endpoint ID.",[2038,2062,2063,2066,2067,2070],{},[409,2064,2065],{},"Task queries",": poll ",[195,2068,2069],{},"GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id"," for task status.",[2072,2073,2074],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":469,"searchDepth":497,"depth":497,"links":2076},[2077,2080,2081,2085,2086,2097,2098,2099,2100,2101,2102,2103,2104],{"id":217,"depth":497,"text":218,"children":2078},[2079],{"id":446,"depth":515,"text":447},{"id":454,"depth":497,"text":455},{"id":1016,"depth":497,"text":1017,"children":2082},[2083,2084],{"id":1023,"depth":515,"text":1024},{"id":1098,"depth":515,"text":1099},{"id":1175,"depth":497,"text":1176},{"id":1256,"depth":497,"text":2087,"children":2088},"The content Field",[2089,2091,2093,2095],{"id":1263,"depth":515,"text":2090},"Text (text)",{"id":1309,"depth":515,"text":2092},"Image (image_url)",{"id":1384,"depth":515,"text":2094},"Video (video_url)",{"id":1446,"depth":515,"text":2096},"Audio (audio_url)",{"id":1509,"depth":497,"text":1510},{"id":1580,"depth":497,"text":1581},{"id":1941,"depth":497,"text":1942},{"id":1953,"depth":497,"text":1954},{"id":1971,"depth":497,"text":1972},{"id":1999,"depth":497,"text":2000},{"id":2021,"depth":497,"text":27},{"id":2029,"depth":497,"text":2030},"Create, query, and manage video or 3D asynchronous generation tasks.","md",{},"\u002Fmodels\u002Fvideo\u002Foverview","---\ntitle: Video Generation API\ndescription: Create, query, and manage video or 3D asynchronous generation tasks.\nnavigation: false\n---\n\n# Video Generation API\n\nVideo generation uses an asynchronous task model: create a task → poll the status → read the result. Video and 3D share the same task API and are routed by the `model` field.\n\n> There are currently no publicly discoverable video model call names in the model list or the Model Plaza. The video requests below only illustrate the structure and cannot be executed directly; `\u003CMODEL_CALL_NAME>` must be replaced with a real call name published later on the Model Plaza.\n\n> Video generation uses the platform's own API + API key, not Volcengine AK\u002FSK signing. The Volcengine-compatible APIs are for asset management only.\n\n## Key Parameters\n\n| Parameter | Type | Required | Description |\n| --- | --- | --- | --- |\n| `model` | string | Yes | Model call name; must come from the Model Plaza or the model list |\n| `content` | array | Yes | Input content; supports `text`, `image_url`, `video_url`, `audio_url` |\n| `resolution` | string | No | Model pass-through field; common values `480p` \u002F `720p` \u002F `1080p`, per model details |\n| `ratio` | string | No | Model pass-through field; common values `16:9` \u002F `9:16` \u002F `4:3` \u002F `3:4` \u002F `1:1` \u002F `21:9` |\n| `duration` | integer | No | Model pass-through field; duration range per model details |\n| `frames` | integer | No | Model pass-through field; whether it can replace `duration` per model details |\n| `generate_audio` | boolean | No | Model pass-through field; audio support per model details |\n| `tools` | array | No | Model pass-through field; supported tools per model details |\n\n**Creating tasks:** `Authorization: Bearer \u003CAPI_KEY>` or `x-api-key: \u003CAPI_KEY>`\n\n**Querying and canceling tasks:** `Authorization: Bearer \u003CAPI_KEY>`\n\n> `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3` is the `\u002Fapi\u002Fv3` path under the access domain, routing to `\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks`.\n\n### Creating a Task\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\" method=\"POST\"}\n::\n\n## Text-to-Video\n\n::code-tabs\n:::code-tab{label=\"cURL\"}\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n    \"resolution\": \"720p\",\n    \"ratio\": \"16:9\",\n    \"duration\": 5,\n    \"generate_audio\": true\n  }'\n```\n:::\n:::code-tab{label=\"Python\"}\n```python\n# pip install requests\nimport os\nimport requests\n\nresp = requests.post(\n    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n    headers={\n        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n        \"Content-Type\": \"application\u002Fjson\",\n    },\n    json={\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": True,\n    },\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n```\n:::\n:::code-tab{label=\"JavaScript\"}\n```javascript\n\u002F\u002F Node 18+ (built-in fetch)\nconst resp = await fetch(\n  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n  {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n      \"Content-Type\": \"application\u002Fjson\",\n    },\n    body: JSON.stringify({\n      model: \"\u003CMODEL_CALL_NAME>\",\n      content: [{ type: \"text\", text: \"A golden retriever running on the beach\" }],\n      resolution: \"720p\",\n      ratio: \"16:9\",\n      duration: 5,\n      generate_audio: true,\n    }),\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n```\n:::\n:::code-tab{label=\"Go\"}\n```go\n\u002F\u002F Standard library only\npackage main\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\t\"io\"\n\t\"net\u002Fhttp\"\n\t\"os\"\n)\n\nfunc main() {\n\tpayload := []byte(`{\n\t\t\"model\": \"\u003CMODEL_CALL_NAME>\",\n\t\t\"content\": [{\"type\": \"text\", \"text\": \"A golden retriever running on the beach\"}],\n\t\t\"resolution\": \"720p\",\n\t\t\"ratio\": \"16:9\",\n\t\t\"duration\": 5,\n\t\t\"generate_audio\": true\n\t}`)\n\n\treq, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treq.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\treq.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n\n\tresp, err := http.DefaultClient.Do(req)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer resp.Body.Close()\n\n\tbody, _ := io.ReadAll(resp.Body)\n\tfmt.Println(string(body))\n}\n```\n:::\n::\n\n## Image-to-Video\n\nImage-to-video has two mutually exclusive scenarios: first frame, and first + last frames.\n\n### First Frame\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"text\", \"text\": \"The camera slowly pulls back\"}\n    ]\n  }'\n```\n\n### First and Last Frames\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n      {\"type\": \"text\", \"text\": \"The scene transitions from day to night\"}\n    ]\n  }'\n```\n\n## Multimodal-Reference Video\n\nGenerate video from reference images (1–9) + reference videos (0–3) + reference audio (0–3) + an optional text prompt, supporting fresh generation, editing, and extension.\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n      {\"type\": \"text\", \"text\": \"Make the character in the frame dance\"}\n    ]\n  }'\n```\n\n> Audio cannot be the only input — include at least one reference video or image. The three image-to-video scenarios (first frame \u002F first + last frames \u002F multimodal reference) are mutually exclusive.\n\n## The `content` Field\n\n### Text (`text`)\n\n| Field | Required | Description |\n| --- | --- | --- |\n| `type` | Yes | `text` |\n| `text` | Yes | Prompt, Chinese or English. Recommended ≤500 characters (Chinese) or ≤1000 words (English) |\n\n### Image (`image_url`)\n\n| Field | Required | Description |\n| --- | --- | --- |\n| `type` | Yes | `image_url` |\n| `image_url.url` | Yes | Image URL, base64 data (`data:image\u002Fpng;base64,...`), or asset ID (`asset:\u002F\u002F\u003CASSET_ID>`) |\n| `role` | Conditional | `first_frame`, `last_frame`, `reference_image` |\n\nImage requirements: formats jpeg\u002Fpng\u002Fwebp\u002Fbmp\u002Ftiff\u002Fgif; aspect ratio (0.4, 2.5); dimensions 300–6000px; each ≤30MB.\n\n### Video (`video_url`)\n\n| Field | Required | Description |\n| --- | --- | --- |\n| `type` | Yes | `video_url` |\n| `video_url.url` | Yes | Video URL or asset ID |\n| `role` | Conditional | Only `reference_video` is currently supported |\n\nVideo requirements: formats mp4\u002Fmov; resolutions 480p\u002F720p\u002F1080p; duration ≤15s, at most 3 reference videos totaling ≤15s; each ≤50MB; frame rate 4–60fps.\n\n### Audio (`audio_url`)\n\nAudio cannot be the only input.\n\n| Field | Required | Description |\n| --- | --- | --- |\n| `type` | Yes | `audio_url` |\n| `audio_url.url` | Yes | Audio URL, base64 data, or asset ID |\n| `role` | Conditional | Only `reference_audio` is currently supported |\n\nAudio requirements: formats wav\u002Fmp3; duration ≤15s, at most 3 clips totaling ≤15s; each ≤15MB.\n\n## Response\n\nCreating a task returns a task ID:\n\n```json\n{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"model\": \"\u003CMODEL_CALL_NAME>\",\n  \"status\": \"queued\",\n  \"created_at\": \"2026-03-31T12:00:00Z\"\n}\n```\n\n## Querying a Task\n\n```\nGET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}\" method=\"GET\"}\n::\n\n::code-tabs\n:::code-tab{label=\"cURL\"}\n```bash\ncurl https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\"\n```\n:::\n:::code-tab{label=\"Python\"}\n```python\n# pip install requests\nimport os\nimport requests\n\ntask_id = \"VTK-01JXXXXXXXXXXXXXX\"\n\nresp = requests.get(\n    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n```\n:::\n:::code-tab{label=\"JavaScript\"}\n```javascript\n\u002F\u002F Node 18+ (built-in fetch)\nconst taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n\nconst resp = await fetch(\n  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n  {\n    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n```\n:::\n:::code-tab{label=\"Go\"}\n```go\n\u002F\u002F Standard library only\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io\"\n\t\"net\u002Fhttp\"\n\t\"os\"\n)\n\nfunc main() {\n\ttaskID := \"VTK-01JXXXXXXXXXXXXXX\"\n\n\treq, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treq.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\n\tresp, err := http.DefaultClient.Do(req)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer resp.Body.Close()\n\n\tbody, _ := io.ReadAll(resp.Body)\n\tfmt.Println(string(body))\n}\n```\n:::\n::\n\nSuccessful response:\n\n```json\n{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"status\": \"succeed\",\n  \"result\": {\"video_url\": \"https:\u002F\u002F...\"}\n}\n```\n\nTask statuses: `queued` → `running` → `succeed` \u002F `failed` \u002F `cancelled` \u002F `expired`.\n\n## Task List\n\n```\nGET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\" method=\"GET\"}\n::\n\n## Canceling a Task\n\n```\nDELETE \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}\" method=\"DELETE\"}\n::\n\nOnly `queued` tasks can be canceled.\n\n## Generation Showcase\n\nMultimodal-reference video (background image + costume three-view sheet + face close-up + prompt):\n\n![](https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a.webp)\n\nPrompt:\n\n> Background reference image 1. A pale flash crosses the frame; the young nobleman (costume reference image 2; likeness strictly follows image 3) spins and snaps open a folding fan, gilded blades springing out as the ink-bamboo fan face flutters, a slow drum booming once. Close-up: the fan blade parries the villain's long saber, steel on steel; the nobleman's lips curl into a sly smile while his eyes stay cold, fingertips idly twirling the fan handle. Slow motion: he leans low and slides sideways, the fan blade grazing the villain's leg and leaving a faint mark, his robe hem sweeping the ground, jade hairpin swaying. Quick cut: he whirls and throws the fan — the blade shoots past the villain's neck and buries itself in the wooden pillar behind; the villain freezes, not daring to move. Reversal: a palm wind rushes in from behind; he spins to catch it, and as fingertips touch he borrows the force to leap back while the fan blade flies back to his hand from the pillar, eyes alert. Slow-motion highlight: fan half closed, blade resting by his lips, he glances back over his shoulder, hair lifted by the wind, brow raised with a trace of defiance. Pull-back: the nobleman stands on the stone terrace of a courtyard, lightly waving the fan as the camera pulls away, masked figures with curved sabers emerging from all four corners, closing in. Freeze frame: the fan half folded, gilded edge gleaming, he steps forward as the frame darkens, leaving only his silhouette and the blade's glint, sound cut to silence. SFX: crisp fan snaps + blade-wind hiss + slow drum hits (steady).\n\n\u003Cvideo style=\"max-width: 480px; margin: 0 auto;\" src=\"https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a-h265.mp4\" controls>\u003C\u002Fvideo>\n\n## Available Models\n\nThe 3D sample model currently discoverable in the Model Plaza: `doubao-seed3d-2.0`. There are no publicly discoverable call names for video models yet.\n\n> The full model catalog is on the [Model Plaza](\u002Fen\u002Fmodels). Some models require permission flags configured by administrators.\n\n## Billing\n\nVideo generation is billed by model and video parameters (resolution, duration, audio); check current unit prices on the corresponding model detail page in the [Model Plaza](\u002Fen\u002Fmodels).\n\n## Differences from the Volcengine Official API\n\nSilvaMux's Seedance API resembles the Volcengine official API field-wise (same models), but:\n\n- **Authentication**: the platform API key (`sk_live_`), not Volcengine AK\u002FSK.\n- **Base URL**: `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3` (the platform domain), not the Volcengine Ark domain.\n- **model**: the real call name shown by the Model Plaza or the model list, not a Volcengine endpoint ID.\n- **Task queries**: poll `GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id` for task status.\n",[],{"title":182,"description":2105},"4.models\u002F3.video\u002F1.overview","a-wMuFZSff-yJozqpYSUZ0oF3ndVjjFvITN1tlHiszE",{"found":603,"operationId":2115,"summary":2116,"description":469,"method":451,"path":441,"publiclyDiscoverable":603,"security":2117,"parameters":2121,"requestBody":2122,"responses":2133},"createContentGenerationTask","创建任务",{"schemes":2118,"optional":25},[2119,2120],"BearerAuth","ApiKeyAuth",[],{"present":603,"required":603,"description":469,"contentType":2123,"type":2124,"fields":2125,"variants":2132},"application\u002Fjson","ContentTaskRequest",[2126,2129,2131],{"name":2127,"type":2128,"required":25,"description":469},"callback_url","string (uri)",{"name":266,"type":2130,"required":25,"description":469},"array\u003CFreeFormObject>",{"name":197,"type":253,"required":603,"description":469},[],[2134,2158],{"status":2135,"description":2136,"contentType":2123,"type":2137,"fields":2138},"200","任务创建成功。","ContentTask",[2139,2141,2145,2147,2149,2152,2153,2156],{"name":266,"type":2140,"required":25,"description":469},"FreeFormObject",{"name":2142,"type":2143,"required":25,"description":2144},"created_at","string (date-time) | integer (int64)","API 版本 2026-01-01 返回 RFC3339；2026-06-01 返回 Unix 秒。",{"name":2146,"type":2140,"required":25,"description":469},"error",{"name":2148,"type":253,"required":603,"description":469},"id",{"name":2150,"type":2151,"required":25,"description":469},"kind","string (video | 3d)",{"name":197,"type":253,"required":25,"description":469},{"name":2154,"type":2155,"required":603,"description":469},"status","ContentTaskStatus",{"name":2157,"type":2143,"required":25,"description":2144},"updated_at",{"status":2159,"description":2160,"contentType":2123,"type":2161,"fields":2162},"default","Volcengine 兼容错误。","VolcengineError",[2163],{"name":2146,"type":2140,"required":25,"description":469},{"found":603,"operationId":2165,"summary":2166,"description":469,"method":1591,"path":1592,"publiclyDiscoverable":603,"security":2167,"parameters":2169,"requestBody":2172,"responses":2176},"getContentGenerationTask","查询任务",{"schemes":2168,"optional":25},[2119],[2170],{"name":2148,"type":2171,"required":603,"description":469},"string · path",{"present":25,"required":25,"description":469,"contentType":469,"type":2173,"fields":2174,"variants":2175},"any",[],[],[2177,2188],{"status":2135,"description":2178,"contentType":2123,"type":2137,"fields":2179},"任务详情。",[2180,2181,2182,2183,2184,2185,2186,2187],{"name":266,"type":2140,"required":25,"description":469},{"name":2142,"type":2143,"required":25,"description":2144},{"name":2146,"type":2140,"required":25,"description":469},{"name":2148,"type":253,"required":603,"description":469},{"name":2150,"type":2151,"required":25,"description":469},{"name":197,"type":253,"required":25,"description":469},{"name":2154,"type":2155,"required":603,"description":469},{"name":2157,"type":2143,"required":25,"description":2144},{"status":2159,"description":2189,"contentType":2123,"type":2190,"fields":2191},"OpenAI 兼容错误。","OpenAIError",[2192,2194,2197,2199],{"name":2146,"type":2193,"required":603,"description":469},"object",{"name":2195,"type":2196,"required":25,"description":469},"error.code","string | integer",{"name":2198,"type":253,"required":603,"description":469},"error.message",{"name":2200,"type":253,"required":25,"description":469},"error.type",{"found":603,"operationId":2202,"summary":2203,"description":469,"method":1591,"path":441,"publiclyDiscoverable":603,"security":2204,"parameters":2206,"requestBody":2224,"responses":2227},"listContentGenerationTasks","任务列表",{"schemes":2205,"optional":25},[2119],[2207,2210,2212,2215,2218,2221],{"name":2208,"type":2209,"required":25,"description":469},"page_num","integer · query",{"name":2211,"type":2209,"required":25,"description":469},"page_size",{"name":2213,"type":2214,"required":25,"description":469},"filter.status","ContentTaskStatus · query",{"name":2216,"type":2217,"required":25,"description":469},"filter.model","string · query",{"name":2219,"type":2220,"required":25,"description":469},"filter.kind","string (video | 3d) · query",{"name":2222,"type":2223,"required":25,"description":469},"filter.task_ids","array\u003Cstring> · query",{"present":25,"required":25,"description":469,"contentType":469,"type":2173,"fields":2225,"variants":2226},[],[],[2228,2253],{"status":2135,"description":2229,"contentType":2123,"type":2193,"fields":2230},"任务列表。",[2231,2234,2236,2238,2240,2242,2244,2246,2248,2250],{"name":2232,"type":2233,"required":603,"description":469},"items","array\u003CContentTask>",{"name":2235,"type":2140,"required":25,"description":469},"items.content",{"name":2237,"type":2143,"required":25,"description":2144},"items.created_at",{"name":2239,"type":2140,"required":25,"description":469},"items.error",{"name":2241,"type":253,"required":603,"description":469},"items.id",{"name":2243,"type":2151,"required":25,"description":469},"items.kind",{"name":2245,"type":253,"required":25,"description":469},"items.model",{"name":2247,"type":2155,"required":603,"description":469},"items.status",{"name":2249,"type":2143,"required":25,"description":2144},"items.updated_at",{"name":2251,"type":2252,"required":603,"description":469},"total","integer (int64)",{"status":2159,"description":2189,"contentType":2123,"type":2190,"fields":2254},[2255,2256,2257,2258],{"name":2146,"type":2193,"required":603,"description":469},{"name":2195,"type":2196,"required":25,"description":469},{"name":2198,"type":253,"required":603,"description":469},{"name":2200,"type":253,"required":25,"description":469},{"found":603,"operationId":2260,"summary":2261,"description":469,"method":1963,"path":1592,"publiclyDiscoverable":603,"security":2262,"parameters":2264,"requestBody":2266,"responses":2269},"cancelContentGenerationTask","取消任务",{"schemes":2263,"optional":25},[2119],[2265],{"name":2148,"type":2171,"required":603,"description":469},{"present":25,"required":25,"description":469,"contentType":469,"type":2173,"fields":2267,"variants":2268},[],[],[2270,2276,2283],{"status":2135,"description":2271,"contentType":2123,"type":2193,"fields":2272},"任务已取消。",[2273,2274],{"name":2148,"type":253,"required":603,"description":469},{"name":2154,"type":2275,"required":603,"description":469},"string (cancelled)",{"status":2277,"description":2189,"contentType":2123,"type":2190,"fields":2278},"409",[2279,2280,2281,2282],{"name":2146,"type":2193,"required":603,"description":469},{"name":2195,"type":2196,"required":25,"description":469},{"name":2198,"type":253,"required":603,"description":469},{"name":2200,"type":253,"required":25,"description":469},{"status":2159,"description":2189,"contentType":2123,"type":2190,"fields":2284},[2285,2286,2287,2288],{"name":2146,"type":2193,"required":603,"description":469},{"name":2195,"type":2196,"required":25,"description":469},{"name":2198,"type":253,"required":603,"description":469},{"name":2200,"type":253,"required":25,"description":469}]