简短回答
根据当前公开的 Seedance 2.0 API 文档,接口提供了“创建任务”和“查询任务状态”能力,但没有提供任务取消或删除接口。 创建任务成功后,接口会返回一个task_id。客户端超时、网络中断、关闭网页或停止轮询,都不能作为“任务已经取消”的依据。遇到这类情况,应先查询原任务状态,再决定是否重试,避免重复创建任务。
当前公开接口和任务状态
Seedance 2.0 当前使用异步任务接口:
任务状态通常按以下流程变化:
queued:任务已创建,正在排队。running:任务正在处理。succeeded:视频生成成功。failed:任务处理失败。expired:任务超过有效执行时间,进入过期状态。
任务提交后应该怎么处理?
第一步:保存 task_id 和请求信息
创建请求成功后,应立即保存返回的task_id。
同时建议记录以下信息:
- 模型名称;
- 提示词或提示词摘要;
- 视频时长、分辨率、比例等主要参数;
- 提交时间;
- request ID;
- 业务系统中的业务 ID。
第二步:查询原任务状态
Seedance 2.0 是分钟级异步任务。当前 API 文档建议:- 提交后等待约 20–30 秒,再进行第一次查询;
- 后续每隔 10–20 秒查询一次;
- 不要因为短时间内没有返回视频就立即重新提交。
YOUR_TASK_ID:创建任务接口返回的任务 ID;YOUR_API_KEY:API易控制台创建的 API Key。
第三步:根据任务状态处理
查询到不同状态后,可以按照以下方式处理:- 如果状态是
queued,说明任务仍在排队,继续等待并查询。 - 如果状态是
running,说明任务正在生成,继续等待并查询。 - 如果状态是
succeeded,从content.video_url获取视频并立即下载。 - 如果状态是
failed,查看响应中的error信息。 - 如果状态是
expired,查看任务详情和调用日志,确认任务过期原因。
queued 或 running 当成失败,也不要因为任务尚未完成就重复创建任务。
第四步:客户端超时后先确认任务状态
如果客户端没有收到完整响应,先不要直接重试。 建议按照以下顺序排查:- 检查客户端响应中是否已经返回
task_id。 - 检查控制台调用日志中是否已经记录任务。
- 如果已经有
task_id,优先查询原任务。 - 如果暂时没有找到
task_id,不要仅凭网络错误判断任务一定没有创建。 - 如果无法确认任务是否创建,再联系客服核查后重试。
如何避免重复提交?
以下内容属于接入侧的工程实践,不是平台强制规则:- 为每次业务请求生成唯一的业务 ID。
- 保存业务 ID 与 Seedance
task_id的对应关系。 - 用户点击提交后,暂时禁用重复提交按钮。
- 客户端超时或进程退出后,优先恢复查询原任务。
- 保存提示词、模型、时长、比例和参考素材等请求信息。
- 只有在确认原任务不存在或已经明确失败后,再考虑是否重新提交。
- 轮询程序应区分处理中状态和终态,不要把
queued、running当成失败。
重复提交后如何核对扣费?
Seedance 2.0 当前文档说明,计费采用:InvalidParameter 类型的 HTTP 400 请求,当前文档说明不计费。
但以下情况不能仅凭一个状态直接判断是否扣费:
- 客户端 timeout;
- 网络断开;
failed;expired;- 客户端没有收到完整响应;
- 客户端显示请求失败,但服务端可能已经创建任务。
- 所有相关的 Seedance
task_id; - 对应的 request ID;
- 提交时间;
- 模型名称;
- 主要请求参数;
- 控制台调用日志;
- 账单或扣费记录截图。
不建议直接根据
failed、expired 或客户端 timeout 判断“一定扣费”或“一定不扣费”。常见问题
我停止轮询后,Seedance 任务会自动停止吗?
不能这样判断。 停止轮询只表示客户端不再继续查询任务状态。当前公开 API 文档没有提供取消接口,因此客户端停止轮询不等于已经取消服务端任务。 请保存原来的task_id,稍后继续查询。
请求超时后可以直接重试吗?
不建议直接重试。 应先检查:- 响应中是否包含
task_id; - 控制台调用日志中是否已经有任务记录;
- 原任务当前是什么状态;
- 是否已经产生对应的计费记录。
任务显示 failed 或 expired,一定不会扣费吗?
不能仅凭任务状态判断费用结果。 Seedance 2.0 使用提交预扣、完成后结算的计费方式。请同时查看调用日志和账单记录。如果发现费用记录异常,请提供任务 ID 和 request ID 联系客服核查。参数错误导致 HTTP 400 会扣费吗?
当前文档说明,因参数错误被拒、且未创建任务的请求不计费。 例如:- 参数格式错误;
- 不支持的分辨率;
- 非法的宽高比;
- 不支持的视频时长;
- 模型与参数组合不匹配。
成功后生成的视频地址可以保存多久?
当前文档说明,成功响应中的content.video_url 是临时签名地址,有效期约为 24 小时。
建议在任务变成 succeeded 后立即下载并转存,不要把该地址当作永久链接。
当前文档还说明,任务 ID 本身保存期限为 7 天。为了方便业务追踪,仍建议在自己的系统中保存任务记录。
相关文档
联系我们
如果遇到以下情况,可以联系客服协助核查:- 任务长时间停留在
queued或running; - 客户端超时后无法确认任务是否创建;
- 重复提交后出现多个任务;
- 任务状态与扣费记录不一致;
- 成功任务无法获取或下载视频。
- Seedance
task_id; - request ID;
- 提交时间;
- 模型名称;
- 主要请求参数;
- 控制台调用日志;
- 相关账单记录。