Aucun résultat

Messages promotionnels – spécification

URL de l'API

URL utilisée pour envoyer les requêtes HTTP :

https://portal.bulkgate.com/api/1.0/integration/promotional
Note

Si la requête n'atteint pas sa destination, renvoyez-la au serveur de secours backup1.bulkgate.com.

POST /api/1.0/integration/promotional HTTP/1.1 Host: portal.bulkgate.com Content-Type: application/json

Tableau des paramètres

NOM DU PARAMÈTRE VALEUR OBLIGATOIRE VALEUR PAR DÉFAUT
application_id Application ID Oui -
application_token Jeton d'authentification de l'application Oui -
tag Étiquette d'identification personnelle Non -
messages Tableau de messages Oui Objet message

Objet message

NOM DU PARAMÈTRE VALEUR OBLIGATOIRE VALEUR PAR DÉFAUT
primary_channel Le canal principal à utiliser en premier dans la cascade Non sms
phone_number Numéro de téléphone du destinataire Oui -
country Indiquez les numéros des destinataires au format international (avec l'indicatif, p. ex. 420) ou ajoutez le code pays (775123456 + CZ = 420775123456). Consultez un exemple d'exigence propre à un pays. Si la valeur est null, le fuseau horaire que vous avez défini est utilisé pour compléter l'information Non null
schedule Planifiez la date et l'heure d'envoi au format timestamp unix, voir les exemples ci-dessous Non null
channels Tableau associatif d'objets canal Oui Objet canal

Objet du canal Viber

NOM DU PARAMÈTRE VALEUR OBLIGATOIRE VALEUR PAR DÉFAUT
sender Nom de l'expéditeur Non -
expiration Délai après lequel le message expire Non 3600
button_caption Texte du bouton Non OK
button_url URL du bouton Non #
image URL de l'image contenue dans le message Non null
image_zoom L'image peut-elle être agrandie ? Non false
text Texte du message. Il est possible d'ajouter au modèle des variables issues du tableau variables (autre paramètre) Bonjour <first_name> <last_name> .... Oui -
variables Tableau associatif permettant d'ajouter des variables au texte, p. ex. {"first_name": "John", "last_name": "Doe"} Non []

Objet du canal SMS

NOM DU PARAMÈTRE VALEUR OBLIGATOIRE VALEUR PAR DÉFAUT
sender_id Identifiant d'expéditeur, voir Type d'expéditeur Non gSystem
sender_id_value Valeur de l'expéditeur - gOwn (p. ex. "420 777 777 777"), gText (p. ex. "BulkGate"), gProfile (p. ex. "423"), gMobile ou gPush (CLÉ) Non ''
unicode Yes/true/1 pour un SMS Unicode, no/false/0 pour un SMS 7 bits Non false
text Texte du SMS (max. 612 caractères, ou 268 caractères si Unicode est activé), encodage UTF-8. Il est possible d'ajouter au modèle des variables issues du tableau variables (paramètre supplémentaire) Bonjour <first_name> <last_name> .... Oui -
variables Tableau associatif permettant d'ajouter des variables au texte, p. ex. : {"first_name": "John", "last_name": "Doe"} Non []

Type d'expéditeur sender_id

VALEUR DESCRIPTION
gSystem Numéro système
gShort Numéro court
gText Expéditeur texte
gMobile Mobile Connect
gPush Mobile Connect push - envoie une notification dans votre application Mobile Connect
gOwn Numéro propre (nécessite la vérification du numéro)
gProfile ID du profil d'expéditeur
<int> ID du profil d'expéditeur

Exemple de requête complète :

POST /api/1.0/integration/promotional HTTP/1.1 Host: portal.bulkgate.com Content-Type: application/json { "application_id": 451, "application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj", "tag": "", "messages": [ { "primary_channel": "sms", "phone_number": "420777777777", "country": "cz", "channels": { "viber": { "sender": "BulkGate", "expiration": 3600, "button_caption": "OK", "button_url": "#", "image": "", "image_zoom": false, "text": "test <variable_1>", "variables": { "variable_1": "name" } }, "sms": { "sender_id": "gSystem", "sender_id_value": "BulkGate", "unicode": false, "text": "test <variable_1>", "variables": { "variable_1": "name" } } } }, { "primary_channel": "sms", "phone_number": "420777777778", "country": "cz", "channels": { "viber": { "sender": "BulkGate", "expiration": 3600, "button_caption": "OK", "button_url": "#", "image": "", "image_zoom": false, "text": "test <variable_1>", "variables": { "variable_1": "name" } }, "sms": { "sender_id": "gSystem", "sender_id_value": "BulkGate", "unicode": false, "text": "test <variable_1>", "variables": { "variable_1": "name" } } } } ] }

La réponse à cette commande peut être :

En cas de succès

{ "data": { "total": { "status": { "sent": 0, "accepted": 2, "scheduled": 0, "error": 0, "blacklisted": 0, "invalid_number": 0, "invalid_sender": 0 } }, "response": [ { "status": "accepted", "message_id": "############-0", "part_id": [ "############-0" ], "number": "420777777777", "channel": "sms" }, { "status": "accepted", "message_id": "############-1", "part_id": [ "############-1" ], "number": "420777777778", "channel": "sms" } ] } }

En cas d'erreur :

{ "data": { "total": { "status": { "sent": 0, "accepted": 0, "scheduled": 0, "error": 0, "blacklisted": 0, "invalid_number": 0, "invalid_sender": 0 } }, "response": [] } } { "type": "unknown_identity", "code": 401, "error": "Unknown identity / unauthorized / empty application_id", "detail": null }

Où :

  • type et error (description de l'erreur) figurent dans le tableau des types d'erreurs
  • code représente le code d'erreur HTTP
  • detail contient des informations complémentaires sur l'erreur

Tous les types d'erreurs de la Simple API et de l'Advanced API sont disponibles ici.

Cette page vous a-t-elle été utile ?