调用Vidu API生成视频,并非仅需点击按钮——你必须通过标准HTTP POST请求向服务端提交结构化参数,携带合法认证、正确地域的Endpoint、完整的JSON请求体,并配合异步轮询机制,缺一不可。下面将整个流程逐一拆解说明。

获取API Key与确认地域绑定
登录Vidu控制台后,务必在“中国内地(北京)”地域下创建API Key。其他地域的密钥无法正常调用,跨地域请求会直接返回403错误。具体操作分为三步:
第一步:访问Vidu控制台,使用已通过Beta审核的账号进行登录。
第二步:在“API密钥管理”页面,必须选择地域为中国内地(北京),点击“创建密钥”生成并复制新的Key。
第三步:进入阿里云百炼控制台,搜索“Vidu”,确认模型卡片已开通,且开通地域与API Key地域严格保持一致。
构造并发送POST请求
请求必须发送至北京地域专属的Endpoint,Header中携带Bearer令牌,Body为JSON格式。字段缺失或类型错误将收到400响应。常用的两种方式如下:
方法一:curl命令行直接调用(适合调试)
执行以下命令,请将 YOUR_API_KEY_HERE 和 prompt 替换为你的实际内容:
curl -X POST "https://api.vidu.studio/v1/video/generate" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY_HERE" \
-H "X-Vidu-Quantity: 1" \
-d '{"prompt":"一只橘猫在窗台晒太阳,阳光透过纱帘洒在毛尖上","duration":4,"resolution":"1080P","model_version":"q3"}'
方法二:Python脚本调用(推荐生产环境使用)
先安装依赖:pip install requests
然后运行脚本,注意必须确保 requests.post() 的 url、headers、json data 三者全部与北京地域配置一致,任何一项不匹配都会导致失败。
轮询获取生成结果
Vidu API采用异步模式——POST成功仅返回一个 task_id,视频不会立即生成。你需要主动轮询状态,直至完成。具体流程如下:
① 从上一步响应JSON中提取 task_id 字段的值;
② 向 https://api.vidu.studio/v1/video/task/{task_id} 发起GET请求,Header携带相同的Authorization;
③ 检查响应中 status 字段:若为 processing,等待2秒后重试;若为 success,提取 video_url 下载MP4文件;若为 failed,读取 error_message 定位问题原因。
此步骤不可跳过——直接访问 video_url 会返回404,必须等到 status 变为 success 才有效。
