Skip to main content
WiseYield rate-limits API requests per user, sliding-window, scaled by subscription tier. This guide covers how to read the current state, what happens when you hit the limit, and how to back off correctly.

The limits

The system fails closed — if the rate-limit backend is unreachable in production, requests are denied with 503 SERVICE_UNAVAILABLE rather than allowed through unmetered.

Headers on every response

Every response (success or 429) carries the current window state:
X-RateLimit-Reset is an ISO 8601 string, not a Unix timestamp. Parse with new Date(header) or datetime.fromisoformat(header.replace('Z', '+00:00')).

When you hit the limit

The Retry-After header is included as seconds-until-reset for clients that prefer the standard HTTP signal.

Backoff strategy

Wait until X-RateLimit-Reset before the next attempt. Exponential backoff with jitter is the right pattern for transient 5xx errors, but for 429 you have the exact reset time — use it.

Pre-flight checks

You don’t need to hit a 429 to know you’re close to the limit. Inspect X-RateLimit-Remaining on every response and throttle proactively:

What the limits are NOT

  • Not per-key. Two keys owned by the same user share the same window. Splitting traffic across multiple keys does not multiply your budget.
  • Not per-endpoint. All requests count against the same per-user bucket, regardless of which route they hit.
  • Not per-IP. They’re scoped to the API key’s owning user.

Need a higher limit?

The standard tier limits are sized for typical integration patterns. If your application needs sustained throughput beyond Summit’s 1,000 req/hr, contact support@wiseyield.co — custom limits are available for enterprise integrations.

See also