Création de moniteurs
Les moniteurs sont la ressource principale de DiffHook. Chaque moniteur surveille une URL et déclenche des événements lorsque le contenu change.
Champs obligatoires
| Champ | Type | Descriptif |
|---|---|---|
label | chaîne | Nom abrégé du moniteur |
url | chaîne | L'URL à surveiller |
interval_minutes : à quelle fréquence vérifier (facultatif ; les valeurs par défaut s'appliquent). Les valeurs valides incluent 5, 15, 30, 60, 360, 1440 (minutes).
notification_config — Objet JSON facultatif avec remplacements par moniteur, par ex. { "webhook_url": "https://…", "email": "alerts@…" }. En cas d'omission, le webhook par défaut de l'espace de travail de Integrations est utilisé pour la livraison HTTP.
Champs facultatifs
label — Un nom lisible par l'homme affiché dans le tableau de bord. La valeur par défaut est l'URL.
css_selector — Limitez la différence à un élément DOM spécifique. Réduit le bruit des barres de navigation, des bannières de cookies et autres éléments passe-partout.
{
"css_selector": "#pricing-table"
}
js_rendering — Utilisez un navigateur Chromium sans tête pour afficher la page avant de prendre un instantané. Requis pour les applications React/Vue/Angular qui restituent le contenu côté client. Plus lent et plus gourmand en ressources : activez-le uniquement lorsque la page nécessite réellement JavaScript pour afficher son contenu.
Sélecteur JSON pour l'API JSON
Les moniteurs de l'API JSON peuvent étendre les différences à un champ ou une liste spécifique en définissant json_selector.
Formulaires de sélection pris en charge :
$→ objet racine$.field→ un champ à la racine$.a.b.c→ champ imbriqué$.items[*]→ champ tableau ([*]est facultatif et traité comme le tableau lui-même)
Utilisez identity_key lorsque votre sélecteur se résout en un tableau d'objets. Cela trie les éléments selon une clé stable avant la comparaison, ce qui évite les différences bruyantes de réorganisation uniquement.
{
"json_selector": "$.items",
"identity_key": "id",
"track_additions_only": true
}
Exemple : surveiller une page de tarification
Exemple de requête interactive (de la spécification OpenAPI : changer de langue, copier ou Essayez-le) :
Mettre à jour un moniteur
Vous pouvez mettre à jour n'importe quel champ mutable avec une requête PUT. Seuls les champs à condition de changer :
Mettre un moniteur en pause
La mise en pause d'un moniteur arrête l'interrogation. Les moniteurs en pause ne sont pris en compte dans aucune limite de plan : ni le nombre de moniteurs, ni le budget de contrôle mensuel. Cela fait de la pause le bon outil chaque fois que vous souhaitez arrêter temporairement un moniteur sans perdre sa configuration ni libérer un emplacement permanent.
Scénarios utiles : fenêtres de maintenance, flux de travail saisonniers ou lorsque vous êtes proche de votre budget de contrôle et que vous souhaitez libérer de la capacité sans supprimer de moniteur.
Reprise d'un moniteur
La reprise réactive un moniteur en pause. DiffHook valide les limites du plan au moment de la reprise : si la reprise vous pousse à dépasser le nombre de moniteurs actifs, le budget de vérification mensuel ou le budget de vérification du rendu JS, la demande est rejetée avec un 403. Mettez à niveau votre forfait ou mettez d'abord en pause un autre moniteur.