Passer au contenu

Utiliser les données de réponse d'un webhook dans votre parcours

Lorsque vous mappez les valeurs d’une réponse de webhook, Pushwoosh les stocke en tant que variables que vous pouvez utiliser plus tard dans le parcours dans Mettre à jour le profil utilisateur, Délai, et la personnalisation du contenu, de la même manière que vous utiliseriez un attribut d’événement. La seule exception est la Division par condition : elle ne peut pas créer de branche directement sur une variable de webhook, car elle a besoin d’une valeur avec un type déclaré (un Tag ou un attribut d’événement), et une valeur de webhook mappée n’a pas de type. Voir Comparer une valeur de webhook dans Division par condition ci-dessous.

Enregistrer une valeur de webhook en tant que Tag avec Mettre à jour le profil utilisateur

Anchor link to

Un Webhook peut renvoyer des données d’un système externe, telles qu’un ID utilisateur CRM ou un statut d’abonnement, que Pushwoosh ne stocke pas encore sur le profil utilisateur. Mettre à jour le profil utilisateur enregistre les valeurs mappées en tant que Tags afin que vous puissiez les utiliser dans des segments, du contenu dynamique, et des étapes ultérieures du parcours.

Exemple : enregistrer un ID utilisateur CRM en tant que Tag

Anchor link to

Un nouvel utilisateur s’inscrit dans votre application, et le parcours crée un enregistrement correspondant dans votre CRM. Enregistrer l’ID utilisateur CRM renvoyé en tant que Tag vous permet de référencer ou de mettre à jour le même enregistrement CRM plus tard, par exemple depuis un autre parcours ou un appel Webhook de suivi, au lieu de créer un enregistrement en double chaque fois que l’utilisateur entre à nouveau dans le parcours.

Flux du parcours : Entrée basée sur un déclencheur → Webhook → Mettre à jour le profil utilisateur → terminer la branche

  1. Créez un parcours avec une Entrée basée sur un déclencheur sur l’événement SignUp.
  2. Ajoutez un élément Webhook après l’étape d’entrée. Nommez-le (par exemple, Créer un utilisateur dans le CRM) et définissez l’URL de la requête sur votre point de terminaison de création d’utilisateur CRM.
  3. Dans le Mappage de réponse, définissez le Chemin sur le champ ID dans la réponse (par exemple, data.user.id) et l’Attribut sur crm_user_id.
Mappage de réponse de webhook avec le chemin data.user.id et l'attribut crm_user_id
  1. Ajoutez un élément Mettre à jour le profil utilisateur après l’étape Webhook.

  2. Dans Valeur de Tag dynamique, cliquez sur + Valeur dynamique. Dans Tag, sélectionnez le Tag qui stocke l’ID CRM (créez-le à l’avance si nécessaire). Dans Événement, sélectionnez l’étape webhook par le nom que vous lui avez donné (Créer un utilisateur dans le CRM). Dans Valeur dynamique, sélectionnez crm_user_id.

Valeur de Tag dynamique avec le Tag pour l'ID CRM, l'étape Webhook de l'événement, et la valeur dynamique crm_user_id
  1. Terminez la branche — ajoutez un élément Sortie ou laissez-la sans connexion sortante.
Branche de parcours se terminant par une Sortie après l'étape Mettre à jour le profil utilisateur

Planifier un délai à partir d’une valeur de webhook avec Délai

Anchor link to

Les dates de visite, les échéances de renouvellement et les fenêtres de livraison se trouvent souvent dans un système de réservation ou de facturation externe. Après qu’un Webhook a mappé la date à partir de la réponse de l’API, le Délai peut mettre le parcours en pause jusqu’à ce moment, par exemple 2 jours avant un rendez-vous, afin que le message suivant soit envoyé à temps.

Exemple : planifier un rappel à partir d’une date dans la réponse

Anchor link to

Un utilisateur prend un rendez-vous dans votre application. Le parcours récupère la date de la visite depuis votre système de réservation et envoie un rappel push 2 jours avant la visite.

  1. Créez un parcours avec une Entrée basée sur un déclencheur sur l’événement AppointmentBooked.
  2. Ajoutez un élément Webhook après l’étape d’entrée. Nommez-le (par exemple, Obtenir les détails du rendez-vous) et définissez l’URL de la requête sur l’API de votre système de réservation.
  3. Dans le Mappage de réponse, définissez le Chemin sur le champ de date dans la réponse (par exemple, appointment.date) et l’Attribut sur visit_date.
