content_revision est un entier monotone par établissement : il augmente à chaque modification du contenu publié (identité, horaires, menus, Carte unifiée). C’est le mécanisme recommandé pour savoir si vous devez re-lire l’API, purger un cache ou relancer un build.
content_revision est commun à tout l’établissement : une seule valeur couvre l’identité, les horaires et les menus. Vous n’avez donc qu’un seul jeton à suivre par établissement.Caractéristiques
Monotone
Strictement croissant. Une valeur plus grande = du contenu plus récent.
Par établissement
Une seule valeur pour tout l’établissement, quelle que soit la ressource.
Indépendant de la locale
Même valeur pour
fr et en : une révision couvre toutes les langues.Partout
Présent sur l’établissement, les horaires, la liste et le détail des menus, et dans le payload webhook.
Détecter un changement
Le principe : stocker la dernière révision connue, la comparer à celle reçue, et re-fetcher seulement si elle est supérieure.Pseudo-code
Exemple (JavaScript)
Poll + comparaison
Cache et clés par locale
Commecontent_revision est commun à toutes les locales, une même valeur invalide à la fois fr et en. Le contenu des menus, lui, diffère par locale. Mettez donc la locale dans votre clé de cache, mais utilisez la révision comme jeton d’invalidation :
68, les deux clés sont périmées et vous re-fetchez fr et en. Voir Sites multilingues.
Préférez les webhooks au polling
Le polling fonctionne, mais il interroge l’API à intervalle régulier même quand rien ne change. Les webhooks sortants vous notifient en temps réel : leur payload contient déjàcontent_revision et changed_resources, ce qui vous évite de deviner ce qui a bougé.
Webhooks sortants
L’approche recommandée pour invalider votre cache dès qu’un changement survient.