Límites de tasa
La API de Brevo limita las peticiones por endpoint, no por día. Cada límite es un número de peticiones por segundo (RPS), por hora (RPH) o ambos, y cuando se aplican ambos debes mantenerte por debajo de los dos. Superar un límite devuelve 429 Too Many Requests.
Límites del nivel general
El nivel general se aplica a todos los planes de Brevo: Free, Starter, Standard, Professional y Enterprise. Estos son los límites que Brevo publica para él:
| Endpoint | Límite |
|---|---|
POST /v3/smtp/email, GET /v3/smtp/blockedContacts | 1.000 RPS, 3.600.000 RPH |
POST /v3/transactionalSMS/send | 150 RPS, 540.000 RPH |
Todos los endpoints bajo /v3/contacts | 10 RPS, 36.000 RPH |
POST /v3/events | 10 RPS, 36.000 RPH |
POST /v3/orders/status | 5 RPS, 18.000 RPH |
POST /v3/products | 2 RPS, 7.200 RPH |
GET /v3/smtp/emails | 2 RPS, 7.200 RPH |
Otros endpoints bajo /v3/smtp | 300 RPH |
Todos los endpoints bajo /v3/loyalty | 600 RPH |
| Todos los demás endpoints | 100 RPH |
Las cuentas Professional y Enterprise pueden usar el nivel avanzado, que duplica la mayoría de estos límites. Las cuentas Enterprise pueden usar el nivel extendido, el más alto. Consulta Límites globales para ver los tres niveles lado a lado, y la página de límites de tasa de Brevo para las cifras actuales.
Cabeceras de límite de tasa
Los endpoints con límite de tasa devuelven tres cabeceras:
x-sib-ratelimit-limit: 1000x-sib-ratelimit-remaining: 750x-sib-ratelimit-reset: 1x-sib-ratelimit-limit: peticiones permitidas en la ventana actualx-sib-ratelimit-remaining: peticiones restantes en la ventana actualx-sib-ratelimit-reset: tiempo hasta que se reinicia la ventana, normalmente en segundos
Buenas prácticas
- Supervisar las cabeceras de límite de tasa
- Implementar backoff exponencial para los reintentos
- Repartir las peticiones de forma uniforme a lo largo de la ventana
- Almacenar en caché las respuestas siempre que sea posible
- Usar webhooks en lugar de polling