HTTP 错误

我们的 API 遵循可预测的 HTTP 错误代码格式:

  • 400 - invalid_request_error:您的请求格式或内容存在问题。对于未在下面列出的其他 4XX 状态码,我们也可能使用此错误类型。
  • 401 - authentication_error:您的 API 密钥存在问题。
  • 403 - permission_error:您的 API 密钥没有权限使用指定的资源。
  • 404 - not_found_error:未找到请求的资源。
  • 429 - rate_limit_error:您的账户已达到速率限制。
  • 500 - api_error:Anthropic 系统内部发生了意外错误。
  • 529 - overloaded_error:Anthropic 的 API 暂时过载。

当通过 SSE 接收流式响应时,可能会在返回 200 响应后发生错误,在这种情况下,错误处理不会遵循这些标准机制。

错误形状

错误始终以 JSON 形式返回,顶层有一个 error 对象,其中始终包含 typemessage 值。例如:

JSON
{
  "type": "error",
  "error": {
    "type": "not_found_error",
    "message": "未找到请求的资源。"
  }
}

根据我们的版本控制策略,我们可能会扩展这些对象中的值,并且 type 值可能会随着时间的推移而增加。