Skip to main content

AltF Developers

Rate limits, 429s and caching

Two endpoints are rate limited per client: /api/signals at 60 requests a minute and /api/health at 30. Going over returns HTTP 429 with Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset headers. Every endpoint sends a Cache-Control header; caching for that long keeps you far below the limits. The backoff generator above writes retry code that honours Retry-After.

  • No API key
  • Free, no sign-up
  • Real responses, no mock data
  • Code in 5 languages

What a 429 looks like

Status 429, body {"error": "Too many requests. Please try again shortly."}, and headers Retry-After (seconds), X-RateLimit-Limit, X-RateLimit-Remaining: 0 and X-RateLimit-Reset (Unix seconds). It is sent with Cache-Control: no-store.

A good retry policy

  • On 429, sleep for Retry-After seconds, then retry once.
  • On 5xx or a network error, retry with exponential backoff (1s, 2s, 4s) plus jitter, at most 3-4 times.
  • Never retry 400 or 404: the request itself is wrong.
  • Cache successful responses for their max-age or s-maxage.

Limits, CORS and caching

AltFTool public endpoints with CORS, rate limit and caching
EndpointReturnsBrowser CORSRate limitCache
GET /api/signalsSignals catalogueSame origin only60 requests per minute per clientCDN 1 hour, then stale for up to 24 hours
GET /api/open-data/exam-photo-specsExam photo and signature specsAny origin (Access-Control-Allow-Origin: *)No per-client limit; served from cacheBrowser and CDN 24 hours, stale for up to 7 days
GET /api/open-data/transform-convertersFormat converter indexAny origin (Access-Control-Allow-Origin: *)No per-client limit; served from cacheBrowser and CDN 24 hours, stale for up to 7 days
GET /api/oembedoEmbed providerAny origin (Access-Control-Allow-Origin: *)No per-client limit; cached at the CDNCDN 1 hour, then stale for up to 24 hours; cache_age 86400
GET /api/healthSite healthSame origin only30 requests per minute per clientCDN 60 seconds, then stale for up to 2 minutes

Read from each route's source code on 2026-11-01.

Rate limits, 429s and caching: questions and answers

Are limits per IP or per key?

Per client address, as seen by AltFTool's edge. There are no keys.

Can I get a higher limit?

There is no paid tier. Cache responses and you will rarely need more than one request per hour per query.

More developer reference

Free developer tools

Built something with it? Get it seen

Credit AltFTool with a normal link to the page you used, then list your own project where developers look. Our backlinks directory sorts free places to submit a site by type and authority.

More AltF products