Account Metrics & Usage
Account Metrics & Usage
Check your plan quota, usage, and account status with /account/metrics
GET /account/metrics returns the current usage and quota for the API
key you pass. Use it to show an in-app dashboard, set up alerting
before you run out of quota, or debug an unexpected 108 by confirming
your plan limits.
This endpoint reports plan quota: the total requests your plan
includes and how many you’ve used. It’s a different thing from the
per-minute rate limit (which is request_rate and is documented on
Rate Limiting & Errors). You can burn
through your monthly quota without ever tripping the per-minute limit,
and vice versa.
Making the call
Pass your API key as a query parameter (or as X-API-Key header) to
GET /account/metrics:
Response shape (v60)
Legacy response (v10–v50)
Older API versions split the counters into core_* (tax lookups) and
geo_* (geocoded lookups). All new keys use the v60 shape. If you’re
still on a legacy key, you’ll see:
For v60 keys the counters are unified. Every lookup counts against
request_limit, regardless of whether it was by address or by
coordinates.
Patterns
Show a usage widget in your dashboard
Poll once when the page loads, not on every render:
Alert before you run out
Check metrics on a schedule (hourly or daily is plenty) and page your team when you cross a threshold:
Debug an unexpected 108
If you’re getting 108s but your plan shouldn’t hit the rate limit,
/account/metrics can confirm your key is active and reachable.
Remember: 108s come from the per-minute request_rate, not from
request_limit, so a low usage_percent here doesn’t rule out a 108.
Check the X-RateLimit-Limit header on the 108 response instead.
Authentication and errors
The /account/metrics endpoint uses the same API key auth as
/request/v*: either X-API-Key header or key= query parameter.
If the key is missing, you’ll get an HTTP 400 with a short error body:
If the key is valid but not found in Ziptax’s account database, the
response is still HTTP 200 with zeros across the board and
is_active: false. Check is_active before trusting the numbers.
