← Back to articles

À quoi servent les webhooks de helpdesk et pourquoi ils comptent

À quoi servent les webhooks de helpdesk et pourquoi ils comptent

Un webhook de helpdesk est une requête HTTP sortante qui envoie les événements liés aux tickets à un autre système au moment où ils se produisent. Il peut déclencher des alertes, des automatisations ou des synchronisations de données sans interrogations fréquentes. Une intégration fiable nécessite néanmoins une configuration soigneuse : vérifiez chaque requête, accusez rapidement réception des livraisons et testez le point de terminaison avant de lui confier du trafic de production.


En bref :

  • Les webhooks peuvent transmettre les mises à jour des tickets avec moins de délai et moins d'appels API que des interrogations fréquentes.
  • La configuration implique généralement un point de terminaison HTTPS public, un abonnement à des événements, la vérification des requêtes et des tests avec des événements représentatifs.
  • Les contrôles de sécurité dépendent du fournisseur, mais incluent généralement HTTPS, la vérification d'une signature ou d'un jeton, la rotation des secrets et un traitement selon le principe du moindre privilège.
  • Les récepteurs doivent tolérer les événements en double ou reçus dans le désordre grâce à un traitement idempotent et à une mise en cohérence avec l'état actuel.
  • Deskhero n'envoie actuellement pas de webhooks sortants. Son API REST peut être interrogée lorsqu'une intégration personnalisée a besoin des données des tickets.

Table des matières

Comment fonctionnent les webhooks de helpdesk : événement, POST, payload

Un webhook de helpdesk commence par un événement. Quelqu'un ouvre un ticket, un utilisateur en modifie le statut, un client répond ou la priorité change. Si la plateforme propose un webhook pour cet événement et que vous y êtes abonné, elle envoie une requête HTTP à l'URL que vous avez enregistrée. Contrairement à une interrogation selon un calendrier fixe, le récepteur n'a pas besoin de demander constamment si quelque chose a changé. Les payloads des webhooks sont souvent au format JSON, même si le format et les champs exacts dépendent du fournisseur.

Schéma des champs d'un payload JSON de webhook

Un payload de création de ticket peut inclure un identifiant de ticket, un statut, une priorité, les informations du demandeur et des renseignements sur la cause de l'événement. Ne partez pas du principe que ces champs existent ou conservent toujours la même structure. Considérez le schéma actuel des événements du fournisseur comme la référence, et validez les payloads avant de les utiliser.

La différence pratique par rapport à l'interrogation réside dans le délai et le contrôle. Un webhook peut avertir votre récepteur peu après un événement, tandis qu'un processus d'interrogation détecte les changements lors de sa prochaine exécution. L'interrogation est souvent plus simple lorsque les mises à jour ne sont pas urgentes. Les webhooks sont utiles lorsque le faible délai est important et que le fournisseur prend en charge les événements et les contrôles de sécurité dont vous avez besoin.

Quels sont les meilleurs cas d'utilisation des webhooks de helpdesk ?

Les webhooks sont particulièrement utiles lorsqu'un autre système doit réagir rapidement à un événement de ticket. Voici quelques exemples courants :

  • Alertes sur les canaux. Un ticket nouveau ou urgent peut déclencher une notification dans un outil de collaboration, si le helpdesk émet cet événement et que l'intégration réceptrice le prend en charge.
  • Mises à jour du CRM. Certaines activités liées aux tickets peuvent être copiées dans une fiche client afin que les équipes d'assistance et commerciales disposent du contexte pertinent.
  • Déclencheurs d'escalade. Un événement urgent peut créer un incident ou une alerte dans un système d'astreinte.
  • Ingestion analytique. Les événements de tickets peuvent alimenter une file d'attente ou un pipeline de données destiné à la création ultérieure de rapports.
  • Coordination entre systèmes. Un événement de ticket peut créer ou mettre à jour un élément de travail associé pour une autre équipe.

Ces flux de travail nécessitent également un responsable clairement désigné et une gestion des échecs. Un webhook n'est que le mécanisme de livraison. Le système récepteur reste chargé de valider l'événement, d'appliquer les règles métier et de récupérer les données lorsque les services en aval sont indisponibles.

Comment configurer un webhook de helpdesk ?

