Перейти до змісту

Обмеження швидкості

Щоб забезпечити високу продуктивність і надійність для всіх користувачів, SMSBAT застосовує обмеження швидкості для запитів API. Обмеження швидкості вказують максимальну кількість викликів API, які ви можете зробити протягом заданого періоду часу.

Обмеження за замовчуванням

Якщо інше не зазначено у вашому контракті, обмеження швидкості за замовчуванням застосовуються до всіх кінцевих точок API (API SMSBAT, API Cascade та API ChatHub).

Категорія API Ліміт за замовчуванням Межа вибуху
Кінцеві точки обміну повідомленнями (/bat/messagelist) 100 запитів / секунду 150 запитів / секунду
Кінцеві точки даних (статус, баланс, інформація) 50 запитів / секунду 75 запитів / секунду

[!ПРИМІТКА] Для вихідних повідомлень (наприклад, POST /bat/messagelist) один HTTP-запит може містити до 5000 повідомлень у масиві messages. Обмеження швидкості стосується кількості HTTP-запитів, а не кількості надісланих повідомлень.

Обробка обмежень швидкості

Якщо ви перевищите дозволений ліміт швидкості, API відповість кодом статусу HTTP 429 Too Many Requests.

Приклад відповіді

{
  "error": "Too Many Requests",
  "message": "Rate limit exceeded. Please wait before sending more requests.",
  "status": 429
}

Найкращі практики

Щоб уникнути обмеження швидкості, зверніть увагу на наведені нижче практичні поради.

  1. Групуйте свої повідомлення: замість того, щоб надсилати 1000 окремих HTTP-запитів на 1000 SMS-повідомлень, надішліть один запит, що містить масив із 1000 об’єктів.
  2. Застосуйте експоненціальний відкат: якщо ви отримали код статусу 429, зачекайте короткий проміжок часу (наприклад, 1 секунду) і повторіть спробу. Якщо знову не вдається, подвоїть час очікування (2 с, 4 с, 8 с тощо).
  3. Змініть темп запитів: якщо ви використовуєте автоматизований сценарій, який запускає тисячі викликів API, введіть невелику затримку (наприклад, sleep(10) мілісекунд) між запитами.

Запит на збільшення ліміту

Якщо ваш варіант використання вимагає більшої пропускної здатності, ніж обмеження за замовчуванням, ви можете подати запит на збільшення.

  1. Зв’яжіться зі своїм призначеним менеджером облікового запису або надішліть електронний лист [email protected].
  2. Укажіть свій ідентифікатор облікового запису та очікувану пропускну здатність (наприклад, 500 запитів на секунду).
  3. Коротко опишіть свій варіант використання.

Наша технічна команда розгляне ваш запит і відповідно відкоригує ваші обмеження.