The per-minute window lets you burst. A backfill that pages through several thousand transactions
runs at full speed for about eight minutes before the hourly ceiling starts to apply, which is well
past what most backfills need.
For comparison, a job polling every fifteen minutes uses 4 requests an hour.
Headers
Every response carries both windows, whether it succeeded or not, so you can pace yourself without having to be refused first.Reset values are Unix timestamps in seconds. Windows are aligned to the clock, so the per-minute
window resets at the top of each minute and the hourly window at the top of each hour.
When you are limited
You get a429 with a Retry-After header in seconds:
rate_limit_exceededis the per-key per-minute window. Wait, then continue.account_rate_limit_exceededis the account’s hourly ceiling. Another key on the same account may be consuming it too.
Backing off
HonourRetry-After. It is exact, not an estimate.
Provider limits are separate
POST /v1/sync asks your banks for new data, and the providers behind that impose their own quotas
which are much tighter than ours. If you hit one, you get a 429 with the code
provider_quota_exhausted. That is the bank’s limit, not the API’s, and retrying sooner will not
help.
Scheduled syncs run on their own anyway. You rarely need to trigger one by hand.