跳到主要内容

错误处理

GeniSpace API 使用标准 HTTP 状态码表示请求结果,并在响应中提供一个扁平的错误体。

HTTP 状态码

状态码含义说明
200成功请求正常处理
201已创建资源创建成功
400请求错误请求参数无效或缺失
401未认证缺少或无效的凭证
402需要付费Token 余额或配额不足
403禁止访问无权限执行该操作
404未找到请求的资源不存在
429请求过多超出每日 Token 使用上限
500服务器错误服务端内部错误

错误响应格式

错误体是扁平的——messagecodesuccess: false 一同位于顶层。不存在嵌套的 error 对象。

{
"success": false,
"message": "Validation failed: name cannot be empty",
"code": "VALIDATION_ERROR"
}

校验失败时还可能额外包含一个带字段级细节的 errors 数组。

常见错误码

错误码HTTP 状态说明
VALIDATION_ERROR400请求参数无效(express-validator 校验失败)
BAD_REQUEST400请求格式错误
UNAUTHORIZED401凭证无效或已过期
PAYMENT_ERROR400支付或计费失败
FORBIDDEN403无权限访问该资源
NOT_FOUND404资源不存在
SERVER_ERROR500服务器内部错误

Token 与计费错误

当请求因 Token 余额或配额限制无法处理时,API 会返回以下之一:

错误码HTTP 状态说明
INSUFFICIENT_TOKENS402Token 余额已耗尽
BELOW_MINIMUM_BALANCE402余额低于该操作所需的最低值
REQUEST_TOO_LARGE400请求载荷超出单次请求的 Token 上限
DAILY_LIMIT_EXCEEDED429已达到每日 Token 使用上限

错误处理建议

  1. 检查状态码:根据 HTTP 状态码判断请求是否成功
  2. 解析错误信息:读取顶层 message,并根据 code 进行分支判断以获取具体原因
  3. 重试策略:对 4295xx 错误实施退避重试
  4. 处理计费错误:将 402 响应视为需要为空间充值 Token 余额的信号
  5. 日志记录:记录错误信息便于排查问题

相关文档