Richiedi l’accesso anticipato

Inserisci il tuo nome e indirizzo email aziendale. Ti invieremo un link per confermare la richiesta di accesso a Tajo.

Limiti Globali

Brevo limita le richieste API per endpoint. Ogni limite è un numero di richieste al secondo (RPS), all’ora (RPH) o entrambi. I valori qui sotto provengono dalla pagina dei limiti di frequenza di Brevo, verificata il 7 ottobre 2026. Controlla quella pagina prima di dimensionare un job grande.

Livelli dei limiti di frequenza

LivelloDisponibile con
GeneralFree, Starter, Standard, Professional ed Enterprise
AdvancedProfessional ed Enterprise
ExtendedEnterprise

Limiti per livello

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
Altri endpoint sotto /v3/smtp300 RPH600 RPH1.800 RPH
Tutti gli endpoint sotto /v3/contacts10 RPS, 36.000 RPH20 RPS, 72.000 RPH60 RPS
Tutti gli endpoint sotto /v3/loyalty600 RPH1.200 RPH100.000 RPH
Tutti gli altri endpoint100 RPH200 RPH600 RPH

Quando un endpoint ha sia un limite RPS sia un limite RPH, resta sotto entrambi.

Header dei limiti di frequenza

Gli endpoint soggetti a limiti di frequenza restituiscono questi header:

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

Descrizione degli header

  • x-sib-ratelimit-limit: richieste consentite nella finestra corrente
  • x-sib-ratelimit-remaining: richieste rimaste nella finestra corrente
  • x-sib-ratelimit-reset: tempo rimanente prima del reset della finestra, di solito in secondi

Brevo documenta questi header nella sua pagina sugli header dei limiti.

Monitorare l’utilizzo

Controllare l’utilizzo attuale

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

Gestire i limiti di frequenza

Backoff esponenziale

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

Se continui a raggiungere i limiti

  1. Distribuisci le richieste in modo uniforme: un limite di 1.000 RPS consente fino a 60.000 richieste al minuto solo se sono distribuite in modo uniforme.
  2. Raggruppa e metti in cache: usa gli endpoint bulk ed evita di rileggere dati che hai già.
  3. Usa i webhook per le statistiche: ricevi gli eventi invece di interrogare con polling gli endpoint delle statistiche.
  4. Valuta un livello superiore: i livelli avanzato ed esteso sono inclusi nei piani Professional ed Enterprise.

Richiedi l’accesso anticipato

Inserisci il tuo nome e indirizzo email aziendale. Ti invieremo un link per confermare la richiesta di accesso a Tajo.

Assistente AI

Ciao! Chiedimi qualsiasi cosa sulla documentazione.

Questa pagina in Markdown: global-limits.md

Caricamento del Markdown…
Apri in Claude Apri in ChatGPT