Odeslání One Time Password (OTP)
API URL
Adresa URL používaná k odeslání požadavků HTTP:
Poznámka
Nedostane-li se požadavek k cíli, zopakujte ho na záložním serveru backup1.bulkgate.com.
Podporované HTTP metody
POST-application/json
Důležité
Endpoint má nad rámec request_quota_number ještě celkový limit 60 požadavků za minutu na účet. Po jeho překročení vrátí the_quota_of_send_per_minute_has_been_exceeded.
Tabulka s parametry
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| application_id | Application ID | Ano | - |
| application_token | Application token | Ano | - |
| number | Telefonní číslo, na které bude kód odeslán | Ano | - |
| country | Kód země daného telefonního čísla | ne | Hodnota je brána z profilu. |
| language | Jazyk textu zprávy, jeden ze 100 podporovaných ISO kódů. Neznámý kód požadavek odmítne. | ne | null |
| code_type | Typ odeslaného kódu (string, int, or combined) |
ne | int |
| code_length | Délka verifikačního kódu (4-100) | ne | 6 |
| request_quota_number | Počet požadavků za minutu pro identifikaci request_quota_identification |
ne | 1 |
| request_quota_identification | Identifikace "uživatele/žadatele OTP", na kterého se bude uplatňovat kvóta request_quota_number za minutu. Doporučujeme pro tuto identifikaci používat IP adresu. |
Ano | - |
| trials_available_resend | Limit počtu přeposlání | ne | null - neomezené |
| trials_available_verification | Limit počtu oveření | ne | null - neomezené |
| daily_limit | Limit počtu požadavků za den. (Počítá počet požadavků za posledních 24 hodin a postupně se posouvá) | ne | null - neomezené |
| daily_limit_country | Denní limit pro jednotlivé země jako mapa {"cz": 100, "sk": 50}. Je-li vyplněná, jsou povolené jen uvedené země — na ostatní požadavek skončí chybou country_is_disabled. |
ne | null |
| expiration | Expirace OTP požadavku v sekundách, po uplynutí této doby není možné ověřit požadavek. Hodnota nižší než 60 se ignoruje a použije se výchozí. |
ne | 604800 - 7 dní |
| channel | Alternativní kanály. Kanály jsou seřazeny v kaskádě, pokud tedy není možné doručit zprávu skrze prioritní kanál, budou použity kanály níže v kaskádě. Pokud ani jeden z alternativních kanálu nedokáže doručit zprávu bude použita SMS. | ne | SMS, Viber, RCS, WhatsApp nebo Text2Voice |
Kanály
Objekt channel určuje, kterými kanály se kód odešle a v jakém pořadí. Pořadí klíčů v requestu je pořadím kaskády — nedoručí-li kód prioritní kanál, zkusí se další v pořadí. Nedoručí-li ho žádný, použije se SMS.
SMS objekt
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| sender_id | ID odesílatele, viz sender ID type | ne | gSystem |
| sender_id_value | Hodnota odesílatele - gOwn (např. "420 777 777 777"), gText (např. "BulkGate"), gProfile (např. "423"), gMobile or gPush (KEY) |
ne | null |
| domain | URL webu, který používá WebOTP pro automatické vyplnění přijatého kódu. | ne | null |
Viber objekt
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| sender | Váš zaregistrovaný odesilatel pro Viber | Ano | - |
| expiration | Doba v sekundách po které bude zpráva odeslána dalším kanálem v pořadí v případě nedoručení. | ne | 60 |
| code_type | Typ kódu podle požadavků Viberu, uvádí se na schválené OTP šabloně. | ne | null |
| code_reason | Důvod odeslání kódu podle požadavků Viberu. | ne | null |
| business_name | Název firmy, který se objeví ve zprávě. | ne | null |
RCS objekt
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| sender | Textový odesílatel pro RCS. Musí být nejdříve registrován — pro registraci kontaktujte podporu. | Ano | - |
| expiration | Doba v sekundách po které bude zpráva odeslána dalším kanálem v pořadí v případě nedoručení. | ne | 60 |
| use_card | Odešle kód jako kartu místo prostého textu. | ne | false |
WhatsApp objekt
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| sender | Váš zaregistrovaný odesílatel pro WhatsApp | Ano | - |
| template | Název schválené WhatsApp šablony, kterou se kód odešle. | Ne | verification_code |
| language | Jazyk šablony. Bez něj se použije language z požadavku. |
Ne | null |
| expiration | Doba v sekundách, po které bude zpráva odeslána dalším kanálem v pořadí v případě nedoručení. Min. 60. |
Ne | 180 |
Text2Voice objekt
Kód se přečte hlasem. Zprávu lze zopakovat, aby ji příjemce stihl zapsat.
| JMÉNO PARAMETRU | HODNOTA | POVINNÉ | VÝCHOZÍ HODNOTA |
|---|---|---|---|
| sender | Vaše zaregistrované číslo volajícího. | Ano | - |
| language | Jazyk hlasu, jeden ze 47 podporovaných ISO kódů. Bez něj se použije language z požadavku. |
Ne | null |
| prefer_gender | Preferovaný hlas - male nebo female. |
Ne | male |
| safety_statement | Přidá na začátek hovoru bezpečnostní upozornění. | Ne | true |
| repeat | Kolikrát se kód v hovoru zopakuje. | Ne | 1 |
| expiration | Doba v sekundách, po které bude zpráva odeslána dalším kanálem v pořadí v případě nedoručení. Min. 60. |
Ne | 180 |
Příklad požadavku
Odpověď
V případě úspěchu:
V případě chyby:
Kde:
- type a error (popis chyby) najdete v tabulce typů chyb
- code je HTTP kód chyby
- detail je doplňující informace o chybě
Typy chyb OTP API
Vedle obecných typů vrací OTP API vlastní:
| TYP | KDY NASTANE |
|---|---|
the_quota_of_send_per_minute_has_been_exceeded |
Vyčerpaná kvóta odeslání za minutu. |
the_quota_of_one_additional_resend_per_minute_has_been_exceeded |
Přeposlání dřív než 60 s od předchozího. |
the_quota_of_one_additional_resend_has_been_exceeded |
Vyčerpaný trials_available_resend. |
the_quota_of_one_additional_verification_has_been_exceeded |
Vyčerpaný trials_available_verification. |
daily_limit_reached |
Vyčerpaný daily_limit. |
country_is_disabled |
Země čísla není v daily_limit_country. |
country_daily_limit_exceeded |
Vyčerpaný denní limit pro danou zemi. |
invalid_phone_number |
Číslo se nepodařilo rozpoznat. |
invalid_code |
Ověřovaný kód nesouhlasí. |
unknown_channel |
V kaskádě je kanál, který OTP API nezná. |
request_can_not_be_created |
Požadavek se nepodařilo založit. |
Byla tato stránka užitečná?
Děkujeme za zpětnou vazbu.