Trigger Webhook
Le trigger Webhook reçoit des webhooks HTTP et déclenche un workflow à chaque réception.
Vue d'ensemble
Ce type de trigger est idéal pour :
- Recevoir des notifications d'applications externes
- Intégrer avec des services tiers (GitHub, Stripe, etc.)
- Créer des intégrations en temps réel
- Recevoir des événements depuis d'autres systèmes
Configuration
Options de base
Lors de la création d'un trigger Webhook, vous devez configurer :
URL du webhook
Une URL unique est générée automatiquement pour votre webhook :
- Format :
https://your-domain.com/webhooks/{trigger-slug} - Cette URL doit être configurée dans le service externe qui envoie les webhooks
Méthode HTTP
Sélectionnez la méthode HTTP acceptée :
- POST : Recommandé pour la plupart des cas
- GET : Pour les webhooks simples
- PUT : Pour les mises à jour
Authentification
Configurez l'authentification pour sécuriser votre webhook :
Secret
- Un secret partagé entre Ecosystem et le service externe
- Le service externe doit inclure ce secret dans les headers ou le body
- Ecosystem valide le secret avant de déclencher le workflow
Signature
- Validation de la signature HMAC
- Le service externe signe la requête avec une clé secrète
- Ecosystem vérifie la signature
Headers personnalisés
Vous pouvez configurer des headers personnalisés à accepter :
- Certains services envoient des headers spécifiques
- Vous pouvez les valider dans la configuration
Données reçues
Lorsqu'un webhook est reçu, le workflow reçoit les données suivantes :
{
"method": "POST",
"headers": {
"content-type": "application/json",
"x-signature": "...",
"x-event-type": "order.created"
},
"body": {
"event": "order.created",
"data": {
"orderId": "12345",
"amount": 99.99
}
},
"query": {},
"timestamp": "2024-01-15T10:30:00Z"
}
Exemple d'utilisation
Scénario : Intégration avec un service de paiement
-
Créer le trigger :
- Type : Webhook
- Méthode : POST
- Authentification : Secret partagé
-
Configurer le service externe :
- Ajoutez l'URL du webhook dans les paramètres du service
- Configurez le secret partagé
- Sélectionnez les événements à recevoir
-
Créer le workflow associé :
- Reçoit les données du webhook
- Traite l'événement (ex: commande créée)
- Effectue les actions nécessaires
-
Déployer :
- Déployez le trigger dans l'environnement de production
- Le webhook est maintenant actif et recevra les événements
Bonnes pratiques
- Sécurité : Utilisez toujours une authentification (secret ou signature)
- Validation : Validez les données reçues dans le workflow
- Idempotence : Gérez les webhooks dupliqués (certains services peuvent renvoyer le même événement)
- Logging : Loggez toutes les requêtes reçues pour le débogage
- Documentation : Documentez le format des données attendues
- Test : Testez votre webhook avec des outils comme ngrok avant la production
Test d'un webhook
Pour tester votre webhook localement ou en développement :
- Utilisez un outil comme ngrok pour exposer votre instance locale
- Configurez l'URL ngrok dans le service externe
- Testez l'envoi de webhooks
- Vérifiez les traces dans Ecosystem