Appeler un web service depuis une règle
Envoyer des appels à une API externe (ERP, outil de CAO) quand une règle se déclenche, reprendre après un échec et lire le journal des appels
À quoi ça sert
L'action « Appeler un web service » envoie à une API externe, par exemple un ERP ou un outil de CAO, une suite d'appels dans l'ordre : chaque appel peut lire ce que les précédents ont renvoyé. L'organisation déclare le service une seule fois dans l'administration des connecteurs ; la règle dit quels appels envoyer et avec quelles valeurs. Voir Services web pour la déclaration de la connexion et la lecture du journal des appels.
Concepts clés
- Appel — une requête vers le service, avec ses propres valeurs, qui peut renvoyer des résultats réutilisés par les appels suivants.
- Variable — une valeur que la règle prend sur la fiche déclenchante avant d'envoyer les appels. Un appel ne lit jamais la fiche directement : il lit ses variables.
- Appel non rejouable — un appel déclaré comme ne devant pas partir deux fois (une création, par exemple).
- Étape incertaine — une étape qui crée quelque chose et qui a pu être appliquée par le service avant que sa réponse se perde.
- Écriture en retour — le remplissage de champs de la tâche déclenchante avec des résultats des appels, une fois tous les appels réussis.
Comment faire
Ajouter l'action à une règle
- Dans le bloc « Actions » de la règle, ajoutez une action « Appeler un web service ».
- Dans les paramètres, saisissez les appels à envoyer, dans l'ordre. L'exemple fourni avec l'action montre la forme attendue.
- Cochez « Renvoyer une étape incertaine » si la règle doit renvoyer une étape dont l'issue est inconnue.
- Enregistrez la règle.
Dans le tableau des règles, l'action se lit « appeler un web service » avec le nombre d'appels, par exemple « 2 appels ».
Remplir des champs de la tâche avec les résultats
- Utilisez une règle dont le déclencheur est une tâche.
- Dans les paramètres de l'action, déclarez les champs à remplir et les résultats à y écrire.
Les champs sont remplis une fois que tous les appels ont réussi. Sur tout autre déclencheur, l'enregistrement de la règle refuse cette écriture en retour.
Suivre un appel
- Ouvrez l'administration des connecteurs, onglet « Journal des appels ».
- Ouvrez une ligne pour lire chaque appel envoyé et chaque réponse reçue.
Les secrets sont retirés du journal.
Référence
Comportements de l'action
| Situation | Résultat de l'action |
|---|---|
| Les appels sont mis en file | « Exécutée » : l'action n'attend pas la fin des appels |
| Un envoi de la même règle, de la même action et de la même fiche est encore en cours | « Ignorée » |
| Une étape incertaine, « Renvoyer une étape incertaine » décochée | « Ignorée » : l'étape n'est pas renvoyée une seconde fois |
| Une étape incertaine, « Renvoyer une étape incertaine » cochée | L'étape est renvoyée sans vérification |
| Une variable obligatoire est vide | Erreur |
| Écriture en retour sur un déclencheur qui n'est pas une tâche | Refusée à l'enregistrement |
Paramètres
| Clé | Rôle |
|---|---|
workflow | Les appels à envoyer, dans l'ordre. Obligatoire |
variables | Les valeurs lues sur la fiche déclenchante |
writeBack | Les champs de la tâche à remplir, déclencheur tâche seulement |
retryUncertainSteps | Le choix de « Renvoyer une étape incertaine » |
Sur une règle au déclencheur « Date », il n'y a pas de fiche déclenchante : l'exemple fourni ne propose ni variable ni écriture en retour.
Questions fréquentes
L'action attend-elle la réponse du service ?
Non. Elle met les appels en file et se termine : le détail de chaque appel se lit ensuite dans le journal.
Un appel de création peut-il partir deux fois ?
Non, tant qu'il est déclaré non rejouable. Si sa réponse s'est perdue, la règle ne le renvoie que si « Renvoyer une étape incertaine » est cochée.
Agir sur des fiches CRM depuis une règle
Mettre à jour des fiches CRM, en créer, ou y ajouter une note signée Automatisation depuis une règle d'automatisation
Se déclencher sur un e-mail ou un webhook
Faire partir une règle à la réception d'un e-mail dans une boîte surveillée ou d'un appel sur un webhook exposé par l'organisation