Catégorie: Développement

L’usage des Webhooks dans les APIs

Auteur(s) de l'article

Gilles
Gilles
Une bonne partie de notre travail consiste à intégrer plusieurs applications entre elles. La majorité de ces applications n'ont pas d'intégration native prévue par leurs auteurs, mais expose ce que l'on appelle une API (Application Programming Interface) pour s'échanger des informations.
Imaginons que nous souhaitons synchroniser les données de notre application avec un CRM (application de gestion de contact et de la relation client). Si ce CRM expose une API, nous pouvons régulièrement lui faire un appel qui dit en substance "donne-moi tout les contacts qui ont été modifié ou créé depuis hier". Il s'agit de la stratégie API Polling.
“ Si vous avez déjà voyagé avec des enfants, c'est l'équivalent de "Est-ce que l'on est bientôt arrivé?" un million de fois. ”

Lu sur Internet (https://medium.com/swlh/an-alternative-strategy-to-api-polling-using-pub-sub-and-mqtt-40dc643dcf82)

Les APIs modernes proposent une stratégie alternative: pouvoir s'inscrire à des changements et être notifié rapidement. C'est la stratégie de Push et c'est la base des Webhooks.

Webhooks

Les Webhooks sont basés sur un système d'évenement et passe par le protocole HTTP pour transmettre les données. La nature des événements dépendent de la logique business chaque application. Pour un CRM, ils est possible de s'inscrire aux événements de type "création de nouveau contact", "modification de contact", "suppression de contact", etc.
Le format des Webhooks n'est pas normé et il n'y a pas de spécification établie. Toutefois la plupart des acteurs utilisent le format JSON pour les données et applique des mécanismes de sécurité ou des stratégies de rappels (en cas d'indisponibilité de notre application au moment de la communication).
Voici un site que j'aurais aimé découvrir il y a 4 ans. Il s'agit d'un recueil de bonne pratique en matière de Webhooks (sécurité, documentations, exemples, tests, opérationnels) tant pour l'émetteur que pour le client/consommateur:

Prochainement, les Webhooks dans Symfony?

Et c'est encore tout frais, mais à l'occasion de la SymfonyCon 2022, une discussion est ouverte pour créer un composant afin de simplifier et normaliser la gestion des Webhooks (plus génériquement des "Remote Events") dans Symfony.
Pour conclure, les webhooks permettent souvent d'avoir des intégrations plus fluide et rapide en générant souvent un code plus simple (du point de vue du client) et en consommant moins de données sur le réseau. Pratique!

Continuer ma lecture

Auteur(s) de l'article

Basile
Basile

RayCast, à 2 clics de tout

Repos GitHub, pull requests, historique du presse-papiers… Et si tout cela tenait dans un seul raccourci clavier ?
Repos GitHub, pull requests, historique du presse-papiers… Et si tout cela tenait dans un seul raccourci clavier ?
Logo Raycast

Auteur(s) de l'article

Akira
Akira

Le workshop 100 images : comment nous définissons la direction visuelle d'une marque

Avant de dessiner quoi que ce soit, nous demandons à nos clients ce qui est désiré pour leur marque, et ce qui ne l'est pas. Voici comment notre workshop 100 images y répond, collectivement et en une seule session.
Avant de dessiner quoi que ce soit, nous demandons à nos clients ce qui est désiré pour leur marque, et ce qui ne l'est pas. Voici comment notre workshop 100 images y répond, collectivement et en une seule session.
Une main pose une pastille verte sur une planche d'illustrations imprimées, à côté de pastilles rouges.

Auteur(s) de l'article

Anthony
Anthony

Smashing Conference Freiburg 2026

Retour à Freiburg pour la Smashing Conference 2026: l'IA et les design systems, du CSS et du HTML très techniques, et des talks plus humains sur l'équipe et la posture. Voici ce qu'on en retient.
Retour à Freiburg pour la Smashing Conference 2026: l'IA et les design systems, du CSS et du HTML très techniques, et des talks plus humains sur l'équipe et la posture. Voici ce qu'on en retient.
Affiche de la Smashing Conference Freiburg 2026