Skip to content

Website change monitoring

Know what changed on the page you care about.

Track one public page’s text or selected fields on a schedule. Keep the baseline and history in your workspace, and send changes to your application through a signed webhook.

Useful for: Teams tracking public pricing pages, product availability, documentation updates, or other permitted sources.

The result you are aiming for
First successful check  →  baseline saved
Later successful check  →  fields compared
Changed content         →  diff + webhook
Failed fetch            →  failure, not a change

How a single-page monitor behaves

From the first request to a repeatable workflow

  1. 01

    Create a focused monitor

    Sign in, open Monitors, and enter a name and public URL. Choose Markdown, text, product output, or CSS fields. Tracking specific content reduces irrelevant changes from navigation, counters, and rotating page elements.

  2. 02

    Choose a schedule

    Select an hourly, daily, or weekly interval. The first successful check saves a baseline. Check History to confirm that the baseline contains the expected content before relying on future notifications.

  3. 03

    Connect your application if needed

    Add a public HTTPS webhook destination. Verify the HMAC-SHA256 signature over the exact request body using your account’s webhook signing secret. Deduplicate event IDs because delivery can be retried.

  4. 04

    Review differences and pause when finished

    Open History to inspect text or field changes. Check now requests an immediate follow-up. Pause the monitor to stop future scheduled checks. A fetch failure is recorded separately and must not become a false price or content change.

Make the API request

Create a key in Account and set it as FETCHRELAY_API_KEY in your environment. Keep it out of client-side code and source control.

curl --fail-with-body https://fetchrelay.com/api/monitors \
  -H "Authorization: Bearer $FETCHRELAY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "name": "Book price check",
  "url": "https://books.toscrape.com/catalogue/a-light-in-the-attic_1000/index.html",
  "formats": [
    "product"
  ],
  "extract": {
    "title": "h1",
    "price": ".price_color",
    "availability": ".availability"
  },
  "intervalMinutes": 1440
}'

This is a live request and uses account credits. See the OpenAPI reference for the complete response schema.

Check before you ship

  • The baseline contains the intended page or fields.
  • Your receiver verifies signatures and handles duplicate event IDs.
  • Paused monitors stop future checks; historical results remain available.

Know the limits

Monitors watch individual pages, not entire websites. The minimum interval is 60 minutes and the current account limit is 20 saved monitors. Customer notifications use webhooks, not a built-in email alert subscription. Scheduled monitors do not run interactive browser actions.

Common questions

Will I receive an email whenever a page changes?

Not directly from FetchRelay. Change notifications go to your configured webhook. Your application or automation can turn that notification into an email or message.

How many credits does monitoring use?

Each successful check uses one credit, including a check with no change. Failed extraction is not charged. Consider check frequency when choosing your allowance.

Does a blocked page count as a content change?

A recognized failed extraction is recorded as a failure, not a new baseline. Always test the target and baseline, especially on sites that return unusual error pages.

Try it on a page you actually need.

Inspect the output before committing to an integration. Create an account for 1,000 free monthly credits, saved jobs, monitors, and API keys. No credit card required.