Vendor Policy Change Monitor avatar

Vendor Policy Change Monitor

Pricing

$10.00 / 1,000 successful policy page checks

Go to Apify Store
Vendor Policy Change Monitor

Vendor Policy Change Monitor

Monitor public vendor terms, privacy, DPA, and security-policy pages. Get a structured baseline, change status, and a concise text diff for each URL.

Pricing

$10.00 / 1,000 successful policy page checks

Rating

0.0

(0)

Developer

Maarten Vreeburg

Maarten Vreeburg

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Share

Monitor public vendor Terms of Service, Privacy Policy, DPA, Security, SLA, and acceptable-use pages for text changes. Each run emits one structured dataset record per URL, with a stable content hash and a concise diff when a previously seen page changes.

This is a lightweight procurement and vendor-management utility: it helps teams keep an audit trail of changes without manually revisiting every vendor policy page. It does not provide legal advice or determine whether a change is material.

Input

FieldRequiredDescription
monitorIdYesStable, unique ID for one independent watchlist, e.g. procurement-acme-vendors. This prevents snapshot collisions between watchlists.
urlsYes1–100 public http/https policy-page URLs.
selectorNoSimple tag (main), ID (#policy), class (.terms), or body. If it does not match, the Actor safely falls back to readable body text and marks selector_matched: false.
ignorePatternsNoRegexes removed before comparison, useful for dates or rotating banners.
timeoutSecondsNoPer-URL request timeout, 5–120 seconds (default 30).
includeUnchangedTextNoInclude a preview on unchanged results (default false).

The default input checks the stable public IANA reserved-domains page, so it is suitable for a quick QA run. Replace monitorId and urls before setting a schedule.

Output

Every URL produces one dataset record.

statusMeaning
initial_snapshotFirst successful check for this monitorId + URL. A baseline was stored.
unchangedThe normalized text has not changed since the last successful check.
changedThe text changed. The record includes a truncated unified diff and current preview.
fetch_errorThe page could not be retrieved or no readable text was extracted. No prior baseline is overwritten.

Common fields include url, final_url, checked_at, http_status, content_hash, previous_hash, selector_matched, text_length, and state_store_mode.

Pricing

The Actor charges for one policy_page_check event only after it successfully fetches, extracts, compares, and stores a policy-page snapshot. Invalid URLs and fetch_error records are not charged. The current Store price is shown on the Actor listing.

Persistence and scheduling

Successful snapshots are stored in the named key-value store vendor-policy-change-monitor-state-v1, rather than in run-scoped default storage. This allows scheduled cloud runs to compare against prior successful runs. Use a unique monitorId for each independent watchlist. The Actor stores normalized public-page text to create a later diff; do not use it for confidential or authenticated URLs.

Schedule the Actor daily or weekly in Apify. Use dataset integrations, webhooks, or your own downstream workflow to route changed records to the appropriate review process.

Local development

python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
APIFY_LOCAL_STORAGE_DIR=./local-storage .venv/bin/python -m src.main

For a custom local input, create local-storage/key_value_stores/default/INPUT.json before running. The Docker image uses Apify's Python 3.11 base image.

Limitations

  • Monitors publicly accessible HTML only; it does not log in, bypass access controls, or solve CAPTCHAs.
  • JavaScript-rendered content that is absent from the initial response may require a source page with server-rendered policy text.
  • The text diff is an operational signal, not a legal interpretation. Review source pages and consult qualified counsel for legal decisions.