Recevoir des webhooks à la fin d'un workflow

Être prévenu dans vos systèmes quand une exécution de workflow se termine, échoue ou est arrêtée, et vérifier la signature des envois.

Les webhooks préviennent vos systèmes quand une exécution de workflow se termine. Upsellr envoie alors une requête à l’adresse de votre choix. Ils sont inclus dans l’offre Enterprise.

Les événements

Événement Quand il est émis
workflow.run.completed Une exécution se termine avec succès
workflow.run.failed Une exécution échoue
workflow.run.stopped Un utilisateur arrête une exécution

Chaque envoi contient la représentation complète de l’exécution, au même format que l’API publique. L’onglet Catalogue des événements décrit ce format.

Ajouter un endpoint

  1. Ouvrez le menu du compte, puis Gérer et API et webhooks.
  2. Dans l’onglet Endpoints, cliquez sur Ajouter un endpoint.
  3. Renseignez un Nom et l’URL de l’endpoint. Seules les adresses HTTPS publiques sont acceptées : les réseaux privés et les redirections sont bloqués.
  4. Cochez les Événements à recevoir, puis enregistrez.
  5. Copiez le secret de signature. Il ne s’affiche qu’une fois.

Un endpoint peut être mis en pause puis réactivé. Si vous perdez le secret, cliquez sur Renouveler le secret et mettez votre récepteur à jour aussitôt.

Vérifier la signature

Chaque envoi porte deux en-têtes : X-Upsellr-Timestamp, l’horodatage de l’envoi, et X-Upsellr-Signature, de la forme v1= suivi d’une empreinte hexadécimale en minuscules. L’empreinte est un HMAC-SHA256, calculé avec le secret de l’endpoint, sur l’horodatage, un point, puis le corps brut de la requête.

Vérifiez la signature sur le corps brut, avant de décoder le JSON. Comparez les signatures en temps constant et rejetez les horodatages trop anciens.

Envois et nouvelles tentatives

  • Les événements partent en JSON, par une requête POST. Toute réponse 2xx confirme la réception.
  • En cas d’échec, Upsellr réessaie après 1 minute, 5 minutes, 30 minutes, 4 heures et 24 heures.
  • Un événement peut arriver plus d’une fois, et l’ordre n’est pas garanti : dédupliquez par identifiant d’événement.

Le journal des livraisons

L’onglet Livraisons d’événements liste les envois des 7 derniers jours, avec leur statut, leurs tentatives et leur contenu. Pour un envoi en échec, cliquez sur Rejouer l’envoi échoué : le même événement repart, avec le même identifiant.

Bon à savoir

  • Seuls les propriétaires et les administrateurs gèrent les endpoints et rejouent les envois.
  • Supprimer un endpoint annule ses envois en attente. Les journaux existants sont conservés.

Vous ne trouvez pas la réponse ?

Nous contacter