🪫 Fix: ERR_CREDITS_EXHAUSTED

This month's Data API credits are used up. Retrying will not help; here is what will.

Last reviewed

Quick fix

Upgrade your plan on the Billing page to keep making calls now, or wait for your allowance to reset on the 1st of the month. GET /v1/usage costs 0 credits and shows your balance and period dates.

Why this happens

The API returns HTTP 429 with ERR_CREDITS_EXHAUSTED (and no Retry-After header) when your plan's monthly credits, and any referral bonus credits, are used up. There are no overage charges, so requests that would cost credits are refused instead of billed.

See it coming

Once a request takes you past 75% of the month's credits, every successful response carries an X-Credits-Warning header, for example X-Credits-Warning: 82% of monthly credits used. Log it or alert on it.

Other fixes

  • Cut credits per call: request offers for one retailer (retailer=, 2 credits per product instead of 3) when that is all you need.
  • Identifiers that match nothing and products with no offers cost nothing, so you are only charged for data returned.
  • Estimate your monthly use with the Data API cost calculator.

Related errors

  • ERR_RATE_LIMIT is also HTTP 429 but means too many requests in an hour; it has a Retry-After header. Branch on error_detail.code, not the status.
Was this helpful?

Still have questions?

Email support@shopsavvy.com with what you were trying to do and what happened.