Page Change Monitor avatar

Page Change Monitor

Pricing

from $3.00 / 1,000 vérification effectuées

Go to Apify Store
Page Change Monitor

Page Change Monitor

Surveille une ou plusieurs pages web (contenu entier ou sélecteur CSS précis) et notifie un webhook dès qu'un changement ou un mot-clé est détecté. Conçu pour être planifié en boucle (Apify Scheduler) — revenu récurrent proportionnel à la fréquence de surveillance.

Pricing

from $3.00 / 1,000 vérification effectuées

Rating

0.0

(0)

Developer

Oussema Toumi

Oussema Toumi

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Monitors one or more web pages (full content or a precise CSS selector) and notifies a webhook as soon as a change is detected, or when a watched keyword appears/disappears. Designed to run on a schedule via the Apify Scheduler (e.g. every hour, every day) - that is what turns it into a true recurring revenue source instead of a one-shot.

Input

FieldTypeDescription
monitorsarrayList of { url, selector? , keyword? }
webhookUrlstringURL called with a POST on each notification. Optional: if empty, notifications are only logged.
notifyOnlyOnChangeboolIf false, also notifies when nothing changed (heartbeat mode)

Example input:

{
"monitors": [
{ "url": "https://example.com", "selector": "", "keyword": "" },
{ "url": "https://news.ycombinator.com", "selector": "a.titlelink", "keyword": "AI" }
],
"webhookUrl": "https://your-app.example.com/hooks/page-changed",
"notifyOnlyOnChange": true
}

How it works

  1. On each run, the actor fetches the content of every page (or of the given CSS selector).
  2. It compares a hash of the current content with the hash of the last run, stored in the actor's default Key-Value Store (persists across scheduled runs).
  3. If the content changed (or the watched keyword appeared/disappeared), it notifies webhookUrl with the details, then updates the stored state.

The first run of a new monitor has no previous state, so it is counted as "changed" and triggers a notification - documented behavior, not a bug.

Setting up scheduling

In the Apify Console: Actor → Schedules → Create new schedule, set the frequency (e.g. 0 * * * * for hourly) and the same Input (monitors + webhookUrl). This recurring schedule is what generates the recurring revenue.

Pricing (pay-per-event)

  • check-performed — $0.003 — per URL checked, on every scheduled run
  • change-detected — $0.01 — additionally, when a change is detected AND the webhook was notified successfully

Example: 5 URLs monitored every hour (720 checks/month), with ~30 detected changes in the month ≈ (720 × $0.003) + (30 × $0.01) = $2.16 + $0.30 = $2.46/month per user monitoring 5 pages - revenue grows with the number of users and monitored pages, with no extra infrastructure cost on your side (everything runs on Apify).

Technical notes

  • No GPU required, no external API key required for the base version (no LLM involved).
  • A failed fetch for a URL is never charged.
  • State is stored under a key derived from url + selector - two monitors on the same URL with different selectors are tracked independently.