Comment fonctionne la synchronisation de calendriers par webhook
« Webhook » a une consonance technique, mais le concept est on ne peut plus quotidien : c'est une sonnette pour logiciels. Au lieu qu'un service de synchronisation de calendriers frappe sans cesse à la porte de Google ou de Microsoft en demandant « du nouveau ? », c'est le fournisseur qui sonne à la porte du service dès qu'un changement survient. Cette inversion - le fournisseur prévient le service, plutôt que le service interroge le fournisseur - est le fondement même de la synchronisation de calendriers rapide et moderne.
Cette page explique ce qu'est un webhook, comment Google et Microsoft les implémentent pour les calendriers, et comment un service de synchronisation transforme un flux de signaux « quelque chose a changé » en une synchronisation bidirectionnelle fiable.
Un webhook est un rappel vers une URL
Un webhook n'est qu'un accord : « Quand X se produit, envoie un message à cette adresse web. » Le service de synchronisation enregistre une URL auprès du fournisseur de calendrier et lui dit, en somme, appelle ce point d'accès chaque fois que ce calendrier change. À partir de là, c'est le fournisseur qui appelle. Le service n'a plus besoin d'interroger, puisqu'on le prévient.
La notification elle-même est généralement légère - souvent à peine plus que « le calendrier A a changé ». C'est un déclencheur, pas une charge utile. Ce détail compte autant pour la rapidité que pour la confidentialité : les véritables données de l'événement ne voyagent pas dans le webhook ; elles sont récupérées séparément via l'API authentifiée, uniquement en cas de besoin.
Comment les deux fournisseurs s'y prennent
Les mécanismes diffèrent légèrement, mais la forme est la même :
- Google Agenda - canaux de notification push. Le service appelle la méthode
watchde Google sur un calendrier pour ouvrir un canal. Google envoie ensuite une notification HTTP au point d'accès enregistré dès que ce calendrier change. Les canaux expirent, le service les renouvelle donc selon un calendrier régulier. - Microsoft Graph - abonnements aux notifications de changement. Le service crée un abonnement au calendrier d'un utilisateur. Microsoft envoie une notification de changement au point d'accès lorsque des événements sont ajoutés, modifiés ou supprimés. Les abonnements expirent eux aussi et sont renouvelés automatiquement.
Dans les deux cas, le fournisseur est la partie active. Calendar Family enregistre et renouvelle ces abonnements pour vous en arrière-plan - il n'y a rien à configurer.
De « quelque chose a changé » à un événement synchronisé
Un webhook indique au service *qu'*un changement s'est produit, pas lequel. Le déroulement est donc le suivant :
- La notification arrive au point d'accès du service : le calendrier A a changé.
- Le service récupère le delta auprès du fournisseur A à l'aide d'un jeton de synchronisation - un signet qui lui permet de ne demander que les nouveautés depuis la dernière fois, au lieu de relire tout le calendrier.
- Le service convertit le changement - événement, règle de récurrence, fuseau horaire - au format du fournisseur B.
- Il écrit le changement dans le calendrier B via l'API authentifiée de B.
- Le changement apparaît dans le calendrier B, généralement en une minute environ.
Comme l'étape 2 utilise un jeton de synchronisation, le service déplace le minimum de données et n'a jamais à parcourir un calendrier entier pour retrouver une seule modification.
Conçu pour tolérer les signaux manqués
Les réseaux perdent des messages ; les abonnements expirent parfois. Une bonne synchronisation par webhook ne présume pas de la perfection. Le jeton de synchronisation est le filet de sécurité : à tout moment, le service peut demander au fournisseur « qu'est-ce qui a changé depuis ce signet ? » et réconcilier. Une notification manquée ne provoque donc pas de dérive silencieuse - elle est rattrapée et corrigée à la synchronisation suivante. C'est cette combinaison de notifications push pour la rapidité et de jetons de synchronisation pour l'exactitude qui rend le résultat à la fois rapide et fiable.
Pourquoi c'est bon pour la confidentialité aussi
Comme le webhook n'est qu'un déclencheur et que les données sont récupérées via l'API officielle authentifiée, le contenu de vos événements ne se retrouve pas disséminé dans des charges utiles de notification. Calendar Family s'appuie sur ce mécanisme : un accès via l'API officielle que vous accordez et pouvez révoquer, en ne récupérant que ce qui a changé. Voir la synchronisation de calendriers est-elle sûre et confidentielle ? pour le traitement complet, et temps réel contre interrogation pour comprendre pourquoi l'approche par webhook l'emporte. La vue d'ensemble de la synchronisation en temps réel relie le tout.
Calendar Family est gratuit.