Заявете ранен достъп

Посочете името си и имейл адрес или телефонен номер. Ще Ви изпратим информация за достъп до Tajo.

Глобални ограничения

Brevo налага глобални ограничения на честотата на заявките за всички крайни точки на API, за да осигури справедливо използване и оптимална производителност.

Нива на ограниченията

Безплатен план

  • Дневно ограничение: 300 заявки
  • Часово ограничение: 50 заявки
  • Пиково ограничение: 10 заявки/минута
  • Имейл кредити: 300/месец

План Starter

  • Дневно ограничение: 20 000 заявки
  • Часово ограничение: 1000 заявки
  • Пиково ограничение: 100 заявки/минута
  • Имейл кредити: неограничено

План Business

  • Дневно ограничение: 50 000 заявки
  • Часово ограничение: 3000 заявки
  • Пиково ограничение: 300 заявки/минута
  • Имейл кредити: неограничено

План Enterprise

  • Дневно ограничение: по договаряне (100 000+)
  • Часово ограничение: по договаряне (10 000+)
  • Пиково ограничение: по договаряне (1000+/минута)
  • Имейл кредити: неограничено

Хедъри за ограниченията

Всеки отговор на API включва информация за ограниченията:

HTTP/1.1 200 OK
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200
X-RateLimit-Retry-After: 3600

Описание на хедърите

  • X-RateLimit-Limit: общ брой разрешени заявки в текущия прозорец
  • X-RateLimit-Remaining: оставащи заявки в текущия прозорец
  • X-RateLimit-Reset: Unix времеви отпечатък, когато ограничението се нулира
  • X-RateLimit-Retry-After: секунди изчакване преди нов опит

Наблюдение на потреблението

Проверка на текущото потребление

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-RateLimit-Limit'),
remaining: response.headers.get('X-RateLimit-Remaining'),
reset: new Date(response.headers.get('X-RateLimit-Reset') * 1000)
});
};

Наблюдение през таблото

  1. Влезте във Вашето табло в Brevo
  2. Отидете на Settings → API Keys
  3. Прегледайте потреблението за всеки API ключ
  4. Настройте известия при приближаване до ограниченията

Прозорци за нулиране на ограниченията

  • Дневни ограничения: нулират се в 00:00 UTC
  • Часови ограничения: нулират се всеки час в :00 минути
  • Пикови ограничения: плъзгащ се прозорец (последните 60 секунди)

Работа с ограниченията

Експоненциално изчакване

const makeRequestWithBackoff = async (url, options, maxRetries = 3) => {
for (let i = 0; i < maxRetries; i++) {
try {
const response = await fetch(url, options);
if (response.status === 429) {
const retryAfter = response.headers.get('X-RateLimit-Retry-After') || 60;
const delay = Math.min(1000 * Math.pow(2, i), retryAfter * 1000);
console.log(`Rate limited. Waiting ${delay}ms before retry ${i + 1}`);
await new Promise(resolve => setTimeout(resolve, delay));
continue;
}
return response;
} catch (error) {
if (i === maxRetries - 1) throw error;
}
}
};

Надграждане на плана

Когато постоянно достигате ограниченията:

  1. Анализирайте потреблението: прегледайте кои крайни точки използвате най-много
  2. Оптимизирайте кода: внедрете кеширане и групиране на заявките
  3. Обмислете надграждане: преминете към по-високо ниво, ако е необходимо
  4. Свържете се с търговския отдел: за корпоративни изисквания

Изключения от ограниченията

Крайни точки за webhooks

  • Не подлежат на стандартните ограничения
  • Прилагат се отделни ограничения за доставка на webhooks

Крайна точка за проверка на състоянието

  • /v3/ping има облекчени ограничения
  • Създадена е за наблюдение и проверки на достъпността

Групови операции

  • Броят се като една заявка, но може да имат ограничения за размера на данните
  • По-ефективни са от множество отделни заявки

Заявете ранен достъп

Посочете името си и имейл адрес или телефонен номер. Ще Ви изпратим информация за достъп до Tajo.

автоматично разпознаване
AI асистент

Здравейте! Попитайте ме за документацията.