文档
03 平台04 媒体供应04_开发

MG-04-009 持久视频测试接口

管理员会话及 CSRF、内部管理 Bearer 沿用现行认证。所有测试复用 Request → Task → Attempt → Output;migration 30 只新增不可变测试元数据,不新建执行队列。固定测试不会启用 Supply,也不计入生产可靠性/健康样本。

提交与核对

POST /admin/v1/video-tests/:

{
  "operation_id": "3594d750-981d-44db-bec6-5d1a9c41293f",
  "model_id": "18c628f3-8495-4f64-a351-777c35158b40",
  "model_version": 3,
  "mode": "fixed_supply",
  "supply_id": "3d2e6eb9-943d-42e8-96f7-0b99c0baee62",
  "supply_version": 4,
  "channel_version": 2,
  "maximum_cost_cny": "10.00",
  "video": {"prompt": "海浪", "duration": 5, "resolution": "720p", "aspect_ratio": "16:9"}
}

video 使用已有 OpenAI 视频请求形状,支持受控的参考图片/视频/音频 URL;模型名称由服务端的 model_id 决定。operation_id 必须在首次提交前生成并保留;同标识同参数永久返回原任务。同标识不同版本/参数/预算返回 409,不允许因 HTTP 超时另造新操作。

  • fixed_supply:必须关联该已保存模型,核对模型、Supply、Channel 版本;允许停用草稿,原生渠道须活跃并已有凭据、能力和采购规则;只执行一次。执行前配置改动会拒绝这次执行,不悄悄采用新配置。
  • route:省略固定 Supply/Channel 字段;模型必须发布且启用,正常生产供给资格/健康/容量及降级约束保留,最多首次加一次换供给。
  • maximum_cost_cny 必填,定点金额大于 0 且不超过 1000。报价币种必须 CNY,预计成功费用加已发生费用不超过上限;这是报价准入上限,不是 Provider 账单预留或实际扣费担保。
  • 202 返回 request_id、task_id、status、replayed。任务接受、配置快照、测试身份及 outbox 同一事务落库。
  • 400 参数错误;401/403 认证/CSRF 错误;404 配置不存在;409 版本/操作冲突;422 能力/资格/健康/采购上限不匹配;429 限额或 503 准入暂不可用时复用原操作。

GET /admin/v1/video-tests/{operation_id} 查询提交未知的操作。200 返回原请求/任务/状态;404 只表示此刻尚未接受,重试仍使用原标识和原参数。查询或刷新从不再次调用 Provider Submit。

本机正式后台通过 /backend/video-tests 和 /backend/video-tests/{operation_id} 会话桥接;输入只保存在当前表单内存,sessionStorage 仅保存待核对的不透明操作标识。刷新丢失表单时先核对原操作,不能自动创建新收费任务。

记录与媒体

GET /admin/v1/records/ 支持 media_type=video|image、execution_mode=sync|async、model_id(接受时标准模型身份)、channel_id(曾执行渠道)、status、purpose=api|test、query(请求/跟踪/任务/上游任务 ID 精确匹配)、created_after / created_before(RFC3339)、limit=1..200、cursor。

响应保留 object=list、data,增加 next_cursor。按 (created_at,id) 降序稳定分页;游标不可跨筛选复用,改变筛选应清空游标。一条逻辑请求一行,Attempt 不导致重复行。

GET /admin/v1/records/{request_id} 返回目的、测试模式/上限、输入快照、任务 ID、输出、时间线及 Attempt。管理员可见报价/凭据版本 ID、预计金额、执行记录金额、已核对净额及核对时间;版本 ID 不是凭据。cost_status 区分 unknown、recorded_unverified、verified,执行记录金额不冒充已核对账单。账单/退款导入与旧历史迁移仍单列。

GET|HEAD /admin/v1/content/{output_id}?mode=proxy&download=1 复用对象归属、封存完整性及期限检查,支持单 Range、If-Range 和安全下载文件名。封存前本地 ffprobe 检查真实视频流、尺寸和时长,24 字节 MP4 头不能作为有效视频。

本机浏览器使用会话保护的同源 /backend/content/{output_id};video 不需要自定义鉴权头。后端代理每次核验管理员会话,流式转发 GET/HEAD/Range,不向浏览器暴露对象存储地址、管理 Bearer 或签名 URL。登出后的新读取返回 401,无法播放时保留同一授权下载入口。

迁移只前进。回滚程序不能删除不可变测试记录、任务或结果;旧程序无法调度新固定测试,应先停止接受并处理/保留在途任务,再回滚至明确支持该元数据的版本。

On this page