标识与鉴权
所有本站请求使用基础地址 https://top.qingyuntop.ai。请求头为 Authorization: Bearer YOUR_API_KEY,将 YOUR_API_KEY 替换为青云TOP API 的 API Key,保留 Bearer 后的一个空格。无需额外登录接口,也不需要 Vidu 厂商 Token。
创建接口返回 id 和 metadata.task_id。将下面示例中的 RESPONSE_ID 替换为 id,将 TASK_ID 替换为 metadata.task_id。不要靠前缀猜测它们之间的转换关系。
| 用途 | 方法与地址 | 使用的标识 |
|---|---|---|
| 查询响应 | GET https://top.qingyuntop.ai/v1/responses/{response_id} | 创建返回的 id |
| 列出产物 | GET https://top.qingyuntop.ai/v1/tasks/{task_id}/artifacts | metadata.task_id |
| 下载视频产物 | GET https://top.qingyuntop.ai/v1/tasks/{task_id}/artifacts/video/content | metadata.task_id,产物 key 为 video |
查询示例
点击标签切换 cURL、Python 或 Node.js。cURL 为 Bash 写法;Python 需安装 requests;Node.js 使用 18 或更新版本(含导入语句时保存为 .mjs)。图片示例使用 Vidu 官方示例素材,也可换成你自己的公开可访问图片 URL。
curl --fail-with-body "https://top.qingyuntop.ai/v1/responses/RESPONSE_ID" \
-H "Authorization: Bearer YOUR_API_KEY"根据响应 status 决定下一步:queued/in_progress 继续等待;completed 检查结果并下载;failed 读取 error;incomplete 需结合 incomplete_details 和 metadata.task_status 继续查询同一响应。
建议每 5–10 秒查询一次,遇限流退避并设置业务等待上限。响应等待结束、连接断开或客户端超时均不能直接视为视频任务失败。
成功输出
完成后在 output[] 中找到 message,再在其 content[] 中读取 type: "output_text" 的 text。返回的是包含视频预览的文本;成功元数据含 vendor: "vidu"。不要期待它返回统一视频格式中的 object=video,也不要对 JSON 响应直接保存为 MP4。
列出产物
curl --fail-with-body "https://top.qingyuntop.ai/v1/tasks/TASK_ID/artifacts" \
-H "Authorization: Bearer YOUR_API_KEY"只有任务成功且首条生成结果有有效 URL 时,接口才返回 key: "video"、type: "video" 的产物。上游返回多条 creations 时,本接口只使用第一条;此入口不提供图片或独立音频产物。
下载视频
确认产物存在后调用以下接口,响应按二进制写入 result.mp4。
curl --fail-with-body "https://top.qingyuntop.ai/v1/tasks/TASK_ID/artifacts/video/content" \
-H "Authorization: Bearer YOUR_API_KEY" \
--output result.mp4官方生成文件 URL 有效期为 24 小时,应及时保存。本站产物入口依赖上游文件,不代表永久存储。不要将 API Key 交给外部 CDN,也不要把带短期访问凭据的播放地址长期公开。
下载失败时保留两个 ID、HTTP 状态和错误正文,参考错误处理。