Concepts
Rate limits
Per-key, per-organization and per-source request limits, the headers that report them and how to back off.
| Limit | Default |
|---|---|
| Per key: reads | 120 a minute |
| Per key: writes | 60 a minute |
| Per organization (all keys and partners; live and test counted separately): reads | 300 a minute |
| Per organization: writes | 120 a minute |
| Per partner key | 600 a minute in total, plus each organization's limits |
| Per inbound source | 60 a minute by default, plus a daily limit (default 500; at most 2,000, or 500 in URL mode) |
| Mockup generations | 3 running at once per organization |
| Test webhooks | 30 test sends an hour, 500 test deliveries a day per organization |
Over a limit the answer is 429 rate_limited (or daily_cap_reached) with Retry-After in seconds. A 429 for a per-minute limit also carries RateLimit-Policy, RateLimit and X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
Staying under#
- Use webhooks or
GET /v1/events?sort=sync_ascinstead of polling every list. - Use
limit=100for syncs and follownext_cursor. - Back off on
429: waitRetry-After, then retry with the sameIdempotency-Key.
Need more? E-mail support@light-ai.app with your use case. The per-minute key and organization limits are the same for every organization; account caps (the number of keys, inbound sources and webhook endpoints, and the daily lead cap) can be raised per organization.