Rate limits and quotas
A rate limit is the most calls you can make in a short time. A quota is how many messages your bot can use in a whole month. This page lists every number.
API calls
Section titled “API calls”| Limit | Value |
|---|---|
| API requests per bot (all endpoints together) | 120 per minute, bursts of up to 20 |
| Request body | 64 KB |
Every authenticated answer carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset, so you know how much is left (401 INVALID_TOKEN and 403 BOT_DISABLED answers don’t).
Over the limit you get 429 RATE_LIMITED with a Retry-After header and details.retry_after (in seconds). Wait that long, then try again. Retrying faster doesn’t help.
Sending messages
Section titled “Sending messages”| Limit | Value |
|---|---|
| Per chat | 6 messages per 10 seconds and 20 per minute |
| In a channel | 10 messages per hour |
| Per bot, all chats together | 60 messages per minute |
| Messages per request | 5 |
| Message length | 4,096 characters |
Every message the bot posts counts: {"reply"}, reply token and push alike. Chats in slow mode (a setting that limits how often people can post) may answer 429 SLOW_MODE.
Events your bot receives
Section titled “Events your bot receives”- One person can call one bot at most 20 times a minute. Calls beyond that aren’t delivered and don’t use your quota.
- At most 2 events per bot are delivered to the webhook at the same time.
Monthly quota
Section titled “Monthly quota”Each bot gets a monthly message quota from its plan. Events delivered to the webhook and messages the bot posts count together, per calendar month in Thailand time, restarting on the 1st.
| Plan | Messages per month | Chats at once | See every message |
|---|---|---|---|
| ทั่วไป (free, the default) | 300 | 3 | No |
| Other plans | Set by Sukson staff | Per plan | Per plan |
See your bot’s actual values in GET /v1/me/quota and what it has used in GET /v1/me/quota/consumption. Plans aren’t on sale yet; staff assign them.
When the quota runs out, your bot gets no new events and sending gets 403 QUOTA_EXCEEDED until the next month.