Rate Limits & Throttling
Aevum Zenth's API enforces rate limits to ensure stability, security, and fair resource allocation across all 400+ subsidiary endpoints. This guide outlines global limits, header specifications, and best practices for production integrations.
Global Rate Limit Tiers
Rate limits are applied on a sliding window basis. Exceeding limits returns 429 Too Many Requests. Enterprise clients receive dedicated infrastructure and custom throttling policies.
| Plan | Requests / Minute | Requests / Hour | Burst Allowance | Concurrent Connections | Webhook Payloads |
|---|---|---|---|---|---|
| Sandbox | 60 | 3,000 | 10 | 4 | 100/day |
| Production | 600 | 36,000 | 50 | 20 | 10,000/day |
| Enterprise | Custom | Unlimited | Configurable | Up to 200 | Unlimited |
Rate Limit Response Headers
Every API response includes standardized headers to help your application track usage and implement adaptive throttling. These headers are consistent across all Aevum Zenth endpoints.
X-RateLimit-Limit: 600
X-RateLimit-Remaining: 482
X-RateLimit-Reset: 1700982400
Retry-After: 12 (only present on 429 responses)
X-AZ-Request-Id: az-req-8f3d9c2a-4b1e-4f8a-9d2c-7e6f5a4b3c2d
X-AZ-Quota-Pool: shared-gateway-v4
Header Specifications
- X-RateLimit-Limit: Maximum requests allowed in the current window.
- X-RateLimit-Remaining: Requests left before hitting the limit.
- X-RateLimit-Reset: UNIX timestamp when the quota window resets.
- Retry-After: Seconds to wait before retrying (only on
429). - X-AZ-Request-Id: Unique trace ID for debugging and support tickets.
Endpoint-Specific Overrides
Certain high-compute endpoints enforce stricter limits to protect downstream services. When an endpoint-specific limit is lower than your global tier, the stricter limit applies.
| Endpoint Pattern | Method | Limit / Minute | Notes |
|---|---|---|---|
/v2/simulations/* |
POST |
15 | Heavy CPU allocation; async processing recommended |
/v2/transactions/batch |
POST |
30 | Financial services vertical; compliance checks enabled |
/v2/streaming/* |
GET / WS |
10 | WebSocket connections count as 1 request per open |
/v2/export/* |
POST |
5 | Large dataset generation; delivered via signed URLs |
Recommended Retry Strategy
To maximize throughput and avoid cascade failures, implement an exponential backoff with jitter. The Aevum Zenth SDKs handle this automatically, but manual implementations should follow these guidelines:
if response.status == 429:
wait_time = response.headers["Retry-After"]
jitter = random.uniform(0, 0.5 * wait_time)
sleep(wait_time + jitter)
if retry_count < 3:
retry_count++
return make_request()
else:
throw RateLimitExhaustedError()
elif response.status >= 500:
backoff = min(30, 2 ** retry_count) * 1000
sleep(backoff + random_jitter())
retry_count++
Idempotency-Key) for POST and PATCH operations. Retries without keys may result in duplicate transactions or state conflicts.Monitoring & Quota Management
Track your consumption in real-time through the Aevum Zenth Developer Console. Set up webhook alerts for 90% quota utilization to prevent unexpected throttling.
- Dashboard Metrics: View requests/min, error rates, and latency percentiles across all endpoints.
- Quota Reserves: Pro/Enterprise plans can purchase burst credits for peak-load periods.
- Support Triage: Include
X-AZ-Request-Idwhen reporting rate limit issues. Our SRE team can trace gateway nodes within 60 seconds.
Need Higher Throughput?
Enterprise clients receive dedicated rate limit pools, priority queueing, and custom SLAs tailored to mission-critical workloads.