Webservices liés aux scénarios

La notion de "Scénario" définit une suite d'actions à appliquer à un "profil" donné de façon automatisée sur base d'un élément déclencheur et de filtres pour personnaliser la communication.

La conception d'un scénario n'est pas possible par API. Elle doit obligatoirement se faire via l'interface ACTITO. Pour plus d'information à ce sujet, nous vous invitons à vous référer au chapitre consacré aux "Scénarios".

En revanche, l'exécution d'un scénario pour un "profil" donné peut être déclenchée par plusieurs facteurs :

  • par un événement (une désinscription, l’ouverture d’un e-mail, ...)

  • par une tâche planifiée (l'évaluation des profils à pousser dans un scénario, par exemple : l'anniversaire)

  • par un déclenchement externe (appel API ou webservice)

Les webservices liés aux scénarios vous permettront donc de :

  • obtenir des informations concernant les scénarios existants et leurs interactions

  • déclencher un scénario pour un profil donné

images/download/attachments/615292313/image2019-3-22_16-13-56.png

Mettre en place un scénario pour déclenchement par API

Pour qu'un scénario puisse être déclenché via webservice, il doit être paramétré dans ce sens lors de sa création.

Parmi les blocs "Événements de départ" disponibles, il convient de choisir le bloc de type "Démarrer". Il s'agit du seul événement de départ qui permettra le déclenchement du scénario par API. Après son activation, un scénario n'est plus modifiable. Il est donc nécessaire de décider s'il devra être déclenché par API dès la conception du scénario.

images/download/attachments/615292313/image2019-3-22_16-23-56.png

Obtenir les informations des scénarios existants pour une table de profils

Lors du déclenchement d'un scénario par API, il est nécessaire de se référer au nom technique du scénario visé.

Ce nom technique ne correspond pas au nom d'affichage que vous avez pu donner au scénario à sa conception. De plus, il n'est pas facilement accessible via l'interface ACTITO.

Pour obtenir le nom technique d'un scénario, il est possible d'utiliser l'opération GET/entity/{e}/table{t}/scenario

Cette méthode vous permettra d'obtenir la liste des tous les scénarios liés à une base de données spécifique.

Les paramètres à renseigner sont :

  • l'entité à laquelle la table de profils appartient

  • le nom de la table de profils visée par le scénario

  • un filtre sur le nom d'affichage pour viser un scénario particulier. Vous pouvez insérer des astérisques avant et après le terme de recherche pour effectuer une recherche partielle

  • un filtre permettant d'obtenir uniquement les scénarios déclenchés par webservices (isStartEventTriggered=true)

  • un filtre permettant d'obtenir uniquement les scénarios actifs (isActive=true)

images/download/attachments/615292313/image2019-3-22_16-38-59.png

Exemple de requête et de réponse : (Téléchargez cet exemple)

GET/entity/{e}/table/{t}/scenario
Curl call
curl -X GET --header "Accept: application/json" "https://test.actito.be/ActitoWebServices/ws/v4/entity/actito/table/demodoc/scenario?name=Doc*&isStartEventTriggered=true&isActive=true"
 
Response body
{
"workflows": [
{
"name": "DocScenarioAPI60dd2012-b296-43fc-bae5-6cb6c1b2d170",
"id": 11160,
"isStartEventTriggered": true,
"isActive": true
}
]
}

La réponse vous donnera les deux identifiants qui permettent de déclencher un scénario via appel webservice :

  • "name" : il s'agit du nom technique du scénario, basé sur son nom d'affichage suivi d'une séquence de caractères

  • "id" : il s'agit de l'identifiant technique auto-généré

Déclencher un scénario via API

Lorsqu'un profil répond à la condition de déclenchement du scénario telle qu'elle est définie dans votre système interne, vous avez la possibilité de programmer un appel webservice qui déclenche le scénario ACTITO pour ce profil.

Pour ce faire, il convient d'utiliser l'opération POST/entity/{e}/table/{t}/scenario/{s}/profile/{p}

Les paramètres à renseigner sont :

  • l'entité à laquelle la table de profils appartient

  • le nom de la table de profils visée par le scénario

  • l'identifiant du scénario : vous pouvez utiliser de façon interchangeable le nom technique du scénario et son identifiant auto-généré, tels que vous les avez obtenus grâce à la méthode GET expliquée ci-dessus

  • l'identifiant du profil : il peut s'agit de son identifiant technique ("profileId") ou d'une paire "attributClé=valeur"

images/download/attachments/615292313/image2019-3-22_17-5-19.png

Exemple de requête et de réponse : (Téléchargez cet exemple)

POST/entity/{e}/table{t}/scenarios/{s}/profile{p}
Curl call
curl -X POST --header "Content-Type: application/json" --header "Accept: application/json" "https://test.actito.be/ActitoWebServices/ws/v4/entity/actito/table/demodoc/scenario/11160/profile/147471"
 
Response body
{
"interactionBusinessKey": "df98b314-d1cc-4cbc-bb55-7a71ef695d39"
}

La réponse obtenue sera la clé business de l'interaction ainsi créée.