NewIntroducing semantic snapshotsPair every capture with structured DOM data →

Web monitors

Monitors that watch pages for you

Create a monitor in the dashboard, point it at a URL, and get a signed webhook the moment something you care about changes — no parsing rules, no cron server. Monitors are configured in the dashboard only: there is no monitor endpoint in the public API, and the webhooks they deliver use the same signing and replay contract as durable jobs.

Monitor configuration
{
  "name": "Pricing page watch",
  "target_url": "https://example.com/pricing",
  "interval_minutes": 60,
  "check_title": true,
  "check_status_code": true,
  "check_markdown": true,
  "check_links": true,
  "check_dom": true,
  "dom_position_tolerance_px": 10,
  "notify_webhook_url": "https://hooks.example.com/domscout"
}

Monitoring capabilities

Schedules that fit the page

Check every 60 minutes on Pro, every 15 on Business, or every 5 on Enterprise. Pick the cadence your page actually changes at — not the one your cron will allow.

Checks that mean something

Watch titles, HTTP status codes, rendered Markdown content, broken links, and element position on the page. Each check is a deliberate signal, not a byte-for-byte diff of messy HTML.

Webhooks you can trust

Alerts are signed with a per-monitor secret, retried at 1, 5, 15, and 60 minutes, and replayable without launching Chromium.

History and diffs in the dashboard

Every run keeps a snapshot and a diff you can read — visual proof of exactly what changed and when, with retention that follows your plan.

How change monitoring works

A schedule, a set of signals worth watching, and a webhook when one of them moves — with the snapshot that proves it.

  1. Step 1

    Point a monitor at a URL

    Create it in the dashboard: the page to watch, how often to check it, and which signals count as a change - title, HTTP status, rendered Markdown, links, or the on-page position of an element within a pixel tolerance you set.

  2. Step 2

    It captures on your schedule

    Each run renders the page in the same Chromium the capture API uses and stores a snapshot. Checks run every 60 minutes on Pro, every 15 on Business, and every 5 on Enterprise, subject to the service's launch controls.

  3. Step 3

    You get a signed webhook, and a diff to read

    When a watched signal changes, the alert is delivered signed and retried at 1, 5, 15, and 60 minutes; a missed one replays without launching a browser again. Every run keeps its snapshot and diff in the dashboard for the retention your plan allows.

Monitoring questions, answered

What a monitor watches, how often it runs, how alerts are delivered, and what happens when delivery fails.

Create a monitor in the dashboard, give it the URL and an interval, and choose which signals count as a change. Each run renders the page and compares it against the previous snapshot; when a watched signal differs you get a signed webhook and a readable diff.

Give your product a browser.

Get clean web content and visual proof into your workflow in minutes.