浏览全部文档

错误与配额

按 HTTP 状态和稳定的机器可读代码处理 Narwhal 问题。

REST 错误 使用 application/problem+json。MCP 工具错误的结构化内容包含相同的问题字段。

问题响应

分支依据 status 首先以及 code 秒。将 detail 作为便于人类阅读的诊断文本,而不是稳定的程序值。

RFC 9457 问题详情
{
  "ok": false,
  "type": "https://narwhalapi.com/problems/series-not-found",
  "title": "Economics series not found",
  "status": 404,
  "detail": "No approved economics observations matched the request.",
  "code": "series_not_found",
  "request_id": "019d1af4-8f33-7b21-91af-ef535f2dcf50",
  "instance": "/v1/economics/USA/cpi"
}

状态与代码

状态公开code含义
400invalid_query国家、期间或其他请求输入无效。
401invalid_api_keyBearer 密钥缺失、格式错误、未知或未激活。
404series_not_found没有已批准的当前或历史观测值符合请求。
404route_not_found请求的REST路由不存在。
404tool_not_found请求的 MCP 工具不是公共工具,或不存在。
405method_not_allowed该路由存在,但不接受请求的HTTP方法。
429rate_limit_exceeded已达到网络或账户短时窗口限制;请在此时间后重试: Retry-After.
429quota_exhausted该账户已用完月度请求额度。
500internal_errorNarwhal 无法完成请求。
503api_disabled公共数据入口暂时关闭。
503economics_unavailableNarwhal 无法安全地根据已接受的官方发布满足请求。
503database_unavailable数据存储暂时不可用。
503rights_state_changingNarwhal 无法完成请求。

配额标头

每次成功的数据响应恰好消耗一次配额,并包含:

X-Request-IDX-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-ResetX-RateLimit-Short-LimitX-RateLimit-Short-RemainingX-RateLimit-Short-Reset

常规请求头描述 3,000次请求的 UTC 自然月额度。对于已认证的响应,短时窗口标头描述的免费账户限额为 30 每分钟请求数,突发容量为 5。独立的滥用防护限流桶允许每个网络身份每分钟请求 120 次,突发容量为 20,因此共享同一地址的客户端可能一起受到限流。 429 rate_limit_exceeded 包括 Retry-After 适用于限制性的短时窗口;一个 429 quota_exhausted 等待下一个 UTC 日历月。两个响应都不消耗月度额度。

重试行为

  • 不要重试 400 直到请求得到更正。
  • 不要重试 401 使用同一个被拒绝的密钥。
  • 重试 429 只有在 Retry-AfterX-RateLimit-Reset.
  • 在以下情况后重试幂等请求: 500503 使用有界指数退避和抖动。
  • A 404 series_not_found 可能只有在发布受支持的官方版本后才可用。

寻求帮助

发送端点、UTC 时间、状态、代码以及 request_idNarwhal API 支持。切勿提供 API 密钥。

返回 该 快速入门 或查看 Economics API 参考.