[{"data":1,"prerenderedAt":1849},["ShallowReactive",2],{"guide-\u002Fguides\u002Fai-video":3,"developer-code-1ajnhi0":1838,"developer-code-1dqaerc":1839,"developer-code-t6mtz0":1840,"developer-code-172vp9s":1841,"developer-code-18ihyq8":1842,"developer-code-1nybn4n":1843,"developer-code-dwq5q6":1844,"developer-code-112wlkt":1845,"developer-code-8gtwh2":1846,"developer-code-ao99nl":1847,"developer-code-1h94fyh":1848},{"id":4,"title":5,"body":6,"description":1829,"extension":1830,"meta":1831,"navigation":1832,"path":1834,"seo":1835,"stem":1836,"__hash__":1837},"guides\u002Fguides\u002Fai-video.md","AI Video Generation API",{"type":7,"value":8,"toc":1811},"minimark",[9,13,23,28,182,186,189,239,311,314,336,340,350,442,461,468,471,477,481,488,510,542,549,673,680,684,702,764,767,829,833,863,1010,1015,1071,1074,1104,1107,1137,1141,1156,1221,1238,1244,1248,1274,1290,1294,1307,1332,1379,1395,1405,1409,1415,1446,1555,1578,1582,1718,1728,1732,1780,1784,1807],[10,11,12],"p",{},"The VisionStory AI Video Generation API creates text-to-video, image-to-video, and reference-guided clips with Seedance, Wan, and Kling models. Use the same API key to discover models, estimate credits, submit jobs, reuse media assets, poll status, and download results.",[14,15,16],"blockquote",{},[10,17,18,22],{},[19,20,21],"strong",{},"Beta."," Any API key backed by an active Pro plan or above can call these endpoints. No separate capability allowlist is required.",[24,25,27],"h2",{"id":26},"ai-video-api-endpoints","AI video API endpoints",[29,30,31,47],"table",{},[32,33,34],"thead",{},[35,36,37,41,44],"tr",{},[38,39,40],"th",{},"Method",[38,42,43],{},"Path",[38,45,46],{},"What it does",[48,49,50,67,81,96,113,127,141,155,169],"tbody",{},[35,51,52,59,64],{},[53,54,55],"td",{},[56,57,58],"code",{},"GET",[53,60,61],{},[56,62,63],{},"\u002Fapi\u002Fv1\u002Fai_video\u002Fmodels",[53,65,66],{},"Machine-readable capability sheet for every model",[35,68,69,73,78],{},[53,70,71],{},[56,72,58],{},[53,74,75],{},[56,76,77],{},"\u002Fapi\u002Fv1\u002Fai_video\u002Fcost",[53,79,80],{},"Exact credit cost of a task before you submit it",[35,82,83,88,93],{},[53,84,85],{},[56,86,87],{},"POST",[53,89,90],{},[56,91,92],{},"\u002Fapi\u002Fv1\u002Fai_video",[53,94,95],{},"Submit a generation task",[35,97,98,102,106],{},[53,99,100],{},[56,101,58],{},[53,103,104],{},[56,105,92],{},[53,107,108,109,112],{},"Query one task (or up to 20 with ",[56,110,111],{},"video_ids",")",[35,114,115,119,124],{},[53,116,117],{},[56,118,58],{},[53,120,121],{},[56,122,123],{},"\u002Fapi\u002Fv1\u002Fai_videos",[53,125,126],{},"List your tasks, newest first",[35,128,129,134,138],{},[53,130,131],{},[56,132,133],{},"DELETE",[53,135,136],{},[56,137,92],{},[53,139,140],{},"Delete a task",[35,142,143,147,152],{},[53,144,145],{},[56,146,87],{},[53,148,149],{},[56,150,151],{},"\u002Fapi\u002Fv1\u002Fasset",[53,153,154],{},"Upload a reusable media asset",[35,156,157,161,166],{},[53,158,159],{},[56,160,58],{},[53,162,163],{},[56,164,165],{},"\u002Fapi\u002Fv1\u002Fassets",[53,167,168],{},"List your assets",[35,170,171,175,179],{},[53,172,173],{},[56,174,133],{},[53,176,177],{},[56,178,151],{},[53,180,181],{},"Delete an asset",[24,183,185],{"id":184},"generate-an-ai-video","Generate an AI video",[10,187,188],{},"Submit a text-to-video task, then poll until it finishes:",[190,191,196],"pre",{"className":192,"code":193,"language":194,"meta":195,"style":195},"language-bash shiki shiki-themes github-light github-dark","curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" -H \"Content-Type: application\u002Fjson\" -d '{\"model_id\": \"seedance-2.0\", \"prompt\": \"A corgi surfing at sunset, cinematic lighting\", \"duration_sec\": 8, \"aspect_ratio\": \"9:16\", \"resolution\": \"1080p\"}' https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\n","bash","",[56,197,198],{"__ignoreMap":195},[199,200,203,207,211,214,218,222,225,227,230,233,236],"span",{"class":201,"line":202},"line",1,[199,204,206],{"class":205},"sScJk","curl",[199,208,210],{"class":209},"sj4cs"," -s",[199,212,213],{"class":209}," -H",[199,215,217],{"class":216},"sZZnC"," \"X-API-Key: ",[199,219,221],{"class":220},"sVt8B","$VISIONSTORY_API_KEY",[199,223,224],{"class":216},"\"",[199,226,213],{"class":209},[199,228,229],{"class":216}," \"Content-Type: application\u002Fjson\"",[199,231,232],{"class":209}," -d",[199,234,235],{"class":216}," '{\"model_id\": \"seedance-2.0\", \"prompt\": \"A corgi surfing at sunset, cinematic lighting\", \"duration_sec\": 8, \"aspect_ratio\": \"9:16\", \"resolution\": \"1080p\"}'",[199,237,238],{"class":216}," https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\n",[190,240,244],{"className":241,"code":242,"language":243,"meta":195,"style":195},"language-json shiki shiki-themes github-light github-dark","{\n  \"data\": {\n    \"video_id\": \"YOUR_AI_VIDEO_ID\",\n    \"status\": \"queued\",\n    \"cost_credit\": 64\n  }\n}\n","json",[56,245,246,251,260,275,288,299,305],{"__ignoreMap":195},[199,247,248],{"class":201,"line":202},[199,249,250],{"class":220},"{\n",[199,252,254,257],{"class":201,"line":253},2,[199,255,256],{"class":209},"  \"data\"",[199,258,259],{"class":220},": {\n",[199,261,263,266,269,272],{"class":201,"line":262},3,[199,264,265],{"class":209},"    \"video_id\"",[199,267,268],{"class":220},": ",[199,270,271],{"class":216},"\"YOUR_AI_VIDEO_ID\"",[199,273,274],{"class":220},",\n",[199,276,278,281,283,286],{"class":201,"line":277},4,[199,279,280],{"class":209},"    \"status\"",[199,282,268],{"class":220},[199,284,285],{"class":216},"\"queued\"",[199,287,274],{"class":220},[199,289,291,294,296],{"class":201,"line":290},5,[199,292,293],{"class":209},"    \"cost_credit\"",[199,295,268],{"class":220},[199,297,298],{"class":209},"64\n",[199,300,302],{"class":201,"line":301},6,[199,303,304],{"class":220},"  }\n",[199,306,308],{"class":201,"line":307},7,[199,309,310],{"class":220},"}\n",[10,312,313],{},"Poll every 5–10 seconds:",[190,315,317],{"className":192,"code":316,"language":194,"meta":195,"style":195},"curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video?video_id=YOUR_AI_VIDEO_ID\"\n",[56,318,319],{"__ignoreMap":195},[199,320,321,323,325,327,329,331,333],{"class":201,"line":202},[199,322,206],{"class":205},[199,324,210],{"class":209},[199,326,213],{"class":209},[199,328,217],{"class":216},[199,330,221],{"class":220},[199,332,224],{"class":216},[199,334,335],{"class":216}," \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video?video_id=YOUR_AI_VIDEO_ID\"\n",[24,337,339],{"id":338},"ai-video-models-and-capabilities","AI video models and capabilities",[10,341,342,345,346,349],{},[56,343,344],{},"GET \u002Fapi\u002Fv1\u002Fai_video\u002Fmodels"," returns allowed values and defaults for each parameter, plus media constraints. ",[19,347,348],{},"Always drive your integration from this endpoint"," — new models and parameter values appear there without any API change.",[29,351,352,371],{},[32,353,354],{},[35,355,356,359,362,365,368],{},[38,357,358],{},"model_id",[38,360,361],{},"Best for",[38,363,364],{},"Resolution",[38,366,367],{},"Duration",[38,369,370],{},"Capabilities",[48,372,373,392,409,426],{},[35,374,375,380,383,386,389],{},[53,376,377],{},[56,378,379],{},"seedance-2.5",[53,381,382],{},"Latest generation, single clips up to 30 s",[53,384,385],{},"480p \u002F 720p \u002F 1080p",[53,387,388],{},"4–30 s",[53,390,391],{},"text-to-video, image-to-video",[35,393,394,399,402,404,407],{},[53,395,396],{},[56,397,398],{},"seedance-2.0",[53,400,401],{},"Flagship quality, multimodal references",[53,403,385],{},[53,405,406],{},"4–15 s",[53,408,391],{},[35,410,411,416,419,422,424],{},[53,412,413],{},[56,414,415],{},"seedance-2.0-fast",[53,417,418],{},"Lower latency and cost",[53,420,421],{},"480p \u002F 720p",[53,423,406],{},[53,425,391],{},[35,427,428,433,436,438,440],{},[53,429,430],{},[56,431,432],{},"seedance-2.0-mini",[53,434,435],{},"Lightweight, most economical",[53,437,421],{},[53,439,406],{},[53,441,391],{},[10,443,444,445,448,449,452,453,456,457,460],{},"| ",[56,446,447],{},"wan-3.0"," | Multimodal references | 480p \u002F 720p \u002F 1080p | 2–30 s, integer | text-to-video, image-to-video |\n| ",[56,450,451],{},"wan-3.0-prime"," | Higher-priced Wan variant | 480p \u002F 720p \u002F 1080p | 2–30 s, integer | text-to-video, image-to-video |\n| ",[56,454,455],{},"kling-3.0"," | Up to 4K output | 720p \u002F 1080p \u002F 4k | 5 or 10 s | text-to-video, image-to-video; no refs |\n| ",[56,458,459],{},"kling-3.0-omni"," | Image\u002Fvideo references | 720p \u002F 1080p | 3, 5, 7, 10, or 15 s | text-to-video with refs; no first_frame |",[10,462,463,464,467],{},"Read each model's allowed aspect ratios, defaults, and reference limits from discovery. Wan supports ",[56,465,466],{},"adaptive"," and prompts up to 20000 characters; Seedance supports up to 5000, and Kling up to 2500. Resolution defaults to 720p except Kling 3.0 Omni (1080p). Seedance 2.5 defaults to 15 seconds, other Seedance models to 5 seconds. Native audio defaults to on.",[10,469,470],{},"The Seedance 5000-character limit is the API's validation limit, not a recommended prompt length. Keep each shot concise: preferably no more than 500 Chinese characters or 1000 English words. Longer prompts can dilute the focus and lose details. Read the live model catalog before submitting.",[10,472,473,476],{},[19,474,475],{},"480p applies to Seedance and Wan AI video only."," It is not available for Kling or new talking-avatar requests. Historical talking-avatar responses can still contain 480p.",[24,478,480],{"id":479},"estimate-ai-video-credits-and-cost","Estimate AI video credits and cost",[10,482,483,484,487],{},"Generation is billed in credits, charged at submit time and ",[19,485,486],{},"automatically refunded in full if generation fails",". Cost depends on model, resolution, and duration (per second). Query the cost endpoint before submitting — it applies exactly the same formula as billing:",[190,489,491],{"className":192,"code":490,"language":194,"meta":195,"style":195},"curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u002Fcost?model_id=seedance-2.0&duration_sec=8&resolution=1080p\"\n",[56,492,493],{"__ignoreMap":195},[199,494,495,497,499,501,503,505,507],{"class":201,"line":202},[199,496,206],{"class":205},[199,498,210],{"class":209},[199,500,213],{"class":209},[199,502,217],{"class":216},[199,504,221],{"class":220},[199,506,224],{"class":216},[199,508,509],{"class":216}," \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u002Fcost?model_id=seedance-2.0&duration_sec=8&resolution=1080p\"\n",[190,511,513],{"className":241,"code":512,"language":243,"meta":195,"style":195},"{\n  \"data\": {\n    \"credit\": 64\n  }\n}\n",[56,514,515,519,525,534,538],{"__ignoreMap":195},[199,516,517],{"class":201,"line":202},[199,518,250],{"class":220},[199,520,521,523],{"class":201,"line":253},[199,522,256],{"class":209},[199,524,259],{"class":220},[199,526,527,530,532],{"class":201,"line":262},[199,528,529],{"class":209},"    \"credit\"",[199,531,268],{"class":220},[199,533,298],{"class":209},[199,535,536],{"class":201,"line":277},[199,537,304],{"class":220},[199,539,540],{"class":201,"line":290},[199,541,310],{"class":220},[10,543,544,545,548],{},"Reference media and ",[56,546,547],{},"generate_audio"," do not change the credit price. Current per-second rates include:",[29,550,551,570],{},[32,552,553],{},[35,554,555,558,561,564,567],{},[38,556,557],{},"Model",[38,559,560],{},"480p",[38,562,563],{},"720p",[38,565,566],{},"1080p",[38,568,569],{},"4k",[48,571,572,589,604,618,632,646,660],{},[35,573,574,577,580,583,586],{},[53,575,576],{},"Seedance 2.5",[53,578,579],{},"3",[53,581,582],{},"6",[53,584,585],{},"14",[53,587,588],{},"—",[35,590,591,594,597,599,602],{},[53,592,593],{},"Seedance 2.0",[53,595,596],{},"2",[53,598,579],{},[53,600,601],{},"Query cost endpoint",[53,603,588],{},[35,605,606,609,612,614,616],{},[53,607,608],{},"Seedance 2.0 Fast \u002F Mini",[53,610,611],{},"1",[53,613,596],{},[53,615,588],{},[53,617,588],{},[35,619,620,623,625,627,630],{},[53,621,622],{},"Wan 3.0",[53,624,611],{},[53,626,596],{},[53,628,629],{},"5",[53,631,588],{},[35,633,634,637,639,641,644],{},[53,635,636],{},"Wan 3.0 Prime",[53,638,596],{},[53,640,579],{},[53,642,643],{},"7",[53,645,588],{},[35,647,648,651,653,655,657],{},[53,649,650],{},"Kling 3.0",[53,652,588],{},[53,654,596],{},[53,656,579],{},[53,658,659],{},"8",[35,661,662,665,667,669,671],{},[53,663,664],{},"Kling 3.0 Omni",[53,666,588],{},[53,668,596],{},[53,670,579],{},[53,672,588],{},[10,674,675,676,679],{},"Use the cost endpoint for the current quote rather than caching this table indefinitely. Check your remaining balance with ",[56,677,678],{},"GET \u002Fapi\u002Fv1\u002Fbilling\u002Fcredits",".",[24,681,683],{"id":682},"image-video-and-audio-inputs","Image, video, and audio inputs",[10,685,686,687,690,691,690,694,697,698,701],{},"Every media slot (",[56,688,689],{},"first_frame",", ",[56,692,693],{},"end_frame",[56,695,696],{},"refs[]",") accepts ",[19,699,700],{},"exactly one"," of three forms:",[29,703,704,717],{},[32,705,706],{},[35,707,708,711,714],{},[38,709,710],{},"Form",[38,712,713],{},"Example",[38,715,716],{},"Use when",[48,718,719,734,749],{},[35,720,721,726,731],{},[53,722,723],{},[56,724,725],{},"url",[53,727,728],{},[56,729,730],{},"{\"url\": \"https:\u002F\u002Fyour.site\u002Fimg.jpg\"}",[53,732,733],{},"One-off use; fetched by our servers, not added to your asset library",[35,735,736,741,746],{},[53,737,738],{},[56,739,740],{},"inline_data",[53,742,743],{},[56,744,745],{},"{\"inline_data\": {\"mime_type\": \"image\u002Fpng\", \"data\": \"\u003Cbase64>\"}}",[53,747,748],{},"One-off use, no public URL available",[35,750,751,756,761],{},[53,752,753],{},[56,754,755],{},"asset_id",[53,757,758],{},[56,759,760],{},"{\"asset_id\": \"YOUR_ASSET_ID\"}",[53,762,763],{},"Reused materials — upload once via the Assets API, reference many times",[10,765,766],{},"The following media limits describe Seedance inputs. Wan and Kling have model-specific limits; read the capability sheet before uploading.",[29,768,769,785],{},[32,770,771],{},[35,772,773,776,779,782],{},[38,774,775],{},"Kind",[38,777,778],{},"Max size",[38,780,781],{},"Formats",[38,783,784],{},"Constraints",[48,786,787,801,815],{},[35,788,789,792,795,798],{},[53,790,791],{},"Image",[53,793,794],{},"30 MB",[53,796,797],{},"jpg, jpeg, png, webp, bmp, tiff, gif",[53,799,800],{},"300–6000 px per side, aspect ratio between 1:2.5 and 2.5:1",[35,802,803,806,809,812],{},[53,804,805],{},"Video",[53,807,808],{},"100 MB",[53,810,811],{},"mp4, mov",[53,813,814],{},"2–15 s, 300–6000 px, 24–60 fps, aspect ratio 1:2.5–2.5:1",[35,816,817,820,823,826],{},[53,818,819],{},"Audio",[53,821,822],{},"15 MB",[53,824,825],{},"wav, mp3",[53,827,828],{},"2–15 s; cannot be the only reference",[24,830,832],{"id":831},"configure-an-ai-video-request","Configure an AI video request",[10,834,835,838,839,841,842,844,845,848,849,852,853,856,857,859,860,862],{},[56,836,837],{},"POST \u002Fapi\u002Fv1\u002Fai_video"," has two modes on one endpoint: provide ",[56,840,689],{}," (optionally ",[56,843,693],{},") for ",[19,846,847],{},"image-to-video",", provide ",[56,850,851],{},"refs"," for ",[19,854,855],{},"reference-guided"," text-to-video (character consistency, style, motion, or voice references), or provide neither for pure text-to-video. ",[56,858,851],{}," and ",[56,861,689],{}," are mutually exclusive. Unknown fields and unsupported values are rejected — nothing is silently ignored.",[29,864,865,878],{},[32,866,867],{},[35,868,869,872,875],{},[38,870,871],{},"Field",[38,873,874],{},"Required",[38,876,877],{},"Description",[48,879,880,892,904,917,929,940,951,965,976,989],{},[35,881,882,886,889],{},[53,883,884],{},[56,885,358],{},[53,887,888],{},"yes",[53,890,891],{},"See Models above",[35,893,894,899,901],{},[53,895,896],{},[56,897,898],{},"prompt",[53,900,888],{},[53,902,903],{},"Text prompt, up to 20000 characters for Wan, 5000 for Seedance, and 2500 for Kling",[35,905,906,911,914],{},[53,907,908],{},[56,909,910],{},"client_request_id",[53,912,913],{},"no",[53,915,916],{},"Idempotency key; resubmitting the same value within 24h returns the original task instead of charging again",[35,918,919,924,926],{},[53,920,921],{},[56,922,923],{},"duration_sec",[53,925,913],{},[53,927,928],{},"Defaults to the model default",[35,930,931,936,938],{},[53,932,933],{},[56,934,935],{},"aspect_ratio",[53,937,913],{},[53,939,928],{},[35,941,942,947,949],{},[53,943,944],{},[56,945,946],{},"resolution",[53,948,913],{},[53,950,928],{},[35,952,953,957,959],{},[53,954,955],{},[56,956,547],{},[53,958,913],{},[53,960,961,962],{},"Native audio on the output; default ",[56,963,964],{},"true",[35,966,967,971,973],{},[53,968,969],{},[56,970,689],{},[53,972,913],{},[53,974,975],{},"Image media object; switches to image-to-video",[35,977,978,982,984],{},[53,979,980],{},[56,981,693],{},[53,983,913],{},[53,985,986,987],{},"Image for the last frame; requires ",[56,988,689],{},[35,990,991,995,997],{},[53,992,993],{},[56,994,851],{},[53,996,913],{},[53,998,999,1000,690,1003,1006,1007],{},"Model-specific: check ",[56,1001,1002],{},"refs.max",[56,1004,1005],{},"refs.max_per_kind",", and ",[56,1008,1009],{},"refs.total_duration_sec_max",[1011,1012,1014],"h3",{"id":1013},"model-specific-input-combinations","Model-specific input combinations",[1016,1017,1018,1032,1045,1055],"ul",{},[1019,1020,1021,1022,1025,1026,1028,1029,1031],"li",{},"Wan: up to 10 image, 5 video, and 5 audio references, also subject to the discovered total limit. Video and audio reference durations are each limited to 15 seconds in total; an individual longer reference is clipped to its first 15 seconds. Exceeding the aggregate limit returns ",[56,1023,1024],{},"37104",". Combining ",[56,1027,851],{}," with an explicit ",[56,1030,935],{}," returns 400.",[1019,1033,1034,1035,1038,1039,1041,1042,1044],{},"Kling 3.0: ",[56,1036,1037],{},"refs.max=0","; image-to-video accepts ",[56,1040,689],{},", but an explicit ",[56,1043,935],{}," in that mode returns 400.",[1019,1046,1047,1048,1050,1051,1054],{},"Kling 3.0 Omni: no ",[56,1049,689],{},"; up to 7 image\u002Fvideo references. If refs contain video, set ",[56,1052,1053],{},"generate_audio=false","; otherwise the request returns 400.",[1019,1056,1057,1058,1060,1061,859,1063,1065,1066,1068,1069,679],{},"Use ",[56,1059,689],{}," only when discovery declares image-to-video support. Always keep ",[56,1062,689],{},[56,1064,851],{}," mutually exclusive; ",[56,1067,693],{}," requires ",[56,1070,689],{},[10,1072,1073],{},"Image-to-video with first and last frame:",[190,1075,1077],{"className":192,"code":1076,"language":194,"meta":195,"style":195},"curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" -H \"Content-Type: application\u002Fjson\" -d '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The scene slowly comes alive, gentle camera push-in\", \"first_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fstart.jpg\"}, \"end_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fend.jpg\"}, \"duration_sec\": 6}' https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\n",[56,1078,1079],{"__ignoreMap":195},[199,1080,1081,1083,1085,1087,1089,1091,1093,1095,1097,1099,1102],{"class":201,"line":202},[199,1082,206],{"class":205},[199,1084,210],{"class":209},[199,1086,213],{"class":209},[199,1088,217],{"class":216},[199,1090,221],{"class":220},[199,1092,224],{"class":216},[199,1094,213],{"class":209},[199,1096,229],{"class":216},[199,1098,232],{"class":209},[199,1100,1101],{"class":216}," '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The scene slowly comes alive, gentle camera push-in\", \"first_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fstart.jpg\"}, \"end_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fend.jpg\"}, \"duration_sec\": 6}'",[199,1103,238],{"class":216},[10,1105,1106],{},"Character-consistent generation with a reusable asset:",[190,1108,1110],{"className":192,"code":1109,"language":194,"meta":195,"style":195},"curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" -H \"Content-Type: application\u002Fjson\" -d '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The same woman walks through a neon-lit street at night\", \"refs\": [{\"asset_id\": \"YOUR_ASSET_ID\"}], \"duration_sec\": 10}' https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\n",[56,1111,1112],{"__ignoreMap":195},[199,1113,1114,1116,1118,1120,1122,1124,1126,1128,1130,1132,1135],{"class":201,"line":202},[199,1115,206],{"class":205},[199,1117,210],{"class":209},[199,1119,213],{"class":209},[199,1121,217],{"class":216},[199,1123,221],{"class":220},[199,1125,224],{"class":216},[199,1127,213],{"class":209},[199,1129,229],{"class":216},[199,1131,232],{"class":209},[199,1133,1134],{"class":216}," '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The same woman walks through a neon-lit street at night\", \"refs\": [{\"asset_id\": \"YOUR_ASSET_ID\"}], \"duration_sec\": 10}'",[199,1136,238],{"class":216},[24,1138,1140],{"id":1139},"poll-ai-video-generation-status","Poll AI video generation status",[10,1142,1143,1144,1147,1148,1151,1152,1155],{},"Query one task with ",[56,1145,1146],{},"?video_id=",", or up to 20 at once with ",[56,1149,1150],{},"?video_ids=id1,id2,..."," (batch responses return ",[56,1153,1154],{},"{\"videos\": [...]}","). Poll every 5–10 seconds.",[29,1157,1158,1168],{},[32,1159,1160],{},[35,1161,1162,1165],{},[38,1163,1164],{},"status",[38,1166,1167],{},"Meaning",[48,1169,1170,1180,1190,1207],{},[35,1171,1172,1177],{},[53,1173,1174],{},[56,1175,1176],{},"queued",[53,1178,1179],{},"Accepted, waiting for a worker",[35,1181,1182,1187],{},[53,1183,1184],{},[56,1185,1186],{},"creating",[53,1188,1189],{},"Generating",[35,1191,1192,1197],{},[53,1193,1194],{},[56,1195,1196],{},"created",[53,1198,1199,1200,859,1203,1206],{},"Done — ",[56,1201,1202],{},"video_url",[56,1204,1205],{},"cover_url"," are ready",[35,1208,1209,1214],{},[53,1210,1211],{},[56,1212,1213],{},"failed",[53,1215,1216,1217,1220],{},"Generation failed — see ",[56,1218,1219],{},"error","; credits were refunded automatically",[10,1222,1223,1224,1226,1227,1230,1231,1234,1235,1237],{},"Seedance moderation is asynchronous: a rejected task resolves to ",[56,1225,1213],{}," and is refunded. Wan and Kling can reject content synchronously with HTTP 403 and code ",[56,1228,1229],{},"37110"," (prompt) or ",[56,1232,1233],{},"37111"," (image), without charging. Always handle both submission errors and the ",[56,1236,1213],{}," task state.",[10,1239,1240,1241,1243],{},"Failed generation refunds credits in full. The API does not automatically switch to a different model after failure; returned ",[56,1242,358],{}," identifies the actual model.",[24,1245,1247],{"id":1246},"list-and-delete-ai-videos","List and delete AI videos",[10,1249,1250,1253,1254,1257,1258,1261,1262,1265,1266,1269,1270,1273],{},[56,1251,1252],{},"GET \u002Fapi\u002Fv1\u002Fai_videos"," lists your tasks, newest first. Pass ",[56,1255,1256],{},"cursor"," from the previous page's ",[56,1259,1260],{},"next_cursor"," to paginate; ",[56,1263,1264],{},"next_cursor=0"," means no more pages. ",[56,1267,1268],{},"limit"," defaults to 20 (max 100). ",[56,1271,1272],{},"DELETE \u002Fapi\u002Fv1\u002Fai_video?video_id="," deletes a task — only your own.",[10,1275,1276,1277,1279,1280,690,1282,690,1284,1286,1287,1289],{},"Use the optional ",[56,1278,1164],{}," query parameter to filter by one or more comma-separated values: ",[56,1281,1176],{},[56,1283,1186],{},[56,1285,1196],{},", or ",[56,1288,1213],{},". Omitting it keeps the existing unfiltered behavior; an unknown status returns HTTP 400.",[1011,1291,1293],{"id":1292},"check-ai-video-concurrency-before-submitting","Check AI video concurrency before submitting",[10,1295,1296,1297,1302,1303,1306],{},"Query ",[1298,1299,1301],"a",{"href":1300},"\u002Freference\u002Fai-videos\u002Fget-ai-videos","in-flight AI video tasks"," with ",[56,1304,1305],{},"status=queued,creating",":",[190,1308,1310],{"className":192,"code":1309,"language":194,"meta":195,"style":195},"visionstory ai-videos --status queued,creating --limit 100\n",[56,1311,1312],{"__ignoreMap":195},[199,1313,1314,1317,1320,1323,1326,1329],{"class":201,"line":202},[199,1315,1316],{"class":205},"visionstory",[199,1318,1319],{"class":216}," ai-videos",[199,1321,1322],{"class":209}," --status",[199,1324,1325],{"class":216}," queued,creating",[199,1327,1328],{"class":209}," --limit",[199,1330,1331],{"class":209}," 100\n",[190,1333,1337],{"className":1334,"code":1335,"language":1336,"meta":195,"style":195},"language-python shiki shiki-themes github-light github-dark","page = client.list_ai_videos(status=\"queued,creating\", limit=100)\nprint(page)\n","python",[56,1338,1339,1371],{"__ignoreMap":195},[199,1340,1341,1344,1348,1351,1354,1356,1359,1361,1363,1365,1368],{"class":201,"line":202},[199,1342,1343],{"class":220},"page ",[199,1345,1347],{"class":1346},"szBVR","=",[199,1349,1350],{"class":220}," client.list_ai_videos(",[199,1352,1164],{"class":1353},"s4XuR",[199,1355,1347],{"class":1346},[199,1357,1358],{"class":216},"\"queued,creating\"",[199,1360,690],{"class":220},[199,1362,1268],{"class":1353},[199,1364,1347],{"class":1346},[199,1366,1367],{"class":209},"100",[199,1369,1370],{"class":220},")\n",[199,1372,1373,1376],{"class":201,"line":253},[199,1374,1375],{"class":209},"print",[199,1377,1378],{"class":220},"(page)\n",[10,1380,1381,1382,1384,1385,859,1388,1391,1392,1394],{},"Follow ",[56,1383,1260],{}," until it is 0 when counting tasks; a single page can undercount. The list shows current usage, not the configured limit, and does not reserve a slot. A concurrency rejection returns HTTP 429 with ",[56,1386,1387],{},"error.details.limit",[56,1389,1390],{},"error.details.in_flight",". Wait for an in-flight task to finish, refresh the list, then retry with the same ",[56,1393,910],{},". Other rate-limit errors may not include these concurrency fields.",[10,1396,1397,1400,1401,1404],{},[19,1398,1399],{},"Error-schema compatibility:"," the shared error schema currently declares ",[56,1402,1403],{},"details"," as a nullable string, while concurrency errors are documented with an object. When reading concurrency metadata, accept an object or parse a JSON-encoded string; do not assume every 429 includes these fields.",[24,1406,1408],{"id":1407},"reuse-media-with-the-assets-api","Reuse media with the Assets API",[10,1410,1411,1412,1414],{},"An asset is a reusable uploaded material: upload once, reference by ",[56,1413,755],{}," in any number of generation requests — ideal for a recurring character image, brand footage, or a voice sample. Re-uploading identical content returns the existing asset (idempotent):",[190,1416,1418],{"className":192,"code":1417,"language":194,"meta":195,"style":195},"curl -s -H \"X-API-Key: $VISIONSTORY_API_KEY\" -H \"Content-Type: application\u002Fjson\" -d '{\"url\": \"https:\u002F\u002Fyour.site\u002Fcharacter.jpg\"}' https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fasset\n",[56,1419,1420],{"__ignoreMap":195},[199,1421,1422,1424,1426,1428,1430,1432,1434,1436,1438,1440,1443],{"class":201,"line":202},[199,1423,206],{"class":205},[199,1425,210],{"class":209},[199,1427,213],{"class":209},[199,1429,217],{"class":216},[199,1431,221],{"class":220},[199,1433,224],{"class":216},[199,1435,213],{"class":209},[199,1437,229],{"class":216},[199,1439,232],{"class":209},[199,1441,1442],{"class":216}," '{\"url\": \"https:\u002F\u002Fyour.site\u002Fcharacter.jpg\"}'",[199,1444,1445],{"class":216}," https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fasset\n",[190,1447,1449],{"className":241,"code":1448,"language":243,"meta":195,"style":195},"{\n  \"data\": {\n    \"asset_id\": \"YOUR_ASSET_ID\",\n    \"kind\": \"image\",\n    \"mime\": \"image\u002Fjpeg\",\n    \"width\": 1024,\n    \"height\": 1536,\n    \"duration_sec\": 0,\n    \"created_at\": 1754270000\n  }\n}\n",[56,1450,1451,1455,1461,1473,1485,1497,1509,1521,1534,1545,1550],{"__ignoreMap":195},[199,1452,1453],{"class":201,"line":202},[199,1454,250],{"class":220},[199,1456,1457,1459],{"class":201,"line":253},[199,1458,256],{"class":209},[199,1460,259],{"class":220},[199,1462,1463,1466,1468,1471],{"class":201,"line":262},[199,1464,1465],{"class":209},"    \"asset_id\"",[199,1467,268],{"class":220},[199,1469,1470],{"class":216},"\"YOUR_ASSET_ID\"",[199,1472,274],{"class":220},[199,1474,1475,1478,1480,1483],{"class":201,"line":277},[199,1476,1477],{"class":209},"    \"kind\"",[199,1479,268],{"class":220},[199,1481,1482],{"class":216},"\"image\"",[199,1484,274],{"class":220},[199,1486,1487,1490,1492,1495],{"class":201,"line":290},[199,1488,1489],{"class":209},"    \"mime\"",[199,1491,268],{"class":220},[199,1493,1494],{"class":216},"\"image\u002Fjpeg\"",[199,1496,274],{"class":220},[199,1498,1499,1502,1504,1507],{"class":201,"line":301},[199,1500,1501],{"class":209},"    \"width\"",[199,1503,268],{"class":220},[199,1505,1506],{"class":209},"1024",[199,1508,274],{"class":220},[199,1510,1511,1514,1516,1519],{"class":201,"line":307},[199,1512,1513],{"class":209},"    \"height\"",[199,1515,268],{"class":220},[199,1517,1518],{"class":209},"1536",[199,1520,274],{"class":220},[199,1522,1524,1527,1529,1532],{"class":201,"line":1523},8,[199,1525,1526],{"class":209},"    \"duration_sec\"",[199,1528,268],{"class":220},[199,1530,1531],{"class":209},"0",[199,1533,274],{"class":220},[199,1535,1537,1540,1542],{"class":201,"line":1536},9,[199,1538,1539],{"class":209},"    \"created_at\"",[199,1541,268],{"class":220},[199,1543,1544],{"class":209},"1754270000\n",[199,1546,1548],{"class":201,"line":1547},10,[199,1549,304],{"class":220},[199,1551,1553],{"class":201,"line":1552},11,[199,1554,310],{"class":220},[10,1556,1557,1559,1560,1563,1564,1567,1568,1570,1571,1573,1574,1577],{},[56,1558,740],{}," (base64) is also accepted; size and format limits match Media inputs above. ",[56,1561,1562],{},"GET \u002Fapi\u002Fv1\u002Fassets"," lists your assets (filter by ",[56,1565,1566],{},"kind",", paginate with ",[56,1569,1256],{}," \u002F ",[56,1572,1268],{},"). ",[56,1575,1576],{},"DELETE \u002Fapi\u002Fv1\u002Fasset?asset_id="," deletes an asset — videos already generated from it are not affected.",[24,1579,1581],{"id":1580},"ai-video-api-errors","AI video API errors",[29,1583,1584,1596],{},[32,1585,1586],{},[35,1587,1588,1591,1594],{},[38,1589,1590],{},"HTTP",[38,1592,1593],{},"error.code",[38,1595,1167],{},[48,1597,1598,1608,1619,1629,1639,1649,1659,1668,1678,1688,1698,1708],{},[35,1599,1600,1603,1605],{},[53,1601,1602],{},"401",[53,1604,588],{},[53,1606,1607],{},"Missing or invalid API key",[35,1609,1610,1613,1616],{},[53,1611,1612],{},"403",[53,1614,1615],{},"30610",[53,1617,1618],{},"Active subscription required",[35,1620,1621,1623,1626],{},[53,1622,1612],{},[53,1624,1625],{},"30301",[53,1627,1628],{},"Insufficient credits",[35,1630,1631,1633,1636],{},[53,1632,1612],{},[53,1634,1635],{},"37101",[53,1637,1638],{},"Invalid input — parameter or media constraint violation",[35,1640,1641,1643,1646],{},[53,1642,1612],{},[53,1644,1645],{},"37102",[53,1647,1648],{},"Prompt too long",[35,1650,1651,1653,1656],{},[53,1652,1612],{},[53,1654,1655],{},"37103",[53,1657,1658],{},"Too many references",[35,1660,1661,1663,1665],{},[53,1662,1612],{},[53,1664,1024],{},[53,1666,1667],{},"Reference duration total exceeded",[35,1669,1670,1672,1675],{},[53,1671,1612],{},[53,1673,1674],{},"37110 \u002F 37111",[53,1676,1677],{},"Wan\u002FKling prompt or image moderation rejection; not charged",[35,1679,1680,1683,1685],{},[53,1681,1682],{},"400",[53,1684,1682],{},[53,1686,1687],{},"Rejected by the gateway (unknown model_id, media too large or unsupported, invalid asset_id)",[35,1689,1690,1693,1695],{},[53,1691,1692],{},"422",[53,1694,588],{},[53,1696,1697],{},"Malformed request body (unknown fields, missing required fields, invalid combinations)",[35,1699,1700,1703,1705],{},[53,1701,1702],{},"404",[53,1704,588],{},[53,1706,1707],{},"Video or asset not found",[35,1709,1710,1713,1715],{},[53,1711,1712],{},"429",[53,1714,588],{},[53,1716,1717],{},"Rate limited",[10,1719,1720,1721,1724,1725,1727],{},"Asynchronous failures (moderation, provider errors) never use HTTP errors — the task resolves to ",[56,1722,1723],{},"status=failed"," with an ",[56,1726,1219],{}," object, and credits are refunded automatically.",[24,1729,1731],{"id":1730},"rate-limits-storage-and-idempotency","Rate limits, storage, and idempotency",[1016,1733,1734,1740,1749,1758,1771,1777],{},[1019,1735,1736,1739],{},[19,1737,1738],{},"Concurrency:"," per-key concurrency is limited during beta; requests beyond the limit are rejected, not queued.",[1019,1741,1742,1745,1746,1748],{},[19,1743,1744],{},"Rate limit:"," 180 requests per 60 seconds per account. Use batch query (",[56,1747,111],{},") and poll at 5–10 s intervals.",[1019,1750,1751,1754,1755,1757],{},[19,1752,1753],{},"Storage:"," download ",[56,1756,1202],{}," promptly if you need long-term storage. Assets stay available until you delete them.",[1019,1759,1760,1763,1764,1766,1767,1770],{},[19,1761,1762],{},"Idempotency:"," pass a ",[56,1765,910],{}," on submit to make retries safe — resubmitting the same value within 24h returns the original task instead of creating (and charging) a new one. Without it, store the returned ",[56,1768,1769],{},"video_id"," before retrying, since a network-level retry of a successful submit creates (and charges) a new task.",[1019,1772,1773,1776],{},[19,1774,1775],{},"Webhooks"," are not available yet; polling is the supported integration pattern.",[1019,1778,1779],{},"The beta surface may gain new optional parameters and models over time; existing fields and semantics will not change incompatibly.",[24,1781,1783],{"id":1782},"related-visionstory-api-guides","Related VisionStory API guides",[1016,1785,1786,1793,1800],{},[1019,1787,1788,1792],{},[1298,1789,1791],{"href":1790},"\u002Fguides\u002Fquick-start","Quick start"," — the talking-avatar flow with the same key.",[1019,1794,1795,1799],{},[1298,1796,1798],{"href":1797},"\u002Fguides\u002Ffor-agents","For agents"," — drive AI video generation from an AI agent.",[1019,1801,1802,1806],{},[1298,1803,1805],{"href":1804},"\u002Freference","API reference"," — full schemas for every endpoint above.",[1808,1809,1810],"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);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}",{"title":195,"searchDepth":253,"depth":253,"links":1812},[1813,1814,1815,1816,1817,1818,1821,1822,1825,1826,1827,1828],{"id":26,"depth":253,"text":27},{"id":184,"depth":253,"text":185},{"id":338,"depth":253,"text":339},{"id":479,"depth":253,"text":480},{"id":682,"depth":253,"text":683},{"id":831,"depth":253,"text":832,"children":1819},[1820],{"id":1013,"depth":262,"text":1014},{"id":1139,"depth":253,"text":1140},{"id":1246,"depth":253,"text":1247,"children":1823},[1824],{"id":1292,"depth":262,"text":1293},{"id":1407,"depth":253,"text":1408},{"id":1580,"depth":253,"text":1581},{"id":1730,"depth":253,"text":1731},{"id":1782,"depth":253,"text":1783},"Generate text-to-video, image-to-video, and reference-guided AI videos with Seedance, Wan, and Kling models, cost estimates, reusable assets, polling, and error handling.","md",{},{"title":1833,"order":290},"AI Video","\u002Fguides\u002Fai-video",{"title":5,"description":1829},"guides\u002Fai-video","KxyG6WooPqTtnaZ8SAIzCRcLVHm7qzh1ias9px6iKcA","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"Content-Type: application\u002Fjson\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -d\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> '{\"model_id\": \"seedance-2.0\", \"prompt\": \"A corgi surfing at sunset, cinematic lighting\", \"duration_sec\": 8, \"aspect_ratio\": \"9:16\", \"resolution\": \"1080p\"}'\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">{\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"data\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"video_id\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"YOUR_AI_VIDEO_ID\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"status\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"queued\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"cost_credit\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">64\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">  }\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">}\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video?video_id=YOUR_AI_VIDEO_ID\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u002Fcost?model_id=seedance-2.0&#x26;duration_sec=8&#x26;resolution=1080p\"\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">{\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"data\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"credit\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">64\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">  }\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">}\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"Content-Type: application\u002Fjson\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -d\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The scene slowly comes alive, gentle camera push-in\", \"first_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fstart.jpg\"}, \"end_frame\": {\"url\": \"https:\u002F\u002Fyour.site\u002Fend.jpg\"}, \"duration_sec\": 6}'\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"Content-Type: application\u002Fjson\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -d\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> '{\"model_id\": \"seedance-2.0\", \"prompt\": \"The same woman walks through a neon-lit street at night\", \"refs\": [{\"asset_id\": \"YOUR_ASSET_ID\"}], \"duration_sec\": 10}'\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fai_video\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">visionstory\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> ai-videos\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> --status\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> queued,creating\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> --limit\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> 100\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">page \u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\"> client.list_ai_videos(\u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">status\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"queued,creating\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">, \u003C\u002Fspan>\u003Cspan style=\"color:#FFA657\">limit\u003C\u002Fspan>\u003Cspan style=\"color:#FF7B72\">=\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">100\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#79C0FF\">print\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">(page)\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#FFA657\">curl\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -s\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"X-API-Key: \u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">$VISIONSTORY_API_KEY\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -H\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> \"Content-Type: application\u002Fjson\"\u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\"> -d\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> '{\"url\": \"https:\u002F\u002Fyour.site\u002Fcharacter.jpg\"}'\u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\"> https:\u002F\u002Fopenapi.visionstory.ai\u002Fapi\u002Fv1\u002Fasset\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\u003Cpre class=\"shiki github-dark-default\" style=\"background-color:#0d1117;color:#e6edf3\" tabindex=\"0\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">{\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">  \"data\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: {\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"asset_id\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"YOUR_ASSET_ID\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"kind\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"image\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"mime\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#A5D6FF\">\"image\u002Fjpeg\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"width\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">1024\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"height\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">1536\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"duration_sec\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">0\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#7EE787\">    \"created_at\"\u003C\u002Fspan>\u003Cspan style=\"color:#E6EDF3\">: \u003C\u002Fspan>\u003Cspan style=\"color:#79C0FF\">1754270000\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">  }\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#E6EDF3\">}\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>",1790231923839]