API Rate Limits
Rate limits for the Wraps Platform API by plan, with response headers and error handling.
Rate limits for the Wraps Platform API by plan. Includes response headers and error handling.
The Wraps Platform API enforces per-minute and daily rate limits based on your plan. Limits are applied per organization using DynamoDB-backed sliding windows.
| Plan | Per Minute | Per Day |
|---|---|---|
| Free | 50 requests | 1,000 requests |
| Starter | 500 requests | 50,000 requests |
| Growth | 2,000 requests | 200,000 requests |
| Scale | 5,000 requests | 500,000 requests |
Unauthenticated endpoints (health check, public tools) use IP-based rate limiting:
| Scope | Limit |
|---|---|
| Per minute per IP | 10 requests |
| Per hour per IP | 100 requests |
Tracked events (sent via POST /v1/events and POST /v1/events/batch) are subject to monthly quotas separate from API rate limits. Limits reset on the 1st of each month (UTC).
| Plan | Monthly Events |
|---|---|
| Free | 5,000 events |
| Starter | 50,000 events |
| Growth | 250,000 events |
| Scale | 1,000,000 events |
| Enterprise | Unlimited events |
Event limits use a soft cap with a 25% grace period:
0-100%Normal operation100-125%Warning threshold -- events still accepted, dashboard warnings and email notifications sent125%+Hard block -- API returns 429 with event_limit_exceeded errorEvery event ingestion response includes usage tracking headers:
| Header | Description |
|---|---|
X-Event-Limit | Monthly event limit for your plan |
X-Event-Current | Events consumed this month |
X-Event-Remaining | Events remaining before soft limit |
X-Event-Percent | Percentage of limit used |
X-Event-Exceeded | Set to true when hard-blocked at 125% |
Every API response includes rate limit headers so you can track your usage:
| Header | Description |
|---|---|
X-RateLimit-Limit | Maximum requests allowed in the current window |
X-RateLimit-Remaining | Requests remaining in the current window |
Retry-After | Seconds to wait before retrying (only on 429 responses) |
When you receive a 429 status code:
Retry-After header for the number of seconds to waitComplete reference for CLI and SDK error codes.
View Error CodesFull API reference for the Email SDK.
View SDK Reference