Limits
Limits are the same for everyone and there is no billing involved.
Webhooks and sends
Section titled “Webhooks and sends”| What | Limit |
|---|---|
| Webhooks per community (not deleted) | 10 |
| Sends per webhook | 5 every 2 seconds and 30 per minute |
| Sends per channel (all webhooks combined) | 60 per minute |
| Request body | 16 KB |
Over the rate? The response is 429 with rate_limited. The body carries retry_after, in seconds with decimals, and the Retry-After header carries the same value rounded up. Wait that long and send again.
PATCH and DELETE on messages also use up the rate.
Size of each part
Section titled “Size of each part”| What | Limit | If it’s over |
|---|---|---|
text |
2,000 characters | Rejected (payload_invalid) |
| Request body | 16 KB | Rejected (payload_too_large) |
key |
128 visible ASCII characters, no spaces | Rejected (payload_invalid) |
card.title |
256 characters | Cut with “…” |
card.body |
1,000 characters | Cut with “…” |
card.fields |
6 fields | The extra ones are ignored |
| Field name | 64 characters | Cut with “…” |
| Field value | 256 characters | Cut with “…” |
card.url |
512 characters, http:// or https:// |
The link is dropped |
username |
32 characters | Cut with “…” |
In every format, card text over its limit is cut. Only the message text is rejected when it goes past 2,000 characters, because cutting it would change what you wrote.
The flattened text that older apps and search read (the card’s title, body, fields and link) fits in 2,000 characters and is cut with “…”.
Deliveries
Section titled “Deliveries”The app keeps each webhook’s last 20 deliveries, for up to 7 days, with the first 4 KB of the body that arrived. You can see them in the webhook’s detail view, under Latest deliveries.