CrawlForge MCP
HomePlaygroundUse CasesIntegrationsPricingDocumentationBlog
Competitor Monitoring API for RevOps: No Scraper to Run
Use Cases
Back to Blog
Use Cases

Competitor Monitoring API for RevOps: No Scraper to Run

C
CrawlForge Team
Engineering Team
September 7, 2026
4 min read

On this page

Quick Answer

A competitor monitoring API for RevOps replaces the scraper-and-cron loop with one POST. CrawlForge's hosted monitors take up to 20 URLs, a five-field cron schedule and a timezone, run the checks on their own scheduler, diff each page against its previous check, and deliver the result by email or signed webhook. There is no per-monitor fee and management calls are free; each check holds 3 credits per target — the track_changes price — and charges nothing for a target that came back blocked or errored, so five competitor pages checked every morning is about 450 credits a month. Every delivery carries an HMAC-SHA256 signature and a retry-stable X-Webhook-ID, so a handler can verify it and deduplicate before it opens a CRM task. What it does not do is hold contact or firmographic data: it monitors pages you point it at, above whatever database your enrichment already runs on.

Competitor pricing changes on a Tuesday. The revenue team hears about it on Thursday, from a rep who lost the deal on Wednesday.

The usual fix is a scraper: a cron job, a headless browser, a diff, a Slack post — owned by whoever had spare time last quarter. It works for about a month. Then a layout shifts or the box it runs on rotates, and nobody notices it stopped, because a monitor finding nothing and a monitor that is dead produce exactly the same silence.

A competitor monitoring API for RevOps moves the running part off your side. You describe what to watch; the checks, the diffing and the retries become somebody else's uptime problem.

What does a competitor monitoring API do for RevOps?

You POST one monitor — up to 20 URLs, a cron schedule, and where the results go. CrawlForge's scheduler runs the checks, diffs each page against the previous one, and delivers what changed.

Bash
curl -X POST https://crawlforge.dev/api/v1/monitors \
  -H "X-API-Key: cf_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "competitor pricing",
    "targets": [
      { "url": "https://competitor-a.com/pricing", "selector": ".pricing-table" },
      { "url": "https://competitor-b.com/pricing", "selector": "main" }
    ],
    "schedule_cron": "0 7 * * 1-5",
    "timezone": "America/New_York",
    "notify_emails": ["revops@example.com"],
    "webhook_url": "https://example.com/hooks/crawlforge"
  }'

The selector decides whether this survives contact with a real website. Scope the diff to the pricing table and a navigation redesign is not a pricing event; leave it off and every marketing tweak fires.

The first check of a target captures a baseline and reports new. Every check after that diffs against the previous check and rolls the baseline forward, so what reaches you is "changed since last time" rather than "changed since some Tuesday in March". Nothing runs on your infrastructure: the scheduler wakes every five minutes and starts whatever is due. The full endpoint reference is in the docs.

How does the signal reach the rest of the stack?

Over a webhook, which is the reason this belongs in a RevOps stack rather than in somebody's browser tab. Each check sends a monitor.page event for every page that is not unchanged, then one monitor.check.completed summary.

The page payload carries change_percent, added_count and removed_count, plus up to 20 sample lines from each side of the diff — enough for a handler to decide without fetching anything itself:

  • change_percent past your threshold on a pricing URL — open the task, post to the deal channel, page the PMM.
  • Anything else — log it and move on.

Two headers matter. X-Webhook-Signature is sha256= followed by an HMAC-SHA256 of the raw body, keyed with the monitor's webhook_secret (returned on create and on a single-monitor GET, never in a list) — verify it before you parse. X-Webhook-ID is stable across retries, and there are up to four attempts, so deduplicate on it or one competitor price change becomes four CRM tasks.

What does watching a competitor cost?

There is no per-monitor fee, and creating, listing or pausing a monitor is free. Each check holds 3 credits per target — the track_changes price — and keeps them for targets that come back new, changed or unchanged. Targets that came back blocked or error are not charged, so a Cloudflare wall costs nothing.

ScheduleTargetsRuns / 30 daysCredits / month
0 9 * * *530450
0 * * * *17202,160
*/15 * * * *12,8808,640

Every monitor reports its own estimated_credits_per_month, which is the ceiling — the figure assumes every target is fetched and compared on every run. Five competitor pages checked each morning is 450 credits a month, so the free tier's one-time 1,000 credits cover the first two months of it.

What won't it do?

