Help Center GMS API-compatibiliteit

GMS API-compatibiliteit

SMSBAT ondersteunt een compatibiliteitslaag met de GMS API. Hierdoor kunt u uw bestaande integraties die zijn ontworpen voor GMS rechtstreeks naar SMSBAT migreren zonder dat u uw berichtrouteringsschema’s, payload-structuren of callback-listeners hoeft te wijzigen.


Verbindingsinstellingen

Om verzoeken via SMSBAT te routeren, updatet u de basis-URL en authenticatiegegevens in uw integratie:

  • Basis-URL: https://restapi.smsbat.com
  • Eindpunt: POST /api/GMSMessage/send_message
  • Verzoekformaat: application/json
  • Authenticatie: HTTP-basisauthenticatie (gebruikt uw SMSBAT API-inloggegevens)

Verzoekparameters

De GMS-compatibiliteits-API accepteert een JSON-object met de volgende parameters op het hoogste niveau:

ParameterTypVereistBeschrijving
telefoonnummertekenreeksJaTelefoonnummer van de ontvanger in internationaal formaat (bijvoorbeeld ‘380501234567’).
labeltekenreeksJaGeregistreerde afzendernaam/alfanaam.
kanalenarrayJaLijst met kanalen die u kunt proberen, in volgorde van prioriteit. Ondersteunde waarden: viber, sms, push. Bijvoorbeeld ["viber", "sms"].
kanaaloptiesvoorwerpJaKaart met opties voor elk actief kanaal (zie hieronder).
extra_idtekenreeksNeeUw interne bericht-ID aan de klantzijde.
callback_urltekenreeksNeeEindpunt-URL op uw systeem om callbacks voor de leveringsstatus te ontvangen.
divisie_codetekenreeksNeeOptionele divisiecode-ID (standaard ingesteld op ‘hoofd’).

Instellingen kanaalopties

Het object channel_options bevat kanaalspecifieke configuraties.

Wordt gebruikt wanneer viber wordt vermeld in de channels-array.

ParameterTypVereistBeschrijving
teksttekenreeksJaHoofdtekst van bericht.
ttlgeheel getalJaTime-To-Live in seconden.
imgtekenreeksNeeOpenbare HTTPS-URL van de afbeelding die moet worden weergegeven.
onderschrifttekenreeksNeeKnop tekstlabel.
actietekenreeksNeeBestemmings-URL wanneer op de knop wordt geklikt.
enquête_optiesarrayNeeArray van tekenreeksen (2 tot 5 items) die als onderzoeksopties moeten worden weergegeven.
carrousel_itemsarrayNeeArray van dia-objecten om weer te geven als een Viber-carrousel (zie structuur op tabblad).

Viber-verzoekvoorbeeld:

{
  "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"
    }
  }
}

Antwoordformaat

Het eindpunt retourneert antwoorden in JSON-indeling met de statuscode ‘HTTP 200 OK’.

Succesvolle reactie

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

Foutreacties

Als de validatie of verwerking mislukt, wordt een foutreactie met een niet-null ErrorCode en gedetailleerde ErrorText geretourneerd.

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

Terugbelleveringsformaat

Als callback_url in de aanvraag is opgegeven, verzendt SMSBAT updates van de leveringsstatus als een JSON POST-payload naar uw eindpunt.

Voorbeeld van terugbelverzoek

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
}

Terugbelvelden Beschrijving

VeldTypBeschrijving
nummertekenreeksTelefoonnummer van de ontvanger.
tijdnummerTijdstempel van gebeurtenis in Unix-milliseconden.
statusnummerVereenvoudigde statusidentificatie (zie Statuscodetabel).
substatusnummerGedetailleerde statusidentificatie (zie tabel Substatuscodes).
hyber_statusnummerGedetailleerde SMSBAT interne statuscode (zie Hyberstatustabel).
bericht_idtekenreeksSMSBAT-bericht-ID (GUID) gegenereerd bij verzending.
extra_idtekenreeksID aan de klantzijde verstrekt in het oorspronkelijke verzoek.
verzonden_viatekenreeksKanaal dat het bericht heeft verwerkt: viber, sms of rcs.
matching_template_idnummerOvereenkomststatus van Viber-sjabloon (indien van toepassing).

Statustoewijzingen

1. Vereenvoudigde status (status)

CodeBetekenis
1Bericht geaccepteerd of afgeleverd.
2Bericht afgeleverd.
3Verwerkings- of leveringsfout.

2. Gedetailleerde status (substatus)

CodeBetekenis
12Geaccepteerd voor verwerking.
23Afgeleverd.
24Gezien/gelezen.
35Niet geleverd binnen TTL (verlopen).
36Leveringsfout.

3. Kanaaltype (sent_via)

KanaalBeschrijving
viberStatus geproduceerd door Viber-kanaal.
smsStatus geproduceerd door SMS-kanaal.
rcsStatus geproduceerd door RCS-kanaal.

4. Gedetailleerde SMSBAT-status (hyber_status)

CodeKanaalStaatSubstatusBetekenis
23033viber223Viber-bericht afgeleverd.
24013viber224Viber-bericht gelezen door ontvanger (gezien).
36013viber336Interne fout in Viber.
36023viber336Ongeldige of niet-beschikbare Viber-service-ID.
36033viber336Ongeldige Viber-payloadgegevens.
36037viber336Viber-afbeeldings-URL te lang.
36038viber336Ongeldige Viber-afbeeldings-URL.
36039viber336Viber-tekst te lang.
36044viber336Lege Viber-tekst.
36053viber336Niet-ondersteund Viber-berichttype.
36063viber336Ongeldige Viber-parameters.
36073viber336Time-out van Viber-provider.
36083viber336Viber-afzender geblokkeerd door de ontvanger.
36093viber336Ontvanger is niet geregistreerd als Viber-gebruiker.
36103viber336Geen Android/iOS-apparaat met Viber-ondersteuning gevonden.
36113viber336Ongeautoriseerd IP-adres voor verzending via Viber.
36123viber336Dubbel Viber-bericht gedetecteerd.
36143viber336Factureringsfout in Viber.
36153viber336Bericht geblokkeerd door zwarte lijst van platform.
36163viber336Interne verwerkingsfout in Viber-platform.
36173viber336Verkeerd of ontbrekend Viber-label.
36183viber336Ongeldige Viber TTL-waarde.
12011sms / rcs112SMS/RCS geaccepteerd.
36011sms / rcs112SMS/RCS onderweg.
23011sms / rcs223SMS/RCS afgeleverd.
35015sms / rcs335SMS/RCS verlopen (niet afgeleverd binnen TTL).
36021sms / rcs336SMS/RCS-bericht verwijderd.
36031sms / rcs336SMS/RCS kan niet worden afgeleverd.
36041sms / rcs336Onbekende SMS/RCS-bezorgstatus.
36051sms / rcs336SMS/RCS-bericht afgewezen.