Wraps Logo
DocsHome
Reference

API Rate Limits

Rate limits for the Wraps Platform API by plan. Includes response headers and error handling.

Limits by Plan

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.

PlanPer MinutePer Day
Free50 requests1,000 requests
Starter500 requests50,000 requests
Growth2,000 requests200,000 requests
Scale5,000 requests500,000 requests

Public Endpoints

Unauthenticated endpoints (health check, public tools) use IP-based rate limiting:

ScopeLimit
Per minute per IP10 requests
Per hour per IP100 requests

Event Ingestion Limits

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).

PlanMonthly Events
Free5,000 events
Starter50,000 events
Growth250,000 events
Scale1,000,000 events
EnterpriseUnlimited events

Grace Period

Event limits use a soft cap with a 25% grace period:

0-100%Normal operation
100-125%Warning threshold -- events still accepted, dashboard warnings and email notifications sent
125%+Hard block -- API returns 429 with event_limit_exceeded error

Event Response Headers

Every event ingestion response includes usage tracking headers:

HeaderDescription
X-Event-LimitMonthly event limit for your plan
X-Event-CurrentEvents consumed this month
X-Event-RemainingEvents remaining before soft limit
X-Event-PercentPercentage of limit used
X-Event-ExceededSet to true when hard-blocked at 125%

Normal response

Limit exceeded response (429)

Response Headers

Every API response includes rate limit headers so you can track your usage:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed in the current window
X-RateLimit-RemainingRequests remaining in the current window
Retry-AfterSeconds to wait before retrying (only on 429 responses)

Successful response

Rate limited response (429)

Handling 429 Errors

When you receive a 429 status code:

  1. Read the Retry-After header for the number of seconds to wait
  2. Wait that duration before retrying
  3. Use exponential backoff if retries continue to fail

Next Steps

Error Codes

Complete reference for CLI and SDK error codes.

View Error Codes
SDK Reference

Full API reference for the Email SDK.

View SDK Reference