指南

正确解读 X-Quota-Used 和 X-Quota-Limit 响应头

API 的每个响应,无论成功与否,都携带一组响应头,准确描述您相对于配额所处的位置。要正确解读它们,就需要理解每一个统计的是什么。

核心的一对

X-Quota-Limit 是您当前配额的大小,可能是每日免费配额,也可能是 Unlimited 套餐下的有效上限。X-Quota-Used 是当前周期内到目前为止计入该配额的请求数。无需手动把两者相减,因为 X-Quota-Free-Remaining 已经替您算好了。

HTTP/1.1 200 OK
X-Quota-Limit: 2500
X-Quota-Used: 1840
X-Quota-Free-Remaining: 660
X-Quota-Network-Used: 1840
X-Credits-Remaining: 0.00
X-Key-IPs-Used: 1
X-Key-IPs-Limit: 3
X-Quota-Reset: 2026-09-22T00:00:00Z

密钥用量与网络用量

X-Quota-Used 反映与您的密钥绑定的用量,而 X-Quota-Network-Used 反映来自周边网络的用量,因为免费配额由同一 /24 中的所有 IPv4 地址和同一 /48 中的所有 IPv6 地址共享,无论是否使用密钥。如果同一个密钥从同一地址块后面的多台服务器调用,网络数值的增长速度会超过任何一台服务器根据自身流量所预期的速度。

IP 名额的一对

X-Key-IPs-Used 和 X-Key-IPs-Limit 描述的是完全不同的东西:最近有多少个不同的来源地址使用过这个密钥,对照的是每个密钥允许两到三个地址的滚动上限。从单台服务器调用的密钥,这里会稳定显示 1。在多台互不相关的服务器之间共享的密钥,或者被复制到最终在许多机器上运行的脚本中的密钥,则会逐渐接近上限。这一点值得与请求配额分开监控,因为即使还剩大量免费请求,它也可能导致密钥被拦截。

额度与重置时间

当您已超出免费配额、开始按每次请求 €0.0001 使用额度时,X-Credits-Remaining 会显示您的预付余额。X-Quota-Reset 准确告诉您当前的每日配额何时重置,这比根据自己的时钟假设一个固定时间更可靠。

基于这些响应头可以构建什么

一个仪表板、一条告警,或者只是在每次调用后读取这些响应头的一行日志,就能让您实时掌握用量,而无需单独的报表调用,因为这些数字就随着您已经发出的请求的响应一起到达。读取它们不会产生任何额外费用,因为无论请求成功还是返回错误,它们都会随您本来就在发送的每个请求一起返回。

值得避免的错误

只在出问题时才读取这些响应头,意味着您会和您的用户在同一时刻发现配额问题。至少定期记录 X-Quota-Free-Remaining 和 X-Credits-Remaining,或者在低流量的集成中每次调用后都记录,这样向上限缓慢逼近的过程就会在仪表板中表现为一种趋势,而不是突然出现的一批 429 响应。

在每个响应上读取配额响应头,而不是等到出现 429 才注意到问题,这就是从容放缓与措手不及之间的区别。完整的响应头列表记录在速率限制页面