Send engangspassord (OTP)
API-URL
URL som brukes til å sende HTTP-forespørsler:
Hvis forespørselen ikke kommer frem, gjentar du den på reserveserveren backup1.bulkgate.com.
Støttede HTTP-metoder
POST-application/json
I tillegg til request_quota_number håndhever endepunktet en grense for hele kontoen på 60 forespørsler per minutt. Hvis den overskrides, returneres the_quota_of_send_per_minute_has_been_exceeded.
Parametertabell
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| application_id | Application ID | Ja | - |
| application_token | Application token | Ja | - |
| number | Telefonnummeret som verifiseringskoden skal sendes til | Ja | - |
| country | Landskode for telefonnummeret | nei | Verdien hentes fra profilen. |
| language | Språket i meldingsteksten, en av de 100 støttede ISO-kodene. En ukjent kode fører til at forespørselen avvises. Uten den gjenkjennes språket ut fra telefonnummeret. | nei | null |
| code_type | Kodetype. (string, int eller combined) |
nei | int |
| code_length | Lengden på verifiseringskoden (4–100). | nei | 6 |
| request_quota_number | Antall forespørsler per minutt for request_quota_identification |
nei | 1 |
| request_quota_identification | Identifikasjon av «OTP-brukeren / den som sender forespørselen», som kvoten request_quota_number per minutt skal gjelde for. Vi anbefaler å bruke en IP-adresse til denne identifikasjonen. |
Ja | - |
| trials_available_resend | Grense for antall tilgjengelige nye utsendelser | nei | null - ubegrenset |
| trials_available_verification | Grense for antall tilgjengelige verifiseringer | nei | null - ubegrenset |
| daily_limit | Grense for antall tilgjengelige forespørsler per dag (glidende for de siste 24 timene) | nei | null - ubegrenset |
| daily_limit_country | Daglig grense per land som et kart {"cz": 100, "sk": 50}. Når den er fylt ut, er bare de oppførte landene tillatt — alle andre land feiler med country_is_disabled. |
nei | null - ubegrenset |
| expiration | Utløpstid for OTP-forespørselen i sekunder; når denne tiden er gått, er forespørselen ikke lenger mulig. En verdi under 60 ignoreres, og standardverdien brukes. |
nei | 604800 - 7 dager |
| channel | Alternative kanaler. Kanalene er oppført i en kaskade: Hvis vi ikke klarer å levere meldingen din via kanalen med høyest prioritet, brukes kanalene lenger nede i kaskaden. Hvis ingen av dem klarer å levere, brukes SMS i stedet. | nei | SMS, Viber, RCS, WhatsApp eller Text2Voice |
Kanaler
Objektet channel bestemmer hvilke kanaler som leverer koden, og i hvilken rekkefølge. Rekkefølgen på nøklene i forespørselen er rekkefølgen i kaskaden — hvis den første kanalen ikke kan levere koden, prøves den neste. Hvis ingen av dem kan, brukes SMS.
SMS-objekt
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| sender_id | Avsender-ID, se avsender-ID-type | nei | gSystem |
| sender_id_value | Avsenderverdi - gOwn (f.eks. «420 777 777 777»), gText (f.eks. «BulkGate»), gProfile (f.eks. «423»), gMobile eller gPush (KEY) |
nei | null |
| domain | URL til et nettsted som bruker WebOTP til automatisk utfylling av mottatt kode. | nei | null |
Viber-objekt
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| sender | Navnet på din registrerte avsender for Viber | Ja | - |
| expiration | Antall sekunder som skal gå før en annen kanal prøves | nei | 60 |
| code_type | Kodetypen Viber krever, oppgitt i den godkjente OTP-malen. | nei | null |
| code_reason | Årsaken til at koden sendes, som Viber krever. | nei | null |
| business_name | Bedriftsnavnet som vises i meldingen. | nei | null |
RCS-objekt
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| sender | Tekstavsender for RCS. Den må registreres først — kontakt kundestøtten vår for å registrere den. | Ja | - |
| expiration | Antall sekunder som skal gå før en annen kanal prøves | nei | 60 |
| use_card | Sender koden som et kort i stedet for ren tekst. | nei | false |
WhatsApp-objekt
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| sender | Din registrerte WhatsApp-avsender | Ja | - |
| template | Navnet på den godkjente WhatsApp-malen som brukes til å levere koden. | Nei | verification_code |
| language | Malens språk. Uten den brukes language fra forespørselen. |
Nei | null |
| expiration | Antall sekunder som skal gå før en annen kanal i kaskaden prøves. Minimum 60. |
Nei | 180 |
Text2Voice-objekt
Koden leses opp. Meldingen kan gjentas, slik at mottakeren rekker å skrive den ned.
| PARAMETERNAVN | VERDI | OBLIGATORISK | STANDARDVERDI |
|---|---|---|---|
| sender | Ditt registrerte oppringernummer. | Ja | - |
| language | Stemmens språk, en av de 47 støttede ISO-kodene. Uten den brukes language fra forespørselen. |
Nei | null |
| prefer_gender | Foretrukket stemme - male eller female. |
Nei | male |
| safety_statement | Legger til en sikkerhetsmelding i starten av samtalen. | Nei | true |
| repeat | Hvor mange ganger koden gjentas under samtalen. | Nei | 1 |
| expiration | Antall sekunder som skal gå før en annen kanal i kaskaden prøves. Minimum 60. |
Nei | 180 |
Eksempel på forespørsel
Svar
Ved suksess:
Ved feil:
Der:
- type og error (beskrivelse av feilen) finner du i tabellen over feiltyper
- code er HTTP-feilkoden
- detail er tilleggsinformasjon om feilen
Feiltyper i OTP API
I tillegg til de felles typene returnerer OTP API sine egne:
| TYPE | NÅR DET SKJER |
|---|---|
the_quota_of_send_per_minute_has_been_exceeded |
Kvoten for utsendelser per minutt er brukt opp. |
the_quota_of_one_additional_resend_per_minute_has_been_exceeded |
En ny utsendelse tidligere enn 60 s etter den forrige. |
the_quota_of_one_additional_resend_has_been_exceeded |
trials_available_resend er brukt opp. |
the_quota_of_one_additional_verification_has_been_exceeded |
trials_available_verification er brukt opp. |
daily_limit_reached |
daily_limit er brukt opp. |
country_is_disabled |
Landet til nummeret er ikke oppført i daily_limit_country. |
country_daily_limit_exceeded |
Den daglige grensen for dette landet er brukt opp. |
invalid_phone_number |
Nummeret kunne ikke gjenkjennes. |
invalid_code |
Den verifiserte koden stemmer ikke. |
unknown_channel |
Kaskaden inneholder en kanal som OTP API ikke kjenner. |
request_can_not_be_created |
Forespørselen kunne ikke opprettes. |
Takk for tilbakemeldingen.