Skip to main content
SmsManager vynucuje limity jak na počet příjemců, které můžete cílit v jednom API volání, tak na to, jak často můžete zahajovat ověřování telefonních čísel. Pochopení těchto limitů vám pomůže navrhnout robustní integrace, které efektivně dávkují požadavky a elegantně se zotavují při dosažení limitu.

Limity odesílacího API

Odesílací API nevynucuje pevný rate limit požadavků za sekundu, ale vynucuje limity příjemců na požadavek, které musíte dodržovat při dávkování odchozích zpráv. Pro kampaně větší než tyto limity rozdělte příjemce mezi několik sekvenčních nebo souvislých API volání.
Pokud potřebujete odesílat velmi velké objemy — desítky tisíc zpráv v krátkém okně — kontaktujte podporu SmsManager pro diskusi o vysoko-objemových ujednáních a vyhrazené kapacitě.
Odpověď 200 neznamená, že každá zpráva byla odeslána. Zkontrolujte pole rejected v těle odpovědi pro identifikaci příjemců, kteří nebyli přijati v rámci jednoho volání. Odmítnuté záznamy se nepočítají do rate limitů — můžete je ihned znovu odeslat po vyřešení hlavního problému (například dobití kreditu).

Rate limity Verify API

Verify API implementuje víceúrovňový rate limiting pro prevenci zneužití a ochranu vašeho účtu i jednotlivých uživatelů. Limity jsou vynucovány současně na dvou úrovních:
  • Per účet (tenant): Omezuje celkový počet nových validačních sessionů, které váš účet může zahájit v rolling okně. Chrání vaši celkovou kvotu.
  • Per telefonní číslo: Zabraňuje zahlcení jednoho telefonního čísla ověřovacími kódy omezením počtu sessionů, které lze zahájit pro dané číslo v časovém okně.
Při překročení kteréhokoli z těchto limitů API vrací odpověď HTTP 429 s jedním z následujících chybových kódů v těle odpovědi:

Zpracování rate limitů

Když obdržíte odpověď 429, neměli byste ihned opakovat. Použijte exponenciální backoff s jitterem k rozprostření opakování a vyhnutí se stampede podmínkám.

Limity pokusů o ověření

Každá validační session (zahájená přes POST /v1/validations) povoluje omezený počet pokusů o ověření kódu před uzamčením. Jakmile session dosáhne maximálního počtu neuspěšných pokusů, následující volání POST /v1/validations/{token}/verify vrací HTTP 429 se zprávou "Too many attempts". V tom okamžiku musíte zahájit novou validační session.
Zobrazte uživatelům počítadlo pokusů (pole attemptsRemaining je vraceno v chybových odpovědích), aby věděli, kolik pokusů zbývá před vypršením session. To snižuje frustraci a zbytečná API volání.
Neopakujte automaticky neuspěšné ověření kódu v těsné smyčce — každý neuspěšný pokus spotřebuje jeden z omezených pokusů session. Vyzvěte uživatele k ručnímu opětovnému zadání kódu.