Skip to content

错误

所有公开失败都使用真实 HTTP 错误和一个扁平 body:

json
{
  "error": "insufficient_scope",
  "message": "This credential does not carry the required scope.",
  "request_id": "server-issued-id",
  "required": ["club.compliance.read"]
}

errormessagerequest_id 始终存在。可选字段只有 required、数字 codedetails(仅含 field/code,不含提交值)。程序只按 error 分支,不要解析 message。request id 由服务端签发;调用方提供的 id 不作为身份依据。

状态error
400invalid_request
401timestamp_out_of_windowsignature_verification_failedreplay_detectedcredential_revokedcredential_disabledcredential_expired
403source_ip_not_allowedinsufficient_scope
404not_found(workspace 类型错误和外部资源也如此)
409idempotency_key_in_progressidempotency_key_reusedidempotency_outcome_unknown
413payload_too_large(body 上限 100kb)
429rate_limit_exceeded
500internal_error

只映射明确批准的内部 INVALID_PARAMS,以及已做 workspace 围栏的安全 NOT_FOUND。其他内部、Prisma 或未知失败一律成为 internal_error,默认失败关闭,避免泄漏。

处理幂等 409 前请先读幂等