Le processus exact varie selon la plateforme, mais une configuration standard suit généralement les étapes suivantes :

  1. Lisez la documentation du fournisseur. Confirmez les types d'événements disponibles, le schéma du payload, la méthode d'authentification, le délai d'expiration, la politique de nouvelle tentative et les fonctionnalités de journalisation des livraisons.
  2. Exposez un point de terminaison HTTPS public. Créez une route qui accepte le format de requête du fournisseur. De nombreux systèmes de webhooks utilisent des requêtes POST avec du JSON, mais votre implémentation doit respecter le contrat documenté.
  3. Enregistrez le point de terminaison et les événements. Ajoutez l'URL via l'interface d'administration ou l'API de la plateforme, puis abonnez-vous uniquement aux événements nécessaires à votre intégration.
  4. Configurez la vérification des requêtes. Si le fournisseur fournit un secret de signature ou un jeton de vérification, stockez-le dans un gestionnaire de secrets ou une variable d'environnement protégée. Ne l'intégrez jamais en dur dans le contrôle de version.
  5. Accusez rapidement réception. Renvoyez la réponse de réussite attendue avant de lancer les opérations lentes en aval. La documentation des webhooks de Stripe recommande de différer les traitements complexes jusqu'à ce que le point de terminaison renvoie une réponse positive.
  6. Testez avant la mise en production. Utilisez les événements de test du fournisseur ou un espace de travail de développement. Un outil de transfert sécurisé peut être utile pendant le développement local, mais n'exposez pas un service de développement non protégé au trafic de production.
  7. Vérifiez les résultats des livraisons. Si le fournisseur fournit un journal des livraisons, utilisez-le pour comparer les événements envoyés avec les réponses de votre récepteur et les enregistrements de traitement.

Un accusé de réception rapide réduit le risque que le fournisseur interprète la lenteur du récepteur comme un échec de livraison. La mise en file de l'événement vérifié avant tout traitement ultérieur facilite également les nouvelles tentatives de votre propre travail, sans demander à l'expéditeur de le renvoyer.

Comment sécuriser un point de terminaison de webhook de helpdesk ?

Une URL de webhook est accessible depuis l'extérieur de votre réseau : le récepteur ne doit donc pas faire confiance à une requête simplement parce qu'elle est arrivée sur le bon chemin.

Utilisez HTTPS avec un certificat valide et une configuration TLS actuellement prise en charge. Mettez ensuite en œuvre le mécanisme de vérification documenté par le fournisseur. Il peut s'agir d'une signature HMAC, d'un jeton de vérification, de signatures asymétriques ou d'un autre procédé. La vérification d'une signature nécessite souvent le corps brut exact de la requête : effectuez donc la vérification avant de l'analyser ou de le transformer.

Protégez-vous contre les rejeux lorsque le procédé du fournisseur prend en charge les horodatages ou les identifiants d'événements uniques. Comparez les signatures en temps constant, rejetez les requêtes non valides et évitez de placer des secrets ou des données personnelles dans les journaux de l'application. Faites tourner les secrets lorsque cette possibilité existe et documentez une procédure de chevauchement si les anciens et les nouveaux secrets doivent tous deux fonctionner pendant la rotation.

N'accordez au processeur de webhook que les autorisations dont il a besoin. Si le fournisseur publie des plages d'adresses IP sources stables, une liste d'autorisation peut constituer un contrôle supplémentaire, mais elle ne doit pas remplacer la vérification des requêtes. Appliquez soigneusement des limites de débit, surveillez les échecs et ne conservez que les données d'événement nécessaires au flux de travail.

Comment sécuriser un point de terminaison de webhook de helpdesk ? Schéma récapitulatif

Comment tester et déboguer les webhooks de helpdesk ?

Commencez par distinguer les problèmes de livraison des problèmes de traitement. Vérifiez si le fournisseur a envoyé l'événement, si la requête a atteint votre point de terminaison, quelle réponse celui-ci a renvoyée et si l'événement accepté a terminé son traitement en aval.

  • Utilisez les événements de test fournis par le fournisseur lorsqu'ils sont disponibles, puis testez des événements réels représentatifs dans un espace de travail hors production.
  • Enregistrez un identifiant d'événement, le type d'événement, l'heure de réception, le résultat de la vérification, le statut de la réponse et le résultat du traitement. Masquez les secrets et limitez les données personnelles stockées.
  • Utilisez le journal des livraisons de la plateforme pour examiner les codes de réponse et les nouvelles tentatives. Zendesk documente l'activité des webhooks et les détails de leur invocation pour faciliter le dépannage de son service de webhooks.
  • Comparez l'enregistrement de livraison du fournisseur avec les journaux du proxy inverse et de l'application. Des en-têtes manquants ou des modifications du corps peuvent révéler un problème de configuration du middleware ou du proxy.
  • Testez les délais d'expiration, les signatures invalides, les identifiants d'événements en double, les services en aval indisponibles et les événements livrés dans un ordre inattendu.

