Đăng ký quyền truy cập sớm

Nhập tên và địa chỉ email công việc của bạn. Chúng tôi sẽ gửi liên kết để xác nhận yêu cầu truy cập Tajo.

Giới hạn toàn cục

Brevo giới hạn yêu cầu API theo từng endpoint. Mỗi giới hạn là một số yêu cầu mỗi giây (RPS), mỗi giờ (RPH), hoặc cả hai. Các con số dưới đây lấy từ trang giới hạn tốc độ của Brevo, được kiểm tra vào ngày 7 tháng 10 năm 2026. Hãy kiểm tra trang đó trước khi bạn ước lượng quy mô một tác vụ lớn.

Các mức giới hạn tốc độ

MứcCó trên
GeneralFree, Starter, Standard, Professional và Enterprise
AdvancedProfessional và Enterprise
ExtendedEnterprise

Giới hạn theo từng mức

EndpointGeneralAdvancedExtended
POST /v3/smtp/email, GET /v3/smtp/blockedContacts1.000 RPS, 3.600.000 RPH2.000 RPS, 7.200.000 RPH6.000 RPS
GET /v3/smtp/emails2 RPS, 7.200 RPH3 RPS, 10.800 RPH18.000 RPH
POST /v3/transactionalSMS/send150 RPS, 540.000 RPH200 RPS, 720.000 RPH250 RPS
POST /v3/events10 RPS, 36.000 RPH20 RPS, 72.000 RPH60 RPS
POST /v3/orders/status5 RPS, 18.000 RPH10 RPS, 36.000 RPH15 RPS
POST /v3/products2 RPS, 7.200 RPH4 RPS, 14.400 RPH21.600 RPH
Các endpoint khác dưới /v3/smtp300 RPH600 RPH1.800 RPH
Tất cả endpoint dưới /v3/contacts10 RPS, 36.000 RPH20 RPS, 72.000 RPH60 RPS
Tất cả endpoint dưới /v3/loyalty600 RPH1.200 RPH100.000 RPH
Tất cả endpoint khác100 RPH200 RPH600 RPH

Khi một endpoint có cả giới hạn RPS và RPH, hãy nằm dưới cả hai.

Header giới hạn tốc độ

Các endpoint có giới hạn tốc độ trả về các header sau:

HTTP/1.1 200 OK
x-sib-ratelimit-limit: 1000
x-sib-ratelimit-remaining: 750
x-sib-ratelimit-reset: 1

Mô tả các header

  • x-sib-ratelimit-limit: số yêu cầu được phép trong cửa sổ hiện tại
  • x-sib-ratelimit-remaining: số yêu cầu còn lại trong cửa sổ hiện tại
  • x-sib-ratelimit-reset: thời gian cho đến khi cửa sổ đặt lại, thường tính bằng giây

Brevo mô tả các header này trên trang header giới hạn tốc độ của họ.

Theo dõi mức sử dụng

Kiểm tra mức sử dụng hiện tại

const checkRateLimit = async () => {
const response = await fetch('https://api.brevo.com/v3/account', {
headers: { 'api-key': process.env.BREVO_API_KEY }
});
console.log({
limit: response.headers.get('x-sib-ratelimit-limit'),
remaining: response.headers.get('x-sib-ratelimit-remaining'),
resetInSeconds: Number(response.headers.get('x-sib-ratelimit-reset'))
});
};

Xử lý giới hạn tốc độ

Exponential backoff

const makeRequestWithBackoff = async (url, options, maxRetries = 3) => {
for (let i = 0; i < maxRetries; i++) {
const response = await fetch(url, options);
if (response.status !== 429) return response;
const resetSeconds = Number(response.headers.get('x-sib-ratelimit-reset') || 1);
const delay = Math.max(resetSeconds * 1000, 1000 * Math.pow(2, i));
console.log(`Rate limited. Waiting ${delay}ms before retry ${i + 1}`);
await new Promise(resolve => setTimeout(resolve, delay));
}
throw new Error('Rate limit retries exhausted');
};

Khi bạn liên tục chạm giới hạn

  1. Dàn đều các yêu cầu: giới hạn 1.000 RPS cho phép tối đa 60.000 yêu cầu mỗi phút chỉ khi các yêu cầu được dàn đều.
  2. Gom lô và cache: dùng các endpoint hàng loạt và tránh đọc lại dữ liệu bạn đã có.
  3. Dùng webhook cho số liệu thống kê: nhận sự kiện thay vì polling các endpoint thống kê.
  4. Cân nhắc mức cao hơn: mức advanced và extended đi kèm các gói Professional và Enterprise.

Đăng ký quyền truy cập sớm

Nhập tên và địa chỉ email công việc của bạn. Chúng tôi sẽ gửi liên kết để xác nhận yêu cầu truy cập Tajo.

Trợ lý AI

Xin chào! Hãy hỏi tôi về tài liệu.

Trang này dưới dạng Markdown: global-limits.md

Đang tải Markdown…
Mở trong Claude Mở trong ChatGPT