Étape Webhook avec mappage de réponse pour appointment.date vers visit_date
  1. Ajoutez un élément Délai après l’étape Webhook. Sélectionnez Basé sur les données utilisateur/événement, définissez Obtenir la date de sur Événement, définissez Événement sur l’étape webhook par le nom que vous lui avez donné (Obtenir les détails du rendez-vous), définissez Valeur de l’événement sur visit_date, et définissez le délai sur Avant 2 Jours.
Délai configuré à partir de la date de visite du webhook avec un décalage de 2 jours avant
  1. Si les utilisateurs peuvent réserver moins de 2 jours avant la visite, activez Diviser en branches si la date est dans le passé ou si la date est vide sur l’élément Délai. Cela crée deux branches, Dans le passé et Dans le futur. Voir Diviser les branches lorsque la date est dans le passé ou vide.
  2. Ajoutez une étape Push avec votre message de rappel. Si la division est activée, ajoutez ce Push dans les deux branches : Dans le passé (envoyer immédiatement) et Dans le futur (après le Délai).
  3. Terminez chaque branche — ajoutez un élément Sortie ou laissez-la sans connexion sortante.
Délai divisé en branches Dans le passé et Dans le futur, chacune avec des étapes Push et Sortie

Comparer une valeur de webhook dans Division par condition

Anchor link to

La Division par condition crée des branches sur un Segment, un Tag, ou un attribut d’événement avec un type déclaré. Une valeur mappée à partir d’une réponse de webhook n’a pas de type, elle n’apparaît donc pas dans les menus déroulants de la Division par condition et ne peut pas être comparée directement.

Pour créer une branche sur une valeur de webhook, enregistrez-la d’abord en tant que Tag du type correspondant avec Mettre à jour le profil utilisateur, puis comparez ce Tag dans la Division par condition.

Exemple : créer une branche en fonction du solde d’un webhook par rapport au montant de l’événement déclencheur

Anchor link to

Un utilisateur demande un achat, et le parcours vérifie si son solde CRM couvre le prix de l’événement déclencheur avant de continuer.

Flux du parcours : Entrée basée sur un déclencheur → Webhook → Mettre à jour le profil utilisateur → Division par condition

  1. Créez un parcours avec une Entrée basée sur un déclencheur sur l’événement PurchaseRequested, avec un attribut numérique required_amount.
  2. Ajoutez un élément Webhook après l’étape d’entrée. Dans le Mappage de réponse, définissez le Chemin sur le champ du solde dans la réponse (par exemple, current_balance) et l’Attribut sur current_balance.
  3. Ajoutez un élément Mettre à jour le profil utilisateur après l’étape Webhook. Dans Valeur de Tag dynamique, définissez le Tag sur un Tag numérique de type Entier ou Prix (créez-le à l’avance si nécessaire, par exemple Current_balance), l’Événement sur l’étape webhook, et la Valeur dynamique sur current_balance.
  4. Ajoutez un élément Division par condition après Mettre à jour le profil utilisateur. Définissez la condition sur le Tag Current_balance, l’opérateur supérieur ou égal à, et pour la valeur, sélectionnez Attribut d’événement → l’événement d’entrée → required_amount au lieu d’une constante.
  5. Connectez chaque branche aux étapes suivantes.

Points à garder à l’esprit

Anchor link to
  • Syntaxe du chemin : utilisez un chemin séparé par des points (par exemple, data.user.id), ou un segment * pour mapper chaque élément d’un tableau. Les filtres ne sont pas pris en charge. Voir Mapper chaque élément d’un tableau pour plus de détails.
  • Taille de la réponse : les réponses de plus de 64 Ko ne sont pas traitées pour le mappage.
  • Division par condition : une valeur de webhook mappée n’a pas de type et ne peut pas être utilisée directement. Enregistrez-la d’abord en tant que Tag. Voir Comparer une valeur de webhook dans Division par condition.
  • Test : exécutez Tester le webhook dans l’élément Webhook avant d’utiliser des valeurs mappées dans un parcours en direct. Confirmez que la requête réussit, puis vérifiez le corps de la réponse par rapport à chaque Chemin dans l’onglet Journal des appels. Si une valeur semble incorrecte pour un voyageur spécifique une fois le parcours en ligne, vérifiez la ligne de ce voyageur dans le Journal des appels.
  • Listes dans la réponse : utilisez * dans le Chemin pour mapper chaque élément. Choisissez item_{n} pour des attributs séparés ou un nom sans {n} pour une seule chaîne de caractères séparée par des virgules. Les index du Chemin commencent à 0. Les noms {n} commencent à 1. Au maximum, les 50 premiers éléments sont mappés. Voir Mapper chaque élément d’un tableau.