Aller au contenu principal

Webhooks

Les Webhooks Logto fournissent des notifications en temps réel pour divers événements, y compris les modifications du compte utilisateur, du rôle, de la permission, de l’organisation, du rôle d’organisation, de la permission d’organisation et de l'interaction utilisateur.

Lorsqu'un événement est déclenché, Logto envoie une requête HTTP à l'URL de point de terminaison que vous fournissez, contenant des informations détaillées sur l'événement, telles que l'ID utilisateur, le nom d'utilisateur, l'email et d'autres détails pertinents (pour plus d'informations sur les données incluses dans la charge utile et l'en-tête, consultez Requête Webhook). Votre application peut traiter cette requête et prendre des actions personnalisées, comme envoyer un email ou mettre à jour des données dans une base de données.

Nous ajoutons continuellement plus d'événements en fonction des besoins des utilisateurs. Si vous avez des exigences spécifiques pour votre entreprise, veuillez nous le faire savoir.

Pourquoi utiliser Webhook ?

Les Webhooks offrent une communication en temps réel entre les applications, éliminant le besoin de scrutation et permettant des mises à jour de données immédiates. Ils simplifient l'intégration des applications et l'automatisation des flux de travail sans code complexe ou API propriétaires.

Voici quelques exemples d'utilisations courantes des Webhooks pour CIAM :

  • Envoyer des emails : Configurez un Webhook pour envoyer un email de bienvenue aux nouveaux utilisateurs lors de l'inscription ou pour notifier les administrateurs lorsqu'un utilisateur se connecte depuis un nouvel appareil ou emplacement.
  • Envoyer des notifications : Configurez un Webhook pour déclencher un assistant virtuel avec votre système CRM afin de fournir un support client en temps réel lorsque les utilisateurs s'inscrivent.
  • Effectuer des appels API supplémentaires : Configurez un Webhook pour vérifier l'accès utilisateur en vérifiant leur domaine de messagerie ou adresse IP, puis utilisez le Logto Management API pour attribuer les rôles appropriés avec des permissions de ressources.
  • Synchronisation des données : Configurez un Webhook pour maintenir l'application à jour concernant les changements tels que les suspensions ou suppressions de comptes utilisateurs.
  • Générer des rapports : Configurez un Webhook pour recevoir des données d'activité de connexion utilisateur et les utiliser pour créer des rapports sur l'engagement ou les habitudes d'utilisation des utilisateurs.

Termes

ÉlémentDescription
ÉvénementLorsqu'une action spécifique est effectuée, elle déclenchera un événement de hook avec un type spécifique. Par exemple, Logto émettra un événement de hook PostRegister lorsque l'utilisateur aura terminé le processus d'inscription et créé un nouveau compte.
HookUne ou plusieurs actions qui se connectent à un événement spécifique. L'action peut être un appel API, l'exécution de fragments de code, etc.
WebhookUn sous-type de hook qui indique l'appel d'une API avec la charge utile de l'événement.
Supposons qu'un développeur veuille envoyer une notification lorsqu'un utilisateur se connecte via un nouvel appareil, le développeur peut ajouter un webhook qui appelle son API de service de sécurité à l'événement PostSignIn.

Voici un exemple d'activation de deux webhooks pour l'événement PostSignIn dans Logto :

FAQs

Logto prend-il en charge les webhooks synchronisés ?

Bien que les webhooks synchronisés rendraient le flux de connexion utilisateur plus fluide, nous ne les prenons pas encore en charge (nous le ferons à l'avenir). Par conséquent, les scénarios qui reposent sur des webhooks synchronisés nécessitent actuellement tous des solutions de contournement différentes. Si vous avez des questions, n'hésitez pas à nous contacter.

Comment gérer le changement de permission utilisateur ?
Comment déboguer le délai d'attente du webhook ?

Pour le point de terminaison recevant les Webhooks, il doit renvoyer une réponse 2xx aussi rapidement que possible pour indiquer à Logto que le Webhook a été reçu avec succès. Étant donné que différents utilisateurs ont des logiques de traitement très différentes pour les Webhooks, des tâches excessivement complexes peuvent prendre plusieurs secondes, provoquant le délai d'attente du Webhook Logto. La meilleure pratique consiste à maintenir votre propre file d'attente d'événements ; lors de la réception du Webhook Logto, insérez l'événement dans la file d'attente et renvoyez une réponse 2xx à Logto. Ensuite, laissez votre propre travailleur traiter les tâches dans la file d'attente étape par étape. Si le travailleur rencontre une erreur, gérez-la sur votre propre serveur.

Puis-je obtenir l'adresse IP du client à partir des webhooks PostSignIn ?

Oui, vous pouvez obtenir l'adresse IP, les agents utilisateurs, etc. dans la charge utile du Webhook. Si vous avez besoin d'informations qui ne sont pas actuellement prises en charge, vous pouvez créer des demandes de fonctionnalités sur les problèmes GitHub, ou nous contacter.