Skip to Content
接口文档视频下载接口

视频下载接口(Video Download)

GET https://ai.amaxsmp.com/v1/videos/{task_id}/content

下载已完成任务的视频文件,由网关获取并返回视频二进制流。通常为 MP4,实际文件类型以响应的 Content-Type 为准。

下载条件

  • 任务必须已生成成功,后端任务状态为 SUCCESS
  • 使用 API Key 鉴权,只能下载当前用户所属任务的视频,建议使用提交任务时的 API Key。
  • 任务结果必须仍可获取;任务成功不代表上游视频地址永久有效。

先通过视频任务查询确认生成完成。部分 Veo 查询响应使用 succeeded 表示成功。

请求示例

cURL

task_example 替换为视频生成接口返回的任务 ID。

curl -L --fail \ -H "Authorization: Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \ "https://ai.amaxsmp.com/v1/videos/task_example/content" \ -o generated.mp4

-o 将响应保存为文件,--fail 在 HTTP 错误时返回失败,避免把错误响应当成视频保存。

Python(requests)

安装依赖:pip install requests。示例分块写入文件,避免一次性将整个视频加载到内存。

import requests task_id = "task_example" with requests.get( f"https://ai.amaxsmp.com/v1/videos/{task_id}/content", headers={"Authorization": "Bearer sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}, stream=True, timeout=120, ) as response: response.raise_for_status() content_type = response.headers.get("Content-Type", "").lower() if "json" in content_type or "text/" in content_type: raise RuntimeError("Expected video content; check the response and gateway configuration") with open("generated.mp4", "wb") as output: for chunk in response.iter_content(chunk_size=1024 * 1024): if chunk: output.write(chunk)

请求参数

参数位置类型必填说明
task_id路径string已完成的视频任务 ID
Authorization请求头stringBearer YOUR_API_KEY

无需请求体,无需设置 JSON Content-Type

成功响应

HTTP/1.1 200 OK Content-Type: video/mp4

响应体为视频文件二进制内容,不包含 dataurl 等 JSON 字段。上面以 MP4 为例,实际类型由视频来源决定。

错误响应

例如,任务仍在生成时返回 HTTP 400:

{ "error": { "message": "Task is not completed yet, current status: IN_PROGRESS", "type": "invalid_request_error" } }
HTTP 状态码错误类型说明
400invalid_request_error任务尚未成功,请继续查询状态
401以鉴权响应为准缺少、无效或已过期的 API Key
404invalid_request_error任务不存在或不属于当前用户
403server_error视频来源地址被网关访问规则拦截
502server_error无法获取视频,例如结果地址为空、上游不可用或链接失效
500server_error查询任务、读取渠道信息或创建代理请求失败

网关说明

此接口已在后端实现。当前公共网关的二进制转发链路尚未完成验证;若下载返回 JSON、文本或文件无法播放,请保留任务 ID 联系支持,也可使用查询响应中的可访问 result_urlurl 获取视频。详细流程见视频任务查询