Why connected channels are rate-limited, the per-provider limits that apply, and what happens when one is reached.
When you connect a channel (LinkedIn, WhatsApp, email, and so on), Customermates talks to that provider through Unipile. Every provider enforces its own request limits, and exceeding them can get the underlying account throttled or suspended. To stay within safe bounds, Customermates applies a conservative request budget per channel and pauses before a provider would push back.
A paused sync is expected behavior: it keeps the connected account within provider limits and resumes on its own.
Limits are configured in the Unipile dashboard and enforced by Unipile. They apply per connected account at three levels at once:
When a window is full, further calls are rejected until it rolls over.
Read operations sync history. They are set higher than writes because reads rarely trigger a provider ban.
| Provider | Reads / minute | Reads / day |
|---|---|---|
| 20 | 300 | |
| 30 | 510 | |
| 50 | 510 | |
| Telegram | 50 | none |
| Gmail / Google | 100 | none |
| Outlook | 100 | none |
| IMAP | 100 | none |
LinkedIn stays the most conservative because its automated-activity detection is the strictest. Some values are shaped by the provider's own ceilings: social channels cap the per-minute read limit at 50, email channels at 100, and the daily limit moves in steps of 30 (so a target of 500 is applied as 510). Telegram and the email providers do not expose a separate daily read limit.
The riskier operations stay conservative regardless of the read budget: profile lookups (which providers treat as scraping-sensitive) and any send action.
| Provider | Action | Limit |
|---|---|---|
| Get company profile | 1 / second | |
| Get user profile | 1 / second | |
| Send connection request | 50 / day, 1 / 10 seconds | |
| Start a chat | 3 / minute, 30 / day | |
| Telegram | Start a chat | 3 / minute, 30 / day |
| Start a chat | 3 / minute, 30 / day | |
| Gmail / Google | Send an email | 300 / day |
| Outlook | Send an email | 300 / day |
| IMAP | Send an email | 300 / day |
The action returns a message with the time to wait, for example:
This channel hit its rate limit. You can try again in 2 minutes.
You can retry once the indicated window passes. Nothing is lost in the meantime.
Importing a full message history can be large, roughly one request per conversation. If a limit is reached mid-import, the background importer pauses and resumes automatically when the window frees up, with no action needed on your part. Opening a conversation also loads its messages on demand, and new activity arrives in real time over webhooks.