Documentation / Guides

Plans and limits | Salary Data API

Plans and limits

What each plan reads, its calls a second and its allowance, and the headers that count them.

Each plan has an allowance of calls (a day for the free key, a month for the others) and a number of calls a second. Over the allowance, calls are refused with quota_exceeded: nothing is ever billed beyond the plan.

PlanCallsPer secondPeriodsAdds
Free key50 a day1the latest
Starter10,000 a month5the latest 3 yearsbreakdowns
Pro100,000 a month10full historybreakdowns, US dollars
Analyst500,000 a month20full historybreakdowns, US dollars, one role across countries, pay gaps, MCP

The headers on every answer

X-RateLimit-LimitCalls a second on this plan
X-RateLimit-RemainingCalls left in this second
X-RateLimit-ResetWhen this second ends (Unix seconds)
X-Quota-LimitThe day's or month's allowance
X-Quota-RemainingCalls left in it
X-Quota-ResetWhen it starts again (Unix seconds)
Retry-AfterOn a 429: seconds to wait

What a smaller plan sees

An endpoint above the plan answers upgrade_required, naming the plan that has it. Asking a plan for something it does not include (a breakdown on the free key, periods before its first year) does the same. A field the plan does not include, such as value_usd below Pro, comes back as null with a note in meta, so code written on one plan keeps working on the next.

GET /v1/usage shows your plan, your calls today and this month, and when the allowance starts again. It never counts. Every plan in full on pricing.