GMS API kompatibilnost
SMSBAT podržava sloj kompatibilnosti s GMS API. To vam omogućuje migriranje vaših postojećih integracija dizajniranih za GMS izravno na SMSBAT bez potrebe za izmjenom shema usmjeravanja poruka, struktura nosivosti ili slušatelja povratnih poziva.
Postavke veze
Za usmjeravanje zahtjeva putem SMSBAT-a ažurirajte osnovni URL i vjerodajnice za provjeru autentičnosti u svojoj integraciji:
- Osnovni URL:
https://restapi.smsbat.com - Krajnja točka:
POST /api/GMSMessage/send_message - Format zahtjeva:
application/json - Provjera autentičnosti: HTTP osnovna provjera autentičnosti (koristi vaše SMSBAT API vjerodajnice)
Parametri zahtjeva
GMS kompatibilni API prihvaća JSON objekt sa sljedećim parametrima najviše razine:
| Parametar | Upišite | Obavezno | Opis |
|---|---|---|---|
telefonski_broj |
niz | Da | Telefonski broj primatelja u međunarodnom formatu (npr. 380501234567). |
oznaka |
niz | Da | Ime registriranog pošiljatelja / alfa ime. |
kanali |
niz | Da | Popis kanala za isprobavanje, po prioritetu. Podržane vrijednosti: viber, sms, push. Npr., ["viber", "sms"]. |
opcije_kanala |
objekt | Da | Karta koja sadrži opcije za svaki aktivni kanal (vidi dolje). |
dodatni_id |
niz | Ne | Vaš interni ID poruke na strani korisnika. |
url_povratnog_poziva |
niz | Ne | URL krajnje točke na vašem sustavu za primanje povratnih poziva o statusu isporuke. |
šifra_odjeljka |
niz | Ne | Neobavezni identifikator šifre podjele (zadano je main). |
Postavke opcija kanala
Objekt channel_options sadrži konfiguracije specifične za kanal.
Koristi se kada je viber naveden u nizu channels.
| Parametar | Upišite | Obavezno | Opis |
|---|---|---|---|
tekst |
niz | Da | Tekst tijela poruke. |
ttl |
cijeli broj | Da | Vrijeme do života u sekundama. |
img |
niz | Ne | Javni HTTPS URL slike za prikaz. |
naslov |
niz | Ne | Tekstna oznaka gumba. |
akcija |
niz | Ne | Odredišni URL kada se klikne na gumb. |
opcije_ankete |
niz | Ne | Niz nizova (2 do 5 stavki) za prikaz kao opcije ankete. |
predmeti_vrtuljka |
niz | Ne | Niz objekata slajdova za prikaz kao Viber vrtuljak (pogledajte strukturu na kartici). |
Primjer Viber zahtjeva:
Omogućuje Viber razmjenu poruka s automatskim povratnim SMS-om ako Viber isporuka ne uspije unutar TTL-a.
Primjer zamjenskog zahtjeva:
{
"phone_number": "380501234567",
"tag": "MySender",
"channels": ["viber", "sms"],
"channel_options": {
"viber": {
"text": "Your order is ready!",
"ttl": 60,
"caption": "Details",
"action": "https://www.example.com/order"
},
"sms": {
"text": "Your order is ready: https://www.example.com/order",
"alpha_name": "MySender",
"ttl": 60,
"ctr": false
}
}
}
Koristi se kada je sms naveden u nizu channels.
| Parametar | Upišite | Obavezno | Opis |
|---|---|---|---|
tekst |
niz | Da | Tekst tijela poruke. |
alfa_ime |
niz | Da | Alfa ime pošiljatelja. |
ttl |
cijeli broj | Da | Vrijeme do života u sekundama. |
ctr |
Booleov | Ne | Omogućite CTR praćenje klikova na poveznicama u tekstu (true/false). |
Primjer SMS zahtjeva:
Koristi se za izradu Viber anketa i anketa.
Upozorenje
Konfiguracija Viber ankete mora imati između 2 i 5 opcija unutar survey_options.
Primjer zahtjeva za anketu:
Koristi se za slanje klizajućih slikovnih kartica. Svaki slajd podržava sliku, naslov i gumbe.
Primjer zahtjeva za vrtuljak:
{
"phone_number": "380501234567",
"tag": "MySender",
"channels": ["viber"],
"channel_options": {
"viber": {
"text": "Choose an offer",
"ttl": 60,
"carousel_items": [
{
"title": "Offer 1",
"image_url": "https://www.example.com/offer-1.png",
"primary_label": "Open",
"primary_url": "https://www.example.com/offer-1",
"secondary_label": "More",
"secondary_url": "https://www.example.com/offers"
},
{
"title": "Offer 2",
"image_url": "https://www.example.com/offer-2.png",
"primary_label": "Open",
"primary_url": "https://www.example.com/offer-2"
}
]
}
}
}
Koristi se kada je "push" naveden u nizu "channels".
| Parametar | Upišite | Obavezno | Opis |
|---|---|---|---|
naslov |
niz | Da | Tekst naslova push obavijesti. |
tekst |
niz | Da | Tekst tijela poruke. |
ttl |
cijeli broj | Da | Vrijeme do života u sekundama. |
img |
niz | Ne | Javni HTTPS URL slike za prikaz. |
naslov |
niz | Ne | Tekstna oznaka gumba. |
akcija |
niz | Ne | Odredišni URL kada se klikne na gumb. |
ctr |
Booleov | Ne | Omogući praćenje klikova. |
Primjer Push zahtjeva:
{
"phone_number": "380501234567",
"tag": "MySender",
"channels": ["push"],
"channel_options": {
"push": {
"title": "Order update",
"text": "Your order is ready for pickup!",
"ttl": 60,
"img": "https://www.example.com/push.png",
"caption": "Open",
"action": "https://www.example.com/order",
"ctr": false
}
}
}
Format odgovora
Krajnja točka vraća odgovore u JSON formatu sa statusnim kodom HTTP 200 OK.
Uspješan odgovor
Odgovori na pogreške
Ako provjera valjanosti ili obrada ne uspije, vratit će se odgovor o pogrešci s ErrorCode koji nije null i detaljnim ErrorText.
Format isporuke povratnog poziva
Ako je callback_url naveden u zahtjevu, SMSBAT šalje ažuriranja statusa isporuke kao JSON POST korisni teret vašoj krajnjoj točki.
Primjer zahtjeva za povratni poziv
POST /your-callback-endpoint HTTP/1.1
Host: yoursystem.com
Content-Type: application/json
{
"number": "380501234567",
"time": 1719237600000,
"status": 2,
"substatus": 23,
"hyber_status": 23033,
"message_id": "6f0d5e28-7f3a-4df3-91a2-3d58d9e09b9a",
"extra_id": "ORDER-12345",
"sent_via": "viber",
"matching_template_id": 0
}
Opis polja povratnog poziva
| Polje | Upišite | Opis |
|---|---|---|
broj |
niz | Broj telefona primatelja. |
vrijeme |
broj | Vremenska oznaka događaja u Unix milisekundama. |
status |
broj | Pojednostavljeni identifikator statusa (pogledajte tablicu statusnih kodova). |
podstatus |
broj | Detaljan identifikator statusa (pogledajte tablicu kodova podstatusa). |
hiber_status |
broj | Detaljan SMSBAT interni statusni kod (pogledajte tablicu statusa Hyber). |
id_poruke |
niz | SMSBAT ID poruke (GUID) generiran pri slanju. |
dodatni_id |
niz | ID na strani korisnika naveden je u izvornom zahtjevu. |
poslano_preko |
niz | Kanal koji je obradio poruku: viber, sms ili rcs. |
podudarni_id_predloška |
broj | Status podudaranja Viber predloška (gdje je primjenjivo). |
Preslikavanja statusa
1. Pojednostavljeni status (status)
| Kod | Značenje |
|---|---|
1 |
Poruka je prihvaćena ili se isporučuje. |
2 |
Poruka isporučena. |
3 |
Greška u obradi ili isporuci. |
2. Detaljan status (podstatus)
| Kod | Značenje |
|---|---|
12 |
Prihvaćeno za obradu. |
23 |
Isporučeno. |
24 |
Viđeno/pročitano. |
35 |
Nije isporučeno unutar TTL-a (isteklo). |
36 |
Greška pri isporuci. |
3. Vrsta kanala (sent_via)
| Kanal | Opis |
|---|---|
viber |
Status proizveden od Viber kanala. |
sms |
Status proizveden SMS kanalom. |
rcs |
Status koji proizvodi RCS kanal. |
4. Detaljan SMSBAT status (hyber_status)
| Kod | Kanal | Status | Podstatus | Značenje |
|---|---|---|---|---|
| 23033 | viber |
2 |
23 |
Viber poruka isporučena. |
| 24013 | viber |
2 |
24 |
Viber poruka pročitana od strane primatelja (Seen). |
| 36013 | viber |
3 |
36 |
Interna greška Vibera. |
| 36023 | viber |
3 |
36 |
Nevažeći ili nedostupni ID usluge Viber. |
| 36033 | viber |
3 |
36 |
Nevažeći Viber korisni podaci. |
| 36037 | viber |
3 |
36 |
URL Viber slike je predug. |
| 36038 | viber |
3 |
36 |
Nevažeći URL Viber slike. |
| 36039 | viber |
3 |
36 |
Viber poruka je preduga. |
| 36044 | viber |
3 |
36 |
Prazan Viber tekst. |
| 36053 | viber |
3 |
36 |
Nepodržana vrsta Viber poruke. |
| 36063 | viber |
3 |
36 |
Nevažeći parametri Vibera. |
| 36073 | viber |
3 |
36 |
Istek vremena pružatelja Vibera. |
| 36083 | viber |
3 |
36 |
Viber pošiljatelja blokirao je primatelj. |
| 36093 | viber |
3 |
36 |
Primatelj nije registriran kao Viber korisnik. |
| 36103 | viber |
3 |
36 |
Nije pronađen nijedan Android/iOS uređaj s podrškom za Viber. |
| 36113 | viber |
3 |
36 |
Neautorizirana IP adresa za slanje putem Vibera. |
| 36123 | viber |
3 |
36 |
Otkrivena dupla Viber poruka. |
| 36143 | viber |
3 |
36 |
Greška pri naplati Vibera. |
| 36153 | viber |
3 |
36 |
Poruka je blokirana crnom listom platforme. |
| 36163 | viber |
3 |
36 |
Interna greška obrade platforme Viber. |
| 36173 | viber |
3 |
36 |
Viber oznaka je pogrešna ili nedostaje. |
| 36183 | viber |
3 |
36 |
Nevažeća Viber TTL vrijednost. |
| 12011 | sms / rcs |
1 |
12 |
SMS/RCS prihvaćen. |
| 36011 | sms / rcs |
1 |
12 |
SMS/RCS na putu. |
| 23011 | sms / rcs |
2 |
23 |
SMS/RCS isporučen. |
| 35015 | sms / rcs |
3 |
35 |
SMS/RCS je istekao (nije dostavljen unutar TTL-a). |
| 36021 | sms / rcs |
3 |
36 |
SMS/RCS poruka izbrisana. |
| 36031 | sms / rcs |
3 |
36 |
SMS/RCS nije moguće isporučiti. |
| 36041 | sms / rcs |
3 |
36 |
Nepoznat status isporuke SMS-a/RCS-a. |
| 36051 | sms / rcs |
3 |
36 |
SMS/RCS poruka odbijena. |