Docs · changelog

Public docs, changelog, and migration-guide drift for RAG feeds

This Actor snapshots public release notes, changelogs, migration guides, and docs pages you list on targets[], then emits summary-first rows when those surfaces change. Live key is targets[] — README examples that send urls/emitChangedOnly are not schema fields.

Not a private npm/PyPI registry client, not CI, and not authenticated docs. Public HTTP only.

from $9.00 / 1,000 delivered monitoring result rows ($0.009 per new or changed row). No Actor Start. Unchanged runs are free.

Open Docs & Changelog Drift Scraper on Apify

Docs & Changelog Drift Scraper, not a neighboring Actor

Use this page for this Actor’s job. Use Website Content Extractor for One-shot docs markdown; Use Article Content Extractor for Article body extract; Use Status Page Incident Digest Monitor for Incidents.

This Actor Website Content Extractor Article Content Extractor Status Page Incident Digest Monitor
Intent Docs & Changelog Drift Scraper One-shot docs markdown Article body extract Incidents
Primary input targets urls article urls status pages
What it reads Public sources listed on the Store page HTML article HTML status sites
Primary output Dataset rows billed per live PPE markdown clean article incident rows
Not this job Not a private npm/PyPI registry client, not CI, and not authenticated docs. Public HTTP only. Not recurring changelog diffs Not product changelog watches Not docs/changelog drift

Store ID: taroyamada/docs-changelog-drift-monitor. Respect source terms, robots.txt, and rate limits.

Use cases

How is Docs & Changelog Drift Scraper different from Website Content Extractor and Article Content Extractor?

Docs & Changelog Drift Scraper (taroyamada/docs-changelog-drift-monitor): This Actor snapshots public release notes, changelogs, migration guides, and docs pages you list on targets[], then emits summary-first rows when those surfaces change. Live key is targets[] — README examples that send urls/emitChangedOnly are not schema fields. Not a private npm/PyPI registry client, not CI, and not authenticated docs. Public HTTP only. Website Content Extractor is for One-shot docs markdown (input urls; HTML; markdown). Not recurring changelog diffs. Article Content Extractor is for Article body extract (input article urls; article HTML; clean article). Not product changelog watches. Status Page Incident Digest Monitor is for Incidents (input status pages; status sites; incident rows). Not docs/changelog drift.

What input is required?

Live required fields: targets. exampleRunInput watches Next.js release atom + caching docs and Crawlee changelog/upgrade guide. datasetMode default changes_only. email delivery is a placeholder enum.

Field Type Default Notes
targets array required empty Targets (one summary row each). List of products or repos to monitor. Each item supports id, name, repo, criticality, owner, tags, releaseNotesUrl, changelogUrl, migrationGuideUrl, docsPages[], and optional per-surfac…
requestTimeoutSeconds integer 30 Request timeout (seconds). Maximum time to wait for one public source request before the actor marks the surface as failed for this run.
userAgent string empty Custom User-Agent. Optional custom User-Agent string for public HTTP requests. Leave empty to use the actor default identifier.
maxChars integer 35000 Global max chars per surface. Upper bound for extracted text per monitored surface before hashing and diff generation.
delivery string dataset Delivery mode. Choose whether summary-first target rows should be written to the dataset, posted to a webhook payload, or reserved for a future email delivery path.
datasetMode string changes_only Dataset mode. Controls which target rows are persisted: only action-needed rows, only changed rows, or every monitored target.
webhookUrl string empty Webhook URL. Webhook destination for summary payload delivery when delivery is set to webhook.
notifyOnNoChange boolean false Notify even if no change. If true, webhook delivery still fires even when no target crosses the change threshold in this run.
snapshotKey string docs-changelog-drift-monitor-snapshots Snapshot key. Stable key used to load and save previous surface snapshots between recurring runs.
diffMode string line_summary Diff mode. Use line summaries for concise change evidence or hash-only mode when you only need changed versus unchanged detection.
summaryMaxLines integer 12 Max diff lines per surface. Maximum number of added and removed lines to keep in each surface-level change summary.
concurrency integer 2 Concurrency. How many public surfaces the actor may fetch in parallel during one run.
batchDelayMs integer 250 Inter-batch delay (ms). Delay between fetch batches to soften load on public docs sources and reduce timeout pressure.
nowIso string empty Override current time (ISO). Optional ISO timestamp override for deterministic fixture tests, backfills, or proof snapshots.
dryRun boolean false Dry run. If true, the actor skips snapshot writes and remote delivery while still producing the local summary output.

Published Store example run input (omitted fields take schema defaults):

{
  "targets": [
    {
      "id": "nextjs",
      "name": "Next.js",
      "repo": "vercel/next.js",
      "criticality": "high",
      "owner": "Frontend Platform",
      "tags": [
        "framework",
        "docs"
      ],
      "releaseNotesUrl": "https://github.com/vercel/next.js/releases.atom",
      "migrationGuideUrl": "https://nextjs.org/docs/app/guides/upgrading/version-16",
      "docsPages": [
        {
          "id": "nextjs-caching",
          "name": "Caching Guide",
          "url": "https://nextjs.org/docs/app/guides/caching"
        }
      ]
    },
    {
      "id": "crawlee",
      "name": "Crawlee",
      "repo": "apify/crawlee",
      "criticality": "standard",
      "owner": "Automation",
      "tags": [
        "crawler",
        "sdk"
      ],
      "changelogUrl": "https://raw.githubusercontent.com/apify/crawlee/master/CHANGELOG.md",
      "docsPages": [
        {
          "id": "crawlee-upgrade",
          "name": "Upgrade Guide",
          "url": "https://crawlee.dev/js/docs/upgrading/upgrading-to-v3"
        }
      ]
    }
  ],
  "delivery": "dataset",
  "datasetMode": "changes_only",
  "notifyOnNoChange": false,
  "snapshotKey": "docs-changelog-drift-quickstart",
  "diffMode": "line_summary",
  "summaryMaxLines": 12,
  "concurrency": 2,
  "batchDelayMs": 250,
  "dryRun": false
}

Run Docs & Changelog Drift Scraper on Apify

How do dataset, webhook, and dry-run delivery work?

delivery defaults to dataset on the live schema. Dataset output is the billable surface when rows are written. webhookUrl is used when delivery is webhook (and typically not during dryRun). dryRun true validates or samples without the usual dataset/webhook side effects described on the Store schema. datasetMode can limit emits to changes_only versus all. Unchanged runs that write zero default-dataset rows typically charge $0.00 on current PPE.

What does a result contain?

The published README output sample on the Store page is truncated or not valid standalone JSON. Treat README field lists as illustrations, not a live coverage guarantee. There is no published output JSON schema on the Store page.

How is Docs & Changelog Drift Scraper priced?

Billing is pay per event. The live Store card is from $9.00 / 1,000 delivered monitoring result rows ($0.009 per new or changed row). No Actor Start. Unchanged runs are free. Current PPE:

Event Price Emitted when
apify-default-dataset-item (Delivered monitoring result row) $0.009 Charged only when a new or changed monitoring result row is delivered. Unchanged runs are free.

The published README Cost block is stale versus the live Store pricing tab. README Cost quotes actor-start $0.01 + dataset-item $0.003. Live: Delivered monitoring result row $0.009, no start. README Input Examples use urls; live schema requires targets. This page quotes live PPE only.

from $9.00 / 1,000 delivered monitoring result rows ($0.009 per new or changed row). No Actor Start. Unchanged runs are free.

See Docs & Changelog Drift Scraper pricing on Apify

Limits to keep in mind

Open Docs & Changelog Drift Scraper on Apify

Related pages