任务提交错误
视频任务处理层的错误使用顶层code、message 和 data。例如,参数校验失败的结构如下,具体文案以实际响应为准:
上游拒绝请求
不能假定提交接口的顶层code 总是上游业务错误码。上游返回非 HTTP 200 时,当前提交链路会使用 fail_to_fetch_task,并将上游响应体放在 message 字符串中。以下为结构示意:
code。当它是 fail_to_fetch_task 时,保留 message 以供排查;只有字符串可解析为 JSON 时才进一步解析,且不要假定其中的上游错误结构固定。其他响应路径可能直接返回上游业务码,但不能依赖 INVALID_CONTENT_COMBINATION 必定出现在顶层。HTTP 429 的文案还可能被替换,见下方说明。
网关参数校验
不是所有无效请求都会进入模型适配器。JSON 解析、鉴权、额度或路由阶段也可能提前报错,请读取实际返回的错误体。
参数定义见 接口说明,正确请求示例见 快速开始。
参考视频无法读取
当错误提示输入视频无法可靠获取时长时,检查素材直链是否可被网关访问、文件是否完整、媒体元数据是否可解析。不要通过随意填写duration_seconds 绕过问题;用于素材计费的时长会从视频文件核对。
鉴权等网关错误
在进入视频任务处理前,鉴权或其他中间件可能返回带error 的响应。例如:
code / message 与嵌套 error.code / error.message。部分错误还可能缺少 code,此时保留 HTTP 状态与错误描述。
下载接口 /v1/videos/{task_id}/content 的错误也使用嵌套 error,通常包含 message 和 type,不保证包含 code。
异步生成失败
创建任务成功只代表已受理。轮询返回 HTTP200 时,仍需检查 status:
failed 时停止轮询并处理错误;只有 completed 才表示生成完成。异步失败的 error.code 会优先使用可获得的上游错误码,缺少时可能回退为 failed 或 cancelled。不要用 progress 是否为 100 判断成功。
HTTP 状态与处理建议
在视频任务错误处理路径中,HTTP
429 的文案可能被统一为“当前分组上游负载已饱和,请稍后再试”。其他中间件的 429 仍可能使用不同结构和文案。