It reads pages you point it at. It holds no contact records, no firmographics and no org charts, so it does not replace the database your enrichment runs on — it is the monitoring layer above your own sources. Two limits are worth knowing before you wire it in: robots.txt is always respected with no override, so a disallowed path reports error with ROBOTS_DISALLOWED on every check and is never charged, and consecutive runs must be at least five minutes apart.

If you would rather have Claude read and summarise each diff than route it in a webhook handler, that loop is a different post, and track_changes is the same primitive to call by hand.

Start free with 1,000 credits, or create the first monitor from the dashboard and read a real payload before you write any code.

Try this yourself — no signup needed

Run any of the 30 CrawlForge scraping and extraction tools available in the playground, then start free with 1,000 credits.

1,000 free credits • One-time • No credit card required

Tags

revopscompetitor monitoringmonitorstrack_changesb2b

About the Author

C

CrawlForge Team

Engineering Team

Building the most comprehensive web scraping MCP server. We create tools that help developers extract, analyze, and transform web data for AI applications.

Stay updated with the latest insights

Get tutorials, product updates, and web scraping tips delivered to your inbox.

No spam. Unsubscribe anytime.

Put this into practice

Test CrawlForge's tools on any URL — free, no signup.

On this page

Frequently Asked Questions

Do I have to run anything on my side?+

No. The monitor lives on CrawlForge: its scheduler wakes every five minutes and starts every check whose slot has passed, so a check begins within five minutes of its scheduled time whether or not anything of yours is up. You need a URL that can receive a POST, or just an email address. An account holds up to 50 monitors, each with up to 20 targets.

How is a hosted monitor different from calling track_changes myself?+

track_changes is the primitive — create_baseline once, then compare whenever you call it — and the calling, the schedule and the retries are yours to own. A hosted monitor wraps the same comparison in a schedule CrawlForge runs, a check history you can read back, and webhook delivery with retries. The per-target price is identical at 3 credits, so the difference is who operates the loop, not what it costs.

What happens when a competitor blocks the check?+

The target comes back with status blocked and a blocked_vendor naming the wall — Cloudflare, DataDome, PerimeterX, Akamai and others are detected — and it is never reported as a change, which matters because a challenge page would otherwise look like the page being rewritten. Blocked and errored targets are not charged, so a competitor turning on bot protection costs you nothing but the signal.

Can it enrich accounts with contact or firmographic data?+

No. CrawlForge owns no emails, phone numbers, org charts or company records; it reads pages you point it at. For RevOps that makes it the research and monitoring layer above your sources rather than a replacement for the enrichment database you already pay for. The honest use is watching pages that matter — pricing, changelogs, careers, status — and routing what changed into the systems you already run.

Related Articles

Competitor Monitoring API for Consultants: One Per Client
Use Cases

Competitor Monitoring API for Consultants: One Per Client

Fifty monitors, twenty URLs each, one per client. Pausing keeps the baseline, so a dormant engagement bills nothing and loses no history.

C
CrawlForge Team
|
Sep 11
|
5m
Competitor Monitoring API Pay As You Go: What a Check Costs
Use Cases

Competitor Monitoring API Pay As You Go: What a Check Costs

Monitoring plans meter pages and seats. CrawlForge meters one thing — a target actually compared, at 3 credits, about $0.009 a check.

C
CrawlForge Team
|
Sep 9
|
4m
MCP Server for Due Diligence: What an Agent Can Verify
Use Cases

MCP Server for Due Diligence: What an Agent Can Verify

It will not hand you a registry database. What it adds is a traceable path from every line of the memo back to the page it came from.

C
CrawlForge Team
|
Sep 4
|
4m

Footer

CrawlForge MCP

Enterprise web scraping for AI Agents. 31 specialized MCP tools designed for modern developers building intelligent systems.

Product

  • Features
  • Playground
  • Pricing
  • Use Cases
  • Integrations
  • Alternatives
  • Changelog

Resources

  • Getting Started
  • API Reference
  • Templates
  • Guides
  • Blog
  • Glossary
  • FAQ
  • Sitemap

Developers

  • MCP Protocol
  • Claude Desktop
  • Cursor IDE
  • LangChain
  • LlamaIndex

Company

  • About
  • Contact
  • Privacy
  • Terms
  • Acceptable Use
  • Security
  • Cookies

Stay updated

Get the latest updates on new tools and features.

Built with Next.js and MCP protocol

© 2025-2026 CrawlForge. All rights reserved.