Wayback Machine Snapshot History & Archived Text Extractor
Pull the Wayback Machine's capture history for any URL, host, or domain with timestamps, status codes, MIME types, and optional archived page text.
Open in Apify Store$0.99 / 1K on Free
Short answer
Wayback Machine Snapshot History & Archived Text Extractor is an Apify Store Actor for Wayback Machine data that returns 19 published output fields, including title, originalUrl, archiveDate, archiveUrl. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 19 input settings, none required. It covers 1 of the 6 core Wayback Machine fields this site tracks. Last updated Nov 9, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
19 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
originalUrlarchiveDatearchiveUrlstatusCodemimeTypecontentLengthchangeTypecaptureYearresultIndextitlewordCountcharacterCountrequestedDateavailablefirstArchiveDatelastArchiveDatecaptureCountversionCountspanDays
Not in the schema among the core Wayback Machine fields: original, archive, status, mime, capture. The field matrix shows which other tools return them.
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| mode | string | No | search | What to collect. 'search' returns every matching capture; 'timeline' returns one row per distinct content version; 'summary' returns archive coverage per target; 'closest' returns the nearest capture to a date; 'content' returns readable text from the archived page. |
| url | string | No | – | One URL, host, domain, or Wayback playback URL. Examples: 'apify.com', 'https://example.com/blog', 'https://web.archive.org/web/20240101000000/https://apify.com/'. Wildcards like 'example.com/*' and '*.example.com' are detected automatically. |
| urls | array | No | [] | One or more targets for batch collection. Each target is queried independently and the Max items budget is split across them. |
| matchType | string | No | exact | How the target is matched against the archive. 'exact' = that URL only; 'prefix' = the URL and every path beneath it; 'host' = every path on the same host; 'domain' = the host and all subdomains. |
| dateFrom | string | No | – | Earliest capture date, inclusive. Accepts YYYY, YYYY-MM, YYYY-MM-DD, or a full timestamp such as 2024-01-31T12:00:00. |
| dateTo | string | No | – | Latest capture date, inclusive. Uses the same formats as From date. A date without a time includes the whole day. |
| statusCodes | array | No | [] | Only keep captures with these HTTP status codes, e.g. ['200','301']. Leave empty for all statuses. Values may also be comma-separated. |
| excludeStatusCodes | array | No | [] | Drop captures with these HTTP status codes, e.g. ['404','500']. Leave empty to exclude nothing. |
| mimeTypes | array | No | [] | Only keep captures with these MIME types, e.g. ['text/html','application/pdf']. Leave empty for all MIME types. |
| excludeMimeTypes | array | No | [] | Drop captures with these MIME types, e.g. ['image/png','video/mp4']. Leave empty to exclude nothing. |
Show the other 9 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| collapseBy | string | No | digest | Deduplicate adjacent captures in 'search' mode. 'digest' keeps one record per distinct content fingerprint; 'urlkey' keeps one capture per URL; 'monthly', 'daily', and 'hourly' keep one capture per time bucket; 'none' returns every raw capture. 'timeline' and 'summary' always read raw captures so th |
| sortDirection | string | No | earliest | Choose whether the limited result set comes from the oldest or newest captures. Search rows are emitted in chronological order; 'latest' reverses the final rows so the newest appears first. |
| targetDate | string | No | – | Date used by 'closest' and 'content' modes, and as the reference when a playback URL does not include a timestamp. Accepts YYYY, YYYY-MM, YYYY-MM-DD, or a full timestamp. Defaults to now when empty. |
| enrichWithContent | boolean | No | false | In 'search' mode, fetch the archived HTML for the first Max content fetches rows and add its readable text and metadata. Off by default because it costs extra requests. |
| maxContentFetch | integer | No | 10 | Cap on archived pages downloaded when 'Add archived text to search rows' is on. 0 disables enrichment. This setting is ignored by 'content' mode, which uses Max items instead. |
| maxContentChars | integer | No | 500000 | Truncate extracted text at this many characters. The full word count and text hash are still recorded, and contentTruncated is set when clipping happens. |
| includeHeadings | boolean | No | true | Add the page's H1-H6 headings as structured records when archived text is extracted. |
| maxItems | integer | No | 500 | Hard cap on emitted records. For bulk search the budget is split evenly across targets. In 'summary' mode it is also the per-target capture scan budget, split between the oldest and newest ends. Up to 100,000 captures are supported through automatic resume-key pagination. |
| detectChanges | boolean | No | true | In 'search' mode, compare each capture with the previous capture of the same URL and add changed, changeType, previousTimestamp, and related fields. |
Example input
Built from the input form's published example values and defaults.
{
"mode": "closest",
"url": "apify.com",
"urls": [],
"matchType": "exact",
"statusCodes": [],
"excludeStatusCodes": [],
"mimeTypes": [],
"excludeMimeTypes": [],
"collapseBy": "none",
"sortDirection": "earliest",
"targetDate": "2024-01-01",
"enrichWithContent": false,
"maxContentFetch": 0,
"maxContentChars": 500000,
"includeHeadings": false,
"maxItems": 1,
"detectChanges": false
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"mode": "closest",
"url": "apify.com",
"urls": [],
"matchType": "exact",
"statusCodes": [],
"excludeStatusCodes": [],
"mimeTypes": [],
"excludeMimeTypes": [],
"collapseBy": "none",
"sortDirection": "earliest",
"targetDate": "2024-01-01",
"enrichWithContent": False,
"maxContentFetch": 0,
"maxContentChars": 500000,
"includeHeadings": False,
"maxItems": 1,
"detectChanges": False
}
run = client.actor("dataspryva/wayback-machine-snapshot-history-and-archived-text").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"mode": "closest",
"url": "apify.com",
"urls": [],
"matchType": "exact",
"statusCodes": [],
"excludeStatusCodes": [],
"mimeTypes": [],
"excludeMimeTypes": [],
"collapseBy": "none",
"sortDirection": "earliest",
"targetDate": "2024-01-01",
"enrichWithContent": false,
"maxContentFetch": 0,
"maxContentChars": 500000,
"includeHeadings": false,
"maxItems": 1,
"detectChanges": false
};
const run = await client.actor("dataspryva/wayback-machine-snapshot-history-and-archived-text").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/dataspryva~wayback-machine-snapshot-history-and-archived-text/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"mode":"closest","url":"apify.com","urls":[],"matchType":"exact","statusCodes":[],"excludeStatusCodes":[],"mimeTypes":[],"excludeMimeTypes":[],"collapseBy":"none","sortDirection":"earliest","targetDate":"2024-01-01","enrichWithContent":false,"maxContentFetch":0,"maxContentChars":500000,"includeHeadings":false,"maxItems":1,"detectChanges":false}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=dataspryva/wayback-machine-snapshot-history-and-archived-text",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among Wayback Machine routes
It ranks 1 of 1 catalogue Actors for Wayback Machine on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 Wayback Machine Snapshot History & Archived Text Extractor 19 output fields, pay per event 1 of 6 core fields
$0.99 / 1K - + 8 other Store tools, combined Reference only 2 of 6 core fields
from $0.50 / 1K - API Wayback Machine APIs (Availability, CDX Server, Memento) Public API fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: Wayback Machine APIs (Availability, CDX Server, Memento)
Public API. The Internet Archive documents a Wayback Availability JSON API, the Wayback CDX Server API at web.archive.org/cdx/search/cdx for querying and filtering captures, and Memento protocol support.
Free; no API key is required for public captures.
Other Store tools for Wayback Machine
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| Wayback Machine Scraper | 9 | $0.50 |
| Internet Archive & Wayback Machine Scraper | 7 | $1.50 |
| Wayback Machine Archive Scraper | 5 | $1.00 |
| Wayback Machine Extractor | 6 | $0.50 |
| Wayback Machine Snapshots Scraper | 8 | $1.00 |
What people use it for
- review archived page history
- find snapshots by date
- extract archived page text
Similar Actors
Complete Page Capture - Screenshot & PDF
Capture complete full-page screenshots or PDFs of any URL list. Scrolls lazy content, waits for images and fonts, removes fixed headers and…
Ahrefs Domain Rating, Backlinks & Traffic Lookup
Look up a domain's public Ahrefs Domain Rating, linking-website count, global rank, and estimated organic traffic, with a mode to fetch just…
Facebook Page & Profile Finder by Keyword or URL
Find Facebook Pages or public profiles by keyword, or scrape a list of Facebook URLs directly, and get back contact info, category, ratings,…
Facebook Public Follower & Following Snapshot Tool
Get the public preview of a Facebook Page or Profile's followers, following, or friends, plus aggregate follower/following counts and parsed…
Search & URL Markdown Extractor for LLMs
Turn a search query or a list of URLs into clean Markdown, plain text, or HTML pages, with filters for domain, keyword, and minimum content…
Wikipedia Article Lookup by URL or Keyword
Fetch structured data for Wikipedia articles by URL or keyword search, in any language edition - summary, description, categories, images, and…
Questions people ask
How much does Wayback Machine Snapshot History & Archived Text Extractor cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does Wayback Machine Snapshot History & Archived Text Extractor return?
Its published output schema lists 19 fields: originalUrl, archiveDate, archiveUrl, statusCode, mimeType, contentLength, changeType, captureYear, resultIndex, title, wordCount, characterCount, and 7 more. A listed field is not guaranteed to be filled in every row.
What input does Wayback Machine Snapshot History & Archived Text Extractor need?
No input is strictly required; the defaults run as is. Common settings: mode, url, urls, matchType, dateFrom, dateTo.
How do I run Wayback Machine Snapshot History & Archived Text Extractor from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("dataspryva/wayback-machine-snapshot-history-and-archived-text").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("dataspryva/wayback-machine-snapshot-history-and-archived-text").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/dataspryva~wayback-machine-snapshot-history-and-archived-text/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- Wayback Machine Snapshot History & Archived Text Extractor on Apify Store
- Published build with input and output schema (JSON)
- Wayback Machine APIs (Availability, CDX Server, Memento) documentation
Cite this page
Scraper Finder. "Wayback Machine Snapshot History & Archived Text Extractor." https://scraperfinder.com/catalogue/wayback-machine-snapshot-history-and-archived-text/ (data checked 2026-11-12).
Run Wayback Machine Snapshot History & Archived Text Extractor
$0.99 per 1,000 results. Paste the example input above, set your Wayback Machine query, then export the dataset. Still choosing? Compare every Wayback Machine route.