Conseil de pro : Conservez suffisamment d'historique structuré des livraisons pour retracer les échecs, mais définissez une durée de conservation et évitez de journaliser les payloads bruts, sauf s'ils sont réellement nécessaires et correctement protégés.

Comment gérer les événements de webhook en double ou reçus dans le désordre ?

Ne partez pas du principe que chaque événement sera livré exactement une fois ou que les événements arriveront toujours dans l'ordre de leur création. Le comportement des livraisons dépend du fournisseur, et les nouvelles tentatives peuvent produire des doublons. La présentation de Hookdeck compare les approches de livraison « au moins une fois » et « exactement une fois ».

Rendez les gestionnaires idempotents. Lorsqu'un fournisseur fournit un identifiant d'événement stable, enregistrez-le et évitez d'appliquer deux fois la même opération. Pour les changements d'état, utilisez les horodatages ou les valeurs de séquence si le fournisseur les définit, et récupérez l'état actuel de la ressource lorsque l'exactitude est plus importante que le traitement de chaque transition intermédiaire. Placez les tâches échouées dans une file avec un nombre limité de nouvelles tentatives et un délai progressif, puis envoyez les échecs persistants vers une file de lettres mortes consultable ou un processus équivalent.

L'option API de Deskhero

Deskhero fournit actuellement une API REST avec des jetons bearer personnels, mais n'envoie pas de webhooks sortants. Une intégration qui a besoin des données de tickets de Deskhero doit interroger l'API à un intervalle approprié et respecter sa limite de débit. Il s'agit d'un modèle différent de la livraison d'événements décrite ci-dessus : prévoyez donc des points de reprise, la pagination, la déduplication et la récupération après l'échec d'une tâche d'interrogation.

Choisir entre les webhooks et les interrogations

Faites votre choix en fonction du système avec lequel vous vous intégrez, et non en supposant que tous les helpdesks prennent en charge les deux modèles. Les webhooks peuvent réduire le délai de détection, mais ils nécessitent un récepteur public et une gestion attentive des livraisons. L'interrogation exige une planification et une logique de points de reprise, mais peut être plus facile à exploiter et à mettre en cohérence.

Deskhero

Deskhero transforme une boîte de réception Gmail ou Microsoft 365 en helpdesk partagé tout en conservant l'adresse e-mail existante de l'entreprise. Il propose une synchronisation des e-mails dans les deux sens, des automatisations de tickets intégrées, des brouillons de réponses IA fondés sur les connaissances de l'espace de travail et une API REST pour les intégrations personnalisées. Les automatisations de Deskhero s'exécutent lorsque de nouveaux tickets sont créés : elles ne remplacent pas les webhooks sortants. Les utilisateurs de Shopify peuvent également connecter l'intégration Shopify pour afficher les informations pertinentes sur les commandes et les clients dans Deskhero. Un essai gratuit de 30 jours est disponible sans carte bancaire.

Où en apprendre davantage sur les standards des webhooks

Il n'existe pas de standard unique des webhooks qui fasse fonctionner tous les fournisseurs de la même manière. Utilisez la documentation de votre fournisseur comme référence pour les schémas d'événements, la vérification, les nouvelles tentatives et les délais d'expiration. La documentation des webhooks de Notion fournit un exemple concret de vérification d'abonnement et de livraison d'événements.

Sources

FAQ

Que sont exactement les webhooks ?

Un webhook est une requête HTTP qu'un système envoie à une URL enregistrée après un événement défini. Elle contient des informations qui permettent au système récepteur de décider comment réagir.

Quels sont les inconvénients des webhooks ?

Les webhooks nécessitent un récepteur sécurisé et accessible publiquement. L'intégration doit également prendre en compte la vérification propre au fournisseur, les nouvelles tentatives, les événements en double, le réordonnancement éventuel, les temps d'arrêt, la surveillance et les changements de schéma des événements.

Quelle est la différence entre un webhook et une API ?

Une API permet généralement à votre logiciel de demander des données ou de déclencher une action. Un webhook permet à un autre système d'envoyer un événement à votre récepteur. De nombreuses intégrations utilisent les deux : le webhook signale un changement et l'API fournit les données actuelles de la ressource.

Pouvez-vous me donner un exemple de webhook de helpdesk ?

Un helpdesk prenant en charge les webhooks sortants peut envoyer un événement de création de ticket à votre récepteur. Après vérification de la requête, votre intégration peut ajouter une notification à un canal d'équipe ou mettre à jour une fiche CRM. Deskhero n'envoie actuellement pas de webhooks sortants : les intégrations Deskhero personnalisées doivent donc interroger son API REST à la place.