Giới hạn tốc độ
Header trong response
Mỗi response từ API đều kèm các header về giới hạn tốc độ:
| Header | Mô tả |
|--------|-------------|
| X-RateLimit-Limit | Số request mỗi phút theo gói của bạn |
| X-RateLimit-Remaining | Số request còn lại trong khung thời gian này |
| X-RateLimit-Reset | Mốc thời gian (Unix) khi khung được làm mới |
| Retry-After | Số giây cần đợi (chỉ xuất hiện khi gặp lỗi 429) |
Giới hạn theo gói
| Gói | Request/phút | Request/ngày | |------|-------------|--------------| | Beta | 60 | 10.000 | | Free | 20 | 1.000 | | Pro | 200 | 100.000 | | Enterprise | 1.000 | 1.000.000 |
Xử lý lỗi 429
async function withRetry(fn: () => Promise<Response>): Promise<Response> {
const res = await fn();
if (res.status === 429) {
const retryAfter = Number(res.headers.get("Retry-After") ?? "5");
await new Promise((r) => setTimeout(r, retryAfter * 1000));
return fn();
}
return res;
}
Chính sách sử dụng hợp lý
Giới hạn tốc độ giúp bảo vệ quyền lợi của tất cả người dùng như nhau. Traffic dồn dập, bot tự động hay gửi request hàng loạt gây ảnh hưởng dịch vụ có thể bị tạm khóa. Nếu nhu cầu của bạn cần giới hạn cao hơn, hãy liên hệ bộ phận hỗ trợ.