Point Cambio at any URL, choose your interval and define what counts as a real change. We run the schedulers, fetches, and storage—you get webhooks and structured payloads into your own systems.
await cambio.monitor.create({
url: "https://releases.example.com/changelog",
match: "semver headings + breaking section",
interval: "5m",
webhook: "https://api.yours.dev/hooks/releases",
});Why Cambio
Retail pages, release notes, and signup flows update constantly. Building your own parser mesh for every target does not scale. Cambio keeps checks and normalization in one hosted layer so your services subscribe to outcomes, not HTML archaeology.
If nothing persists between checks, you cannot explain a price move or a quiet Terms tweak from Tuesday to Thursday. Cambio stores versioned captures for every monitor so your stack diffs, replays, and webhooks run on retained history—not guesswork from the latest fetch.
Ads, A/B tests, and timestamps create endless false positives. Cambio focuses on the signal you define—inventory, headings, prices, body copy—so only meaningful web activity becomes an event in your pipeline.
How it works
POST the page to watch, the interval, and what should count as a change—plain language for fuzzy targets, or selectors and paths when you want hard guarantees.
POST /v1/monitors
Authorization: Bearer sk_live_•••
{
"url": "https://shop.example.com/sneakers/drop-page",
"match": "size 10 in stock OR price below 160",
"interval": "30s",
"webhook": "https://api.yours.dev/hooks/cambio"
}Every check writes another entry in version history: capture time, snapshot id, and a stable hash of the normalized page. Rules evaluate against that chain—most hashes produce no event; your webhook fires only when the diff crosses what you defined.
{
"monitor_id": "mon_8f2a",
"url": "https://shop.example.com/sneakers/drop-page",
"version_history": [
{
"seq": 1,
"captured_at": "2026-05-10T14:00:08Z",
"snapshot_id": "snap_k9mw",
"normalized_body_hash": "sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
{
"seq": 2,
"captured_at": "2026-05-10T14:05:08Z",
"snapshot_id": "snap_k9n1",
"normalized_body_hash": "sha256:2c26b46b68ffc68ff99b453c1d30413408132f176fe180af299da62f29cb9229",
"diff_vs_previous": {
"rule_matched": false,
"reason": "timestamp noise only"
}
}
]
}On a match, POST a structured payload to your HTTPS endpoint—or forward into queues and workers you already run. Same contract for sneaker drops, changelog lines, or pricing tables.
POST https://api.yours.dev/hooks/cambio
{
"monitor_id": "mon_8f2a",
"url": "https://shop.example.com/sneakers/drop-page",
"detected_at": "2026-05-10T14:22:08Z",
"change": {
"type": "inventory",
"summary": "Size 10 now listed as in stock",
"before": { "sizes_in_stock": ["8", "9"] },
"after": { "sizes_in_stock": ["8", "9", "10"] }
}
}Built for builders
Treat public URLs like upstream dependencies: versioned captures, explicit match rules, and HTTP callbacks into the services you already operate—SQS, Lambdas, background workers, or a simple API route.
Use natural-language descriptions when the layout is messy, or pin CSS selectors and JSON paths when you need deterministic diffs. Same pipeline for both.
Receive summaries plus before and after fields you can branch on in code—ideal for driving checkout bots, ticket bots, or internal dashboards without re-parsing HTML yourself.
No fleet of cron containers or scraper workers to patch. Retries, jitter, and capture live in Cambio so your infra stays a consumer of events, not a mirror of every target site.
From sub-minute checks for hot inventory to hourly passes on docs. Tune how aggressively you poll; we keep the operational load out of your VPC.
Use cases
Any workflow that depends on the public web changing—commerce, events, compliance, observability—gets the same building blocks: scheduled checks, durable captures, and outbound events you own end to end.
Watch PDPs and queue pages for SKU, size, or price changes. Fire a webhook the moment the DOM or JSON bundle shows stock—your bot or checkout flow handles the rest.
Race signups for marathons, concerts, and limited drops. Cambio holds the polling and diffing; you keep business logic in your own worker pool.
Track vendor changelogs, SDK release notes, and semver pages. Get an event when a breaking section appears—not when the footer copyright year ticks.
Monitor competitor landing pages, pricing tables, and feature grids. Ship alerts to Slack or an internal pricing service when copy or numbers shift.
Diff privacy policies, terms, and security advisories with history you can point to for audit or GRC workflows.
Watch status.example.com, maintenance banners, or API doc incident boxes. Turn vendor outages into automated runbooks or customer comms.
POST structured payloads straight to API Gateway, SQS consumers, or a Vercel route. Cambio is the sensor; your existing infra stays the brain.
Pricing
Early access
We are onboarding teams that already feel the pain of bespoke scrapers and brittle cron jobs. Drop your URLs and use cases—drops, changelogs, pricing, compliance—and we slot you into the right beta cohort.