Zatražite rani pristup

Unesite ime i poslovnu adresu e-pošte. Poslaćemo vam vezu za potvrdu zahteva za pristup Taju.

Globalna ograničenja

Brevo ograničava API zahteve po endpointu. Svako ograničenje je broj zahteva u sekundi (RPS), na sat (RPH) ili oba. Brojke ispod potiču sa Brevo stranice sa ograničenjima, proverene 7. oktobra 2026. Pre nego što planirate veliki zadatak, proverite tu stranicu.

Nivoi ograničenja

NivoDostupan u planovima
OpštiFree, Starter, Standard, Professional i Enterprise
NapredniProfessional i Enterprise
ProšireniEnterprise

Ograničenja po nivou

EndpointOpštiNapredniProšireni
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
Ostali endpointi pod /v3/smtp300 RPH600 RPH1.800 RPH
Svi endpointi pod /v3/contacts10 RPS, 36.000 RPH20 RPS, 72.000 RPH60 RPS
Svi endpointi pod /v3/loyalty600 RPH1.200 RPH100.000 RPH
Svi ostali endpointi100 RPH200 RPH600 RPH

Kada endpoint ima i RPS i RPH ograničenje, ostanite ispod oba.

Zaglavlja ograničenja broja zahteva

Endpointi sa ograničenjem broja zahteva vraćaju ova zaglavlja:

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

Opis zaglavlja

  • x-sib-ratelimit-limit: broj zahteva dozvoljenih u trenutnom prozoru
  • x-sib-ratelimit-remaining: broj zahteva preostalih u trenutnom prozoru
  • x-sib-ratelimit-reset: vreme do resetovanja prozora, obično u sekundama

Brevo ova zaglavlja dokumentuje na stranici o zaglavljima ograničenja.

Praćenje potrošnje

Provera trenutne potrošnje

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'))
});
};

Postupanje sa ograničenjima

Eksponencijalni 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');
};

Ako stalno dostižete ograničenja

  1. Rasporedite zahteve ravnomerno: ograničenje od 1.000 RPS dozvoljava do 60.000 zahteva u minuti samo ako su ravnomerno raspoređeni.
  2. Grupišite i keširajte: koristite masovne endpointe i ne čitajte ponovo podatke koje već imate.
  3. Za statistiku koristite webhook-ove: primajte događaje umesto ispitivanja endpointa sa statistikom.
  4. Razmotrite viši nivo: napredni i prošireni nivo dolaze uz planove Professional i Enterprise.

Zatražite rani pristup

Unesite ime i poslovnu adresu e-pošte. Poslaćemo vam vezu za potvrdu zahteva za pristup Taju.

AI asistent

Zdravo! Pitajte me o dokumentaciji.

Ova stranica kao Markdown: global-limits.md

Učitavanje Markdowna…
Otvori u Claude Otvori u ChatGPT