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ợ.