Creazione di monitor
I monitor sono la risorsa principale di DiffHook. Ciascun monitor controlla un URL e attiva eventi quando il contenuto cambia.
Campi obbligatori
| Campo | Tipo | Descrizione |
|---|---|---|
label | stringa | Nome abbreviato del monitor |
url | stringa | L'URL da monitorare |
interval_minutes: la frequenza con cui controllare (facoltativo; si applicano le impostazioni predefinite). I valori validi includono 5, 15, 30, 60, 360, 1440 (minuti).
notification_config: oggetto JSON opzionale con sostituzioni per monitor, ad es. { "webhook_url": "https://…", "email": "alerts@…" }. Se omesso, per la consegna HTTP viene utilizzato il webhook predefinito dell'area di lavoro da Integrazioni.
Campi facoltativi
label: un nome leggibile mostrato nel dashboard. Il valore predefinito è l'URL.
css_selector — Limita il diff a un elemento DOM specifico. Riduce il rumore proveniente dalle barre di navigazione, dai banner dei cookie e da altri elementi standard.
{
"css_selector": "#pricing-table"
}
js_rendering: utilizza un browser Chromium headless per eseguire il rendering della pagina prima di scattare uno snapshot. Obbligatorio per le app React/Vue/Angular che eseguono il rendering dei contenuti lato client. Più lento e dispendioso in termini di risorse: attivalo solo quando la pagina richiede effettivamente JavaScript per visualizzare il suo contenuto.
Selettore JSON per API JSON
I monitoraggi dell'API JSON possono definire l'ambito delle differenze in un campo o elenco specifico impostando json_selector.
Moduli di selezione supportati:
$→ oggetto radice$.field→ un campo sulla radice$.a.b.c→ campo annidato$.items[*]→ campo array ([*]è opzionale e trattato come l'array stesso)
Usa identity_key quando il tuo selettore si risolve in un array di oggetti. Questo ordina gli elementi in base a una chiave stabile prima della differenza, evitando così rumorose differenze di solo riordino.
{
"json_selector": "$.items",
"identity_key": "id",
"track_additions_only": true
}
Esempio: monitoraggio di una pagina dei prezzi
Esempio di richiesta interattiva (dalle specifiche OpenAPI: cambia lingua, copia o Provalo):
Aggiornamento di un monitor
Puoi aggiornare qualsiasi campo modificabile con una richiesta PUT. Cambiano solo i campi forniti:
Mettere in pausa un monitor
La messa in pausa di un monitor interrompe il polling. I monitor in pausa non contano ai fini del limite del piano: né il conteggio dei monitor, né il budget di controllo mensile. Ciò rende la messa in pausa lo strumento giusto ogni volta che desideri arrestare temporaneamente un monitor senza perderne la configurazione o liberare uno slot permanente.
Scenari utili: finestre di manutenzione, flussi di lavoro stagionali o quando sei vicino al budget di controllo e desideri liberare capacità senza eliminare un monitor.
Riprendere un monitor
La ripresa riattiva un monitor in pausa. DiffHook convalida i limiti del piano al momento del ripristino: se il ripristino ti spinge oltre il conteggio dei monitor attivi, il budget di controllo mensile o il budget di controllo del rendering JS, la richiesta viene rifiutata con 403. Aggiorna il tuo piano o metti prima in pausa un altro monitor.