Fonctionnement
Dernière mise à jour
Dernière mise à jour
Les webhooks vous permettent d'écouter des évènements de Cards, et d'apliquer des modifications dans vos applications en conséquence.
La configuration de vos endpoints se fait dans l'interface de Cards.
Vous devez être propriétaire de votre abonnement pour avoir accès à ces informations.
Utilisez le menu supérieur droit, et allez dans "Intégration". Rendez-vous ensuite dans l'onglet "Webhooks".
Ici vous pouvez créer un ou plusieurs endpoints.
Voilà la liste des champs que vous pouvez renseigner :
Activer le webhook : pour décider si le endpoint est actiff ou non
Endpoint (url) : URL où l'évènement sera envoyé
Description : Non obligatoire, vous permet de vous y retrouver si vous avez plusieurs endpoints
Évènements : le ou les évènements que vous souhaitez écouter.
Quand vous enregistrez le endpoint, une clé secrète est générée. Cette clé sera utilisée pour signer l'envoi de l'évènement, vous permettant de votre côté de confirmer que la requête provient bien de Cards.
Quand un évènement s'exécute sur Cards, l'information est envoyée à vos endpoints (configurés sur l'évènement en question).
L'envoi contient toujours un corps de message, et un en-tête :
Le corps du message contient toutes les informations liées à l'évènement. Voir le détails sur la page "Détails des évènements".
L'en-tête comprend la signature, envoyé dans la variable : Cards-Signature
Lorsque l'application à laquelle nous envoyons le webhook ne parvient pas à envoyer une réponse avec un code d'état 2xx, Cards considérera l'appel comme ayant échoué. L'appel sera également considéré comme ayant échoué si l'application distante ne répond pas dans les 3 secondes.
Sur votre app retour une erreur, Cards renverra l'évènement jusqu'à 3 fois.
L'envoi de l'évènement n'est pas immédiat. Il peut y avoir un délai de quelques secondes, lié au traitement en fil d'attente des évènements.
Les 2 dates sont présentes dans la requête : la date de l'action de l'apprenant et la date de l'envoi de l'évènement.
Des logs sont disponibles dans l'interface de Cards. Ils affichent pour chaque évènement envoyé, les informations de requête et réponse.
Ces logs vous permettent de voir si des erreurs sont survenues dans votre application. Ils sont disponibles pour chaque endpoint.
Event slug | Description |
---|---|
chapter-complete
Quand l'apprenant complète un chapitre
quiz-complete
Quand l'apprenant répond à un quiz
survey-complete
Quand l'apprenant répond à un sondage
training-complete
Quand l'apprenant termine une formation
routine-complete
Quand l'apprenant termine une Learning Routine©
user-created
Quand un compte utilisateur est créé
user-updated
Quand un compte utilisateur est mis à jour
user-deleted
Quand un compte utilisateur est supprimé
user-group-added
Quand un utilisateur est ajouté à un groupe
user-group-removed
Quand un utilisateur est retiré d'un groupe
group-created
Quand un groupe est créé
group-updated
Quand un groupe est mis à jour
group-deleted
Quand un groupe est supprimé
badge-created
Quand un badge est créé
badge-updated
Quand un badge est mis à jour
badge-deleted
Quand un badge est supprimé
badge-unlocked
Quand un badge est débloqué par un utilisateur