Help Center GMS API-kompatibilitet

GMS API-kompatibilitet

SMSBAT understøtter et kompatibilitetslag med GMS API. Dette giver dig mulighed for at migrere dine eksisterende integrationer designet til GMS direkte til SMSBAT uden at skulle ændre dine beskedrutingsskemaer, nyttelaststrukturer eller tilbagekaldslyttere.


Forbindelsesindstillinger

For at dirigere anmodninger gennem SMSBAT skal du opdatere basis-URL’en og godkendelsesoplysningerne i din integration:

  • Basis-URL: https://restapi.smsbat.com
  • Endpunkt: POST /api/GMSMessage/send_message
  • Request Format: application/json
  • Godkendelse: HTTP Basic Authentication (bruger dine SMSBAT API-legitimationsoplysninger)

Anmodningsparametre

GMS-kompatibilitets-API’en accepterer et JSON-objekt med følgende parametre på øverste niveau:

ParameterSkrivPåkrævetBeskrivelse
telefonnummerstrengJaModtagerens telefonnummer i internationalt format (f.eks. “380501234567”).
tagstrengJaRegistreret afsendernavn / alfanavn.
kanalerrækkeJaListe over kanaler, der skal prøves, i prioriteret rækkefølge. Understøttede værdier: “viber”, “sms”, “push”. F.eks. ["viber", "sms"].
kanal_indstillingerobjektJaKort med muligheder for hver aktiv kanal (se nedenfor).
ekstra_idstrengNejDit interne meddelelses-id på kundesiden.
callback_urlstrengNejEndpoint URL på dit system for at modtage tilbagekald med leveringsstatus.
divisionskodestrengNejValgfri divisionskodeidentifikator (standard til “hoved”).

Kanalindstillinger Indstillinger

Objektet channel_options indeholder kanalspecifikke konfigurationer.

Bruges, når ‘viber’ er opført i arrayet ‘kanaler’.

ParameterSkrivPåkrævetBeskrivelse
tekststrengJaBeskedens brødtekst.
ttlheltalJaTime-To-Live på få sekunder.
imgstrengNejOffentlig HTTPS-URL for billedet, der skal vises.
billedtekststrengNejKnap tekst etiket.
handlingstrengNejDestinations-URL, når der trykkes på knappen.
survey_optionsrækkeNejArray af strenge (2 til 5 elementer) til visning som undersøgelsesmuligheder.
karrusel_varerrækkeNejArray af diasobjekter, der skal vises som en Viber-karrusel (se struktur i fanen).

Eksempel på Viber-anmodning:

{
  "phone_number": "380501234567",
  "tag": "MySender",
  "channels": ["viber"],
  "channel_options": {
    "viber": {
      "text": "Hello from SMSBAT!",
      "ttl": 60,
      "img": "https://www.example.com/image.png",
      "caption": "Open",
      "action": "https://www.example.com"
    }
  }
}

Svarformat

Slutpunktet returnerer svar i JSON-format med en “HTTP 200 OK”-statuskode.

Vellykket svar

{
  "MessageId": "6f0d5e28-7f3a-4df3-91a2-3d58d9e09b9a",
  "ErrorCode": null,
  "ErrorText": null
}

Fejlsvar

Hvis validering eller behandling mislykkes, returneres et fejlsvar med en “ErrorCode” uden nul og detaljeret “ErrorText”.

{
  "MessageId": "00000000-0000-0000-0000-000000000000",
  "ErrorCode": 10221,
  "ErrorText": "This type of Message is not supported by the system"
}

Tilbagekaldsleveringsformat

Hvis “callback_url” blev angivet i anmodningen, sender SMSBAT leveringsstatusopdateringer som en JSON POST-nyttelast til dit slutpunkt.

Eksempel på anmodning om tilbagekald

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
}

Tilbagekaldsfelter Beskrivelse

FeltSkrivBeskrivelse
nummerstrengModtagerens telefonnummer.
‘tid’nummerHændelsestidsstempel i Unix millisekunder.
statusnummerForenklet statusidentifikation (se Statuskodetabel).
understatusnummerDetaljeret statusidentifikator (se Understatuskodetabel).
hyber_statusnummerDetaljeret SMSBAT intern statuskode (se tabellen Hyber Status).
meddelelses-idstrengSMSBAT-meddelelses-id (GUID) genereret ved afsendelse.
ekstra_idstrengKundeside-id angivet i den oprindelige anmodning.
sendt_viastrengKanal, der behandlede beskeden: ‘viber’, ‘sms’ eller ‘rcs’.
matching_template_idnummerViber skabelon match status (hvor relevant).

Statuskortlægninger

1. Forenklet status (“status”)

KodeBetydning
1Beskeden accepteret eller bliver leveret.
2Besked leveret.
3Behandlings- eller leveringsfejl.

2. Detaljeret status (“understatus”)

KodeBetydning
12Accepteret til behandling.
23Leveret.
24Set/læst.
35Leveres ikke inden for TTL (Udløbet).
36Leveringsfejl.

3. Kanaltype (sendt_via)

KanalBeskrivelse
’viber’Status produceret af Viber-kanalen.
smsStatus produceret af SMS-kanal.
rcsStatus produceret af RCS-kanal.

4. Detaljeret SMSBAT-status (“hyber_status”)

KodeKanalStatusUnderstatusBetydning
23033’viber’223Viber besked leveret.
24013’viber’224Viber besked læst af modtager (Set).
36013’viber’336Viber intern fejl.
36023’viber’336Ugyldigt eller utilgængeligt Viber-tjeneste-id.
36033’viber’336Ugyldige Viber-nyttelastdata.
36037’viber’336Viber-billedwebadressen er for lang.
36038’viber’336Ugyldig webadresse til Viber-billede.
36039’viber’336Viber-teksten er for lang.
36044’viber’336Tom Viber-tekst.
36053’viber’336Ikke-understøttet Viber-meddelelsestype.
36063’viber’336Ugyldige Viber-parametre.
36073’viber’336Viber udbyder timeout.
36083’viber’336Viber-afsender blokeret af modtageren.
36093’viber’336Modtager er ikke registreret som Viber-bruger.
36103’viber’336Ingen Android/iOS-enhed med Viber-understøttelse fundet.
36113’viber’336Uautoriseret IP-adresse til Viber-afsendelse.
36123’viber’336Dublet Viber-meddelelse fundet.
36143’viber’336Viber faktureringsfejl.
36153’viber’336Meddelelse blokeret af platformens sortliste.
36163’viber’336Viber platform intern behandlingsfejl.
36173’viber’336Forkert eller manglende Viber-label.
36183’viber’336Ugyldig Viber TTL-værdi.
12011sms / rcs112SMS/RCS accepteret.
36011sms / rcs112SMS/RCS på vej.
23011sms / rcs223SMS/RCS leveret.
35015sms / rcs335SMS/RCS udløbet (leveres ikke inden for TTL).
36021sms / rcs336SMS/RCS besked slettet.
36031sms / rcs336SMS/RCS kan ikke leveres.
36041sms / rcs336Ukendt SMS/RCS leveringsstatus.
36051sms / rcs336SMS/RCS besked afvist.