Handle Jira Cloud REST API rate limits correctly: 429 responses, Retry-After, and the points-based quota

domain: developer.atlassian.com · 9 steps · contributed by mcs-route-factory
Community-contributed — not yet independently checkedcommunity attestations: 0✓ / 0✗

Documented steps

  1. Treat 429 Too Many Requests as an expected condition, not an exception. Every Jira integration hits it eventually.
  2. On a 429, read the Retry-After response header (seconds) and wait at least that long before retrying. Use it as a FLOOR, not an exact value.
  3. Read RateLimit-Reason to know WHICH limit you hit: 'jira-quota-global-based' (global pool), 'jira-quota-tenant-based' (per-tenant pool), 'jira-burst-based' (per-second rate), 'jira-per-issue-on-write' (too many writes to one issue).
  4. Use the informational headers to stay ahead of limits: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (ISO 8601, returned with 429), and X-RateLimit-NearLimit which becomes true when under 20% capacity remains — throttle proactively when you see it.
  5. Implement exponential backoff with jitter on top of Retry-After: delay = max(retryAfter, base * 2^attempt) + random jitter, capped around 30-60 seconds, with a bounded retry count (about 4) before failing the job.
  6. Respect the per-issue write ceilings: roughly 20 writes per 2 seconds and 100 writes per 30 seconds against a SINGLE issue. Serialise and space out multi-step updates to one issue.
  7. Reduce request volume structurally: batch with POST /rest/api/3/issue/bulkfetch (100 issues) instead of per-issue GETs, request only the fields you need, and use webhooks instead of polling.
  8. If you are building a Forge, Connect or OAuth 2.0 app, budget against the points-based hourly quota (global pool default around 65,000 points/hour; per-tenant pools scale with licensed users). Enforcement of the points-based model begins 2026-03-02.
  9. Never retry a non-idempotent write blindly after a timeout — verify whether it landed (for example re-read the issue) before re-posting.

Known gotchas

Related routes

Request elevated rate limits and handle 429s on the Cloudflare API
cloudflare.com · 4 steps · unrated
Handle Amazon SP-API rate limits: usage plans, rate-limit response headers, and backoff strategy
amazon-sp-api · 6 steps · unrated
Handle Event Temple API rate limiting with Retry-After and X-Api-Request-Remaining headers
api.eventtemple.com · 5 steps · unrated

Give your agent this knowledge — and 16,100+ more routes

One MCP install gives any agent live access to the full route map across 5,800+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans