Criando monitores
Os monitores são o recurso principal do DiffHook. Cada monitor monitora uma URL e dispara eventos quando o conteúdo é alterado.
Campos obrigatórios
| Campo | Tipo | Descrição |
|---|---|---|
label | corda | Nome abreviado do monitor |
url | corda | A URL para monitorar |
interval_minutes — Com que frequência verificar (opcional; padrões se aplicam). Os valores válidos incluem 5, 15, 30, 60, 360, 1440 (minutos).
notification_config — Objeto JSON opcional com substituições por monitor, por exemplo. { "webhook_url": "https://…", "email": "alerts@…" }. Se omitido, o webhook padrão do espaço de trabalho de Integrações será usado para entrega HTTP.
Campos opcionais
label — Um nome legível mostrado no painel. O padrão é o URL.
css_selector — Defina o escopo da comparação para um elemento DOM específico. Reduz o ruído de barras de navegação, banners de cookies e outros clichês.
{
"css_selector": "#pricing-table"
}
js_rendering — Use um navegador Chromium headless para renderizar a página antes de tirar um instantâneo. Obrigatório para aplicativos React/Vue/Angular que renderizam conteúdo do lado do cliente. Mais lento e que consome mais recursos – ative apenas quando a página realmente exigir JavaScript para exibir seu conteúdo.
Seletor JSON para API JSON
Os monitores da API JSON podem definir o escopo para um campo ou lista específica configurando json_selector.
Formulários de seletor suportados:
$→ objeto raiz$.field→ um campo na raiz$.a.b.c→ campo aninhado$.items[*]→ campo array ([*]é opcional e tratado como o próprio array)
Use identity_key quando seu seletor resolver para uma matriz de objetos. Isso classifica os itens por uma chave estável antes da comparação, o que evita diferenças barulhentas apenas para reordenar.
{
"json_selector": "$.items",
"identity_key": "id",
"track_additions_only": true
}
Exemplo: monitorar uma página de preços
Amostra de solicitação interativa (da especificação OpenAPI — alterne o idioma, copie ou Experimente):
Atualizando um monitor
Você pode atualizar qualquer campo mutável com uma solicitação PUT. Apenas os campos fornecidos mudam:
Pausando um monitor
Pausar um monitor interrompe a pesquisa. Monitores pausados não contam para nenhum limite do plano — nem a contagem de monitores nem o orçamento de verificação mensal. Isso faz com que a pausa seja a ferramenta certa sempre que você quiser parar temporariamente um monitor sem perder sua configuração ou liberar um slot permanente.
Cenários úteis: janelas de manutenção, fluxos de trabalho sazonais ou quando você está perto do orçamento e deseja liberar capacidade sem excluir um monitor.
Retomando um monitor
A retomada reativa um monitor pausado. O DiffHook valida os limites do plano no momento da retomada - se a retomada ultrapassar a contagem de monitores ativos, o orçamento de verificação mensal ou o orçamento de verificação de renderização JS, a solicitação será rejeitada com um 403. Atualize seu plano ou pause outro monitor primeiro.