A rate limit defines how many requests an API can handle within a specific time frame. In large systems, many denial-of-service issues happen unintentionally due to software bugs or misconfigurations rather than malicious intent. Rate limiting helps prevent these issues.
Rate limits are applied per API key, though some limits apply per Insider One account. The table below notes when a limit is shared across an account or across endpoints. If you exceed the allowed number of requests within the set period, the API returns a 429 (Too Many Requests) response, also known as API throttling limits or request-per-second caps. When you receive a 429, back off and retry. Where provided, the Retry-After response header (in seconds) in the response body might indicate how long to wait. Retrying with exponential backoff is recommended.
For transactional send endpoints, a successful response means your request has been accepted and queued for delivery, but it does not confirm delivery. Actual delivery throughput depends on queue conditions, so accepted messages may be delivered shortly after acceptance, especially during large bursts.
See below for the rate limits of Insider One APIs.
API | Endpoint | API Rate Limit |
|---|---|---|
Unification APIs - https://unification.useinsider.com/api/ | ||
/user/v1/upsert | A total of 25,000 requests per minute, shared with the Delete User Attribute, which means you can process up to 25 million user records per minute with full batching. | |
/raw/v1/export | 1 request per day. Failed requests don't count. Based on the UTC time zone, the API can be called only once in 24 hours. The limitation timeline resets at UTC 00:00. | |
/user/v1/attribute/delete | A total of 25,000 requests per minute, shared with the User Upsert API. | |
/user/v1/identity | 2000 requests per minute. | |
/user/v1/identity | 1,000 requests per minute. | |
/user/v1/delete | 10,000 requests per minute. | |
/contact/v1/anonymize | 500 requests per minute. | |
Contact APIs - https://contact.useinsider.com/ | ||
/fps/v1/upload | 100 requests per second with the same API Key. | |
/email/v1/subscribe | 600 requests per minute with the same API Key. | |
/sms/v1/subscribe | 600 requests per minute with the same API Key. | |
/whatsapp/v1/subscribe | 600 requests per minute with the same API Key. | |
Web Push APIs - https://web-push.api.useinsider.com/ | ||
/v1/single | 30 requests per minute. | |
/v1/single/campaign_id | 30 requests per minute. | |
/v2/single/campaign_id | 6000 requests per minute. | |
/v1/single/campaign_id | 30 requests per minute. | |
/v1/statistics/top-metrics | 30 requests per minute in aggregate. | |
/v1/statistics/overall-metrics | 30 requests per minute in aggregate. | |
/v1/statistics/campaign-metrics | 30 requests per minute in aggregate. | |
Mail APIs - https://mail.useinsider.com | ||
/mail/v1/send | 9000 requests per second. | |
/content/v1/campaign/create | 1 request per second. | |
/content/v1/template-migration/vendorname/extract-premigration-variables | 60 requests per minute. | |
/content/v1/template-migration/{vendorname}/extract-premigration-variables | 60 requests per minute. | |
Mobile APIs - https://mobile.useinsider.com/ | ||
/api/v1/push/bulk | 1000 requests per minute. | |
/api/v2/notification/user | 10000 requests per minute. | |
/api/v2/notification/user | 1000 requests per minute. | |
/api/v1/push/bulk | 1000 requests per minute. | |
/api/message_center/v1 | 5000 requests per minute. | |
/v1/details/inapp | 1000 requests per minute. | |
/v1/settings/certificate/firebase | 1000 requests per minute. | |
Verify APIs - https://verify.useinsider.com/ | ||
/v1/channel/create | 25 requests per minute. | |
/v1/template/create | 25 requests per minute. | |
/v1/channel/update | 25 requests per minute. | |
/v1/template/list | 25 requests per minute. | |
/v1/template/update | 25 requests per minute. | |
/v1/generate | 750 requests per minute. | |
/v1/check | 750 requests per minute. | |
SMS APIs - https://sms.useinsider.com/ | ||
/v1/send | 200 requests per second. | |
/v1/sendMultipleMessage | 5 requests per second, and each request can include up to 50 messages, which means you can send up to 250 message parts per second. | |
/analytics/v1/list | 100 requests per minute with the same API Key. | |
/analytics/v1/campaign | 100 requests per minute with the same API Key. | |
/analytics/v1/overall | 100 requests per minute with the same API Key. | |
/analytics/v1/transactional | 100 requests per minute with the same API Key. | |
/analytics/v1/verify | 100 requests per minute with the same API Key. | |
WhatsApp APIs - https://whatsapp.useinsider.com/ | ||
/v1/send | 1000 requests per second. | |
/v1/conversational/send | 1000 requests per second. | |
Analytics APIs - https://analytics.api.useinsider.com | ||
/email/v1/campaign/list | 100 requests per minute with the same API Key. | |
/email/v1/campaign/statistics | 100 requests per minute with the same API Key. | |
/email/v1/overall | 100 requests per minute with the same API Key. | |
/email/v2/campaign/list | 100 requests per minute with the same API Key. | |
/email/v2/campaign/statistics | 100 requests per minute with the same API Key. | |
/email/v2/overall | 100 requests per minute with the same API Key. | |
/onsite/v1/all | 100 requests per minute with the same API Key. | |
/onsite/v1/campaign | 100 requests per minute with the same API Key. | |
/onsite/v2/all | 100 requests per minute with the same API Key. | |
Architect Analytics APIs - https://architect-analytics.api.useinsider.com/ | ||
/v1/overall | 200 requests per minute with the same API Key. | |
/v1/journey/{journeyId} | 200 requests per minute with the same API Key. | |
/v1/element/{campaignId} | 200 requests per minute with the same API Key. | |
/v1/journeys | 200 requests per minute with the same API Key. | |
/v1/goals | 200 requests per minute with the same API Key. | |
Catalog APIs - https://catalog.api.useinsider.com/ | ||
/v2/ingest | 60 requests per minute, a combined limit for all endpoints of the Catalog API. | |
/v2/update | 60 requests per minute, a combined limit for all endpoints of the Catalog API. | |
Recommendation APIs | https://recommendation.api.useinsider.com/v2/{algorithm-name} | 1000 calls per minute, applied across all endpoints of the Recommendation API. |
These notes apply to the following transactional send endpoints: Mail (/mail/v1/send), SMS (/v1/send, /v1/sendMultipleMessage), and WhatsApp (/v1/send):
The limits in the table are the maximum request rates the API accepts. They are not guaranteed delivery rates; accepted messages are queued and sent as delivery capacity allows. Higher limits can be configured on demand by contacting Insider One.
When a limit is exceeded, the API responds with 429 (Too Many Requests). Back off and retry. You can retry the request within the API's rate limit.
Access to a transactional API key can additionally be restricted by IP on request. Contact the Insider One team to enable IP restriction.
Transactional messaging is available for email, SMS, and WhatsApp send endpoints. Web push and app push are campaign or targeted-delivery channels and are not part of the transactional send APIs.
Rate limit vs. messaging throughput (MPS)
The limits in the table above cap how many API requests you can send to an endpoint per time window. They are separate from Messaging Per Second (MPS) which is the rate at which the platform actually delivers messages to the provider or carrier. A single request can carry multiple messages, so your effective send rate is governed by MPS, not only by the request limit.
When you send faster than your MPS allows, messages are queued and dispatched in the next interval rather than dropped, and higher-priority traffic (automation and confirmation messages) is processed ahead of campaign traffic.
For channel-specific throughput, queue ordering, and how to raise your limits, see: