Rate limit
Mỗi app, mỗi khoá và mỗi workspace có hạn mức riêng: một app chạy vòng lặp lỗi không làm chậm người dùng thật của khách.
| Ai gọi | Hạn mức | Tính theo |
|---|---|---|
| Token app (OAuth) | 600 / phút | app |
| API key | 600 / phút | khoá |
| Kết nối MCP của người dùng | 600 / phút | kết nối |
| Cả workspace (theo gói) | Hạn mức workspace theo gói | workspace |
| Request có token | 6,000 / phút | địa chỉ IP |
| Request chưa có token | 300 / phút | địa chỉ IP |
| Đăng nhập, lấy token | 10 / phút | địa chỉ IP |
Hạn mức workspace theo gói
Mọi lệnh gọi của một workspace (người dùng, app, khoá) dùng chung một xô, đầy lại đều trong mỗi phút.
| Gói | Hạn mức |
|---|---|
| Dùng thử | 100 / phút |
| Basic / Standard | 300 / phút |
| Professional | 1,500 / phút |
| Enterprise | 10,000 / phút |
Thao tác nặng
Xuất dữ liệu, báo cáo và nhập file có hạn mức riêng, chặt hơn.
| Hạn mức | |
|---|---|
| Xuất dữ liệu | 30 / phút |
| Báo cáo | 20 / giờ |
| Nhập file | 5 / giờ |
Header
| Header | Ý nghĩa |
|---|---|
X-RateLimit-Limit | Dung lượng xô của workspace mỗi phút. |
X-RateLimit-Remaining | Số lượt còn lại. |
X-RateLimit-Reset | Số giây tới khi xô đầy lại. |
X-RateLimit-Warning | Chỉ có khi còn dưới 20%: nên giảm nhịp gọi. |
Retry-After | Chỉ có khi 429: đợi bấy nhiêu giây rồi gọi lại. |
429
HTTP/1.1 429 Too Many Requests
Content-Type: application/problem+json
Retry-After: 60
{
"type": "https://nextx.vn/errors/rate-limit-exceeded",
"status": 429,
"errorCode": "gateway.rate_limited",
"retryable": true
}Gặp 429 thì đọc Retry-After rồi gọi lại; đừng retry ngay trong vòng lặp. Cần nhận thay đổi liên tục thì dùng webhook thay vì gọi kéo mỗi vài giây.