跳到正文

API 文档 · 可靠性

错误码

统一错误体与全部错误码。

所有错误使用统一结构(见右侧示例)。下表列出接口可能返回的 error.code 及其 HTTP 状态码,同一状态码可能对应多个错误码:

HTTPcode场景可重试建议
400invalid_requestJSON 格式错误、Content-Type 不是 application/json,或缺少 / 超长的 Idempotency-Key;请求体超过 1 MB 时为 413否修正请求后重发
401invalid_api_keyKey 不存在、已撤销、已过期或已停用否在控制台检查 Key 状态
401unauthenticated控制台会话未登录或已过期否重新登录
402quota_exceeded账号可用额度不足;冻结上界超过 max_budget(param 为 max_budget);素材存储空间已满否补充额度、调整 max_budget 或清理素材后重试
402key_limit_exceededKey 累计或日限额不足否调整 Key 限额后重试
403permission_deniedKey 缺少 scope、模型不在 Key 白名单,或账号未开通该模型否在控制台为 Key 增加权限,或联系运营开通模型
403csrf_failed控制台请求缺少或携带了失效的 CSRF 令牌否刷新页面后重试
403account_suspended账号已被停用否联系运营
404not_found资源不存在,或不属于你否检查 ID 是否正确
404not_available仅海外站提供的功能在本站不可用否改用对应站点
403terms_required尚未同意最新的充值须知否阅读并同意充值须知后重试
409idempotency_conflict同一幂等键,但请求体不同否为新请求使用新的幂等键
409conflict资源状态冲突否重新查询最新状态后再操作
409group_not_empty分组内仍有素材否先移走或删除分组内素材
422invalid_parameter参数不合法或组合不受支持(不会静默丢弃)否对照能力表修正参数
422asset_not_ready素材仍在处理中是等待状态变为 available 后重试
422authorization_required真人素材缺少有效授权否完成真人授权后重试
429rate_limited超出 Key 的 RPM,或账号 / Key 的并发上限是按 Retry-After 退避后重试
500internal_error平台内部错误是带同一幂等键重试

retryable 为 true 时可退避后重试;创建任务的重试必须带同一个 Idempotency-Key。

受理之后才发生的失败(例如暂时没有可用线路)不会作为接口错误返回,而是体现在任务的 error.code 中,见任务失败码。

错误响应
HTTP/1.1 422 Unprocessable Entity
X-Request-Id: req_xxx

{
  "error": {
    "code": "asset_not_ready",
    "message": "素材 asset_xxx 仍在处理中,请在状态变为 available 后重试",
    "param": "inputs[0].asset_id",
    "retryable": true,
    "request_id": "req_xxx"
  }
}