News Site Article Archive avatar

News Site Article Archive

Pricing

from $2.55 / 1,000 article rows

Go to Apify Store
News Site Article Archive

News Site Article Archive

Name news sites and a past date range and get full article text, dates, and authors as rows. Walks sitemaps and the Internet Archive index across years. No code, no AI, no login. Paywalled pages are left out.

Pricing

from $2.55 / 1,000 article rows

Rating

0.0

(0)

Developer

Mamba Labs

Mamba Labs

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Features

Limited permissions

Share

Name the news sites and a past date range, and get every article the actor can reach from that range as a row: full text, published date, title, author, and section. It walks a site's own sitemaps and month pages, then the Internet Archive capture index for years those no longer reach. No code, no AI, no browser, no login. You pay per article returned, and Mamba Labs pays the platform costs.

Features

  • Walks back through a site's history. Give a date range of days or years. The site's sitemaps come first, then for each month, oldest first, the site's own month pages (such as /2016/01/) or, where it has none, the Internet Archive capture index.
  • The page decides the date. An article is kept only when the published date on the page is in your range. date_source says where the date came from.
  • Full text, not just links. Paragraphs from the article body, without menus, related stories, newsletter boxes, or comments.
  • Pages gone from the site. A page the site answers with 404, 410, 500, 502, or 504 is read from an Internet Archive copy, marked read_from archive, at its own price. Turn this off with use_archive_copy no.
  • Paywalls are respected. A page the publisher marks as paywalled returns a free row with no text. Paywalled and refused pages are never read from an archive.
  • robots.txt obeyed by default. Disallowed pages are skipped and counted, and a crawl delay is honored up to 5 seconds.
  • One free summary row per site. Addresses found, articles returned, pages refused, paywalled, gone, and out of range, and how many months of the archive index were read, so you can see what the run did not reach.
  • Restart aware. If Apify moves the run to another host, the run resumes from its saved position. A restart with no warning can repeat up to the last 10 pages read.
  • Cost guards. A maximum per site and a maximum charge per run.

How the data is read

Plain HTTP requests through the Apify proxy pool to the publisher's public pages, as a logged out visitor receives them, parsed from the HTML the server returns. Addresses and copies of gone pages come from the Internet Archive's public services. No login, no key, no AI, and no other developer's actor.

A refused read (HTTP 403 or 429, or a challenge page) is final: the actor does not retry it on a new address and does not try another route. It backs off and returns a free row. If the archive capture index refuses a read, the actor stops reading the index for that site and says so on the summary row.

Input

FieldTypeDefaultWhat it does
sitesarrayNews sites by domain, for example techcrunch.com, up to 20.
date_fromstringThe earliest published date, as YYYY-MM-DD. Default: 30 days before Date to.
date_tostringThe latest published date, as YYYY-MM-DD. Default: today.
max_articles_per_sitestring100Articles to return from each site, up to 5,000. Default 100.
url_containsarrayOptional. Keep only addresses with any of these texts, for example /politics/.
min_wordsstring80Pages with fewer words are not counted as articles and are free. Default 80.
use_archive_indexstringyesyes (default): when the sitemaps run out, also find addresses in the Internet Archive capture index, which reaches years that sitemaps no longer list. no: sitemaps only.
use_archive_copystringyesyes (default): a page the site answers with 404, 410, 500, 502, or 504 is read from the Internet Archive, at the archived row price. Refused and paywalled pages are never read from an archive. no: gone pages return a free row.
obey_robotsstringyesyes (default): pages robots.txt disallows are skipped and counted. no: read them anyway.
max_charge_usdstringOptional. The run stops before a charge that would pass this amount. Summary rows are always returned.

Output

FieldTypeWhat it holds
row_typestringOne of: article, skipped_page, site_summary, run_summary. run_summary is the one free row written when the input is refused.
sitestringThe site this row came from.
urlstringThe article address that was found.
final_urlstringThe address after redirects.
found_fromstringsitemap, or archive_index for an address from the Internet Archive capture index.
read_fromstringlive for the publisher's page, archive for an Internet Archive copy of a page gone from the site.
archive_urlstringThe Internet Archive address read, for an archive row.
archive_captured_atstringWhen the Internet Archive captured the copy.
http_statusintegerThe status the publisher's page answered with.
titlestringThe headline.
authorstringThe byline, when the page states one.
sectionstringThe section, when the page states one.
published_atstringThe published date and time from the page, UTC.
date_sourcestringWhere the date came from: structured_data, meta_tag, time_tag, or address. An address gives the day only.
modified_atstringThe last modified time, when the page states one.
descriptionstringThe summary the page gives.
languagestringThe language the page declares.
image_urlstringThe lead image address, when the page gives one.
word_countintegerWords in text.
textstringThe full article text as served to a logged out visitor, paragraphs separated by a blank line.
date_fromstringThe start of the date range, on a site summary row.
date_tostringThe end of the date range, on a site summary row.
candidates_foundintegerArticle addresses found for this site.
articles_returnedintegerArticle rows returned for this site.
articles_from_archiveintegerArticle rows read from the Internet Archive.
pages_paywalledintegerPages marked as paywalled. Their text is not returned.
pages_blockedintegerPages the site refused.
pages_goneintegerPages gone from the site with no archive copy read.
pages_out_of_rangeintegerPages whose published date is outside the range.
pages_no_dateintegerPages with no published date, so they could not be placed in the range.
pages_not_articleintegerPages with too little text, or not article pages.
pages_skipped_robotsintegerPages robots.txt disallows.
pages_failedintegerPages with a network or server error.
sitemap_files_readintegerSitemap files read, up to 12.
archive_months_readintegerMonths of the capture index read.
archive_months_totalintegerMonths the date range covers.
oldest_articlestringThe oldest published day returned for this site.
newest_articlestringThe newest published day returned for this site.
row_statusstringok, or why this row carries no data: no_results, no_change, partial, blocked, or error.
error_reasonstringWhy the row is not ok. A refused input reads input_invalid: followed by what to fix.
billable_events_jsonstringWhat this row was billed as, for example {"article-row":1}. {} means free.
scraped_atstringWhen the row was written, UTC.

Pricing

Pay per event. You pay for articles returned and the run start. Refused, paywalled, gone, and out of range pages, summary rows, and a refused input are free.

EventFree planBronzeSilverGold
article-row, one article read from the publisher's page$0.003$0.00285$0.0027$0.00255
archived-article-row, one article read from an Internet Archive copy, only for a page gone from the site$0.003$0.00285$0.0027$0.00255
apify-actor-start, once per run (one per GB of memory; the default 256 MB is one)$0.021$0.021$0.021$0.021

Per 1,000 rows of article-row: $3.00 on the free plan, $2.55 on Gold.

Free plan cap: 1.50 USD of evaluation a month, about 500 rows. Any paid Apify plan removes the cap, and it resets on the 1st. The run stops before a charge that passes your maximum charge per run in Apify or your max_charge_usd input.

Mamba Labs pays the platform costs of your run, Apify proxy traffic included.

Usage examples

One month of a site.

{
"sites": ["techcrunch.com"],
"date_from": "2016-01-01",
"date_to": "2016-01-31",
"max_articles_per_site": "50"
}

Ten years from three sites, politics pages only.

{
"sites": ["site-one.com", "site-two.com", "site-three.com"],
"date_from": "2015-01-01",
"date_to": "2024-12-31",
"url_contains": ["/politics/"],
"max_articles_per_site": "5000",
"max_charge_usd": "40"
}

Read the rows with GET https://api.apify.com/v2/datasets/{datasetId}/items. Use the Text view for the article text, and the Summary view for what each site returned.

Clay. Number and yes or no inputs are text fields, which is what Clay sends. A list input takes a JSON list, so put the column inside a one item list.

MCP. The Mamba Labs MCP server @mambalabsdev/mcp-news-site-article-archive exposes this actor to Claude and other MCP clients.

Error handling

CaseWhat you get
Missing or unreadable inputOne free row, row_type run_summary, error_reason starting input_invalid: with what to fix. The run ends successfully and charges nothing but the run start
The site refuses a page or shows a challenge pageA free skipped_page row with row_status blocked. After 5 refused pages in a row the site stops, and the summary row says so. A site that refuses its home page is not read at all
A page is marked as paywalledA free skipped_page row with row_status blocked, the title, and the date, with no text
A page is gone and has no archive copyA free skipped_page row with row_status no_results
The archive capture index stops answeringThe site summary row reads partial and says so. Sitemap addresses are still read
No readable article in the rangeA free summary row with row_status no_results or blocked
The run is close to its timeoutThe actor stops starting new work 90 seconds before the timeout and delivers what it has

Limitations

  • Coverage depends on the site. Sites behind an anti bot wall (for example a Cloudflare challenge) refuse the proxy pool and return free rows. In testing, apnews.com and nytimes.com article reads were refused, so those sites return little. The actor does not solve challenges, and it does not use residential addresses or a browser to get past one.
  • Paywalled text is not returned, and no archive copy is read in its place. Pages that read as paywalled by a marker or a phrase are judged by fixed rules, so a rare one can be missed or wrongly flagged.
  • Article addresses are only as complete as the sitemaps and the Internet Archive's captures. An article with neither is not found, and one first captured after the range ends is found only if a sitemap lists it. Use the summary row counts to judge a run.
  • The capture index is a public service that can be slow or busy. A month takes 10 to 30 seconds, and 10 years is 120 months per site, so a long range needs a long run timeout. Up to 12 sitemap files are read per site, and up to 40 month pages per month.
  • With several sites, each takes a fair share of the run's time and the summary row says when a site used its share. Raise the run timeout for long ranges.
  • Oldest months are read first, so a low maximum returns the oldest articles in the range, not a spread across it.
  • No browser. A site that builds its articles with JavaScript in the visitor's browser returns little or nothing, and those pages count as not articles.
  • A page with no published date on it or in its address cannot be placed in the range, so it is counted and not returned. A date taken from the address gives the day only.
  • A run reads up to 5 times the maximum articles plus 100 pages per site, then stops that site and says so.
  • Publishers' terms differ, and several state limits on automated collection or reuse, including for AI training. How you use the text is yours to check.

Changes

  • 2026-11-09: the start price went from 0.014 USD to 0.021 USD. A run that finds no article measured up to 0.00328 USD on the current build.
  • 2026-11-08: a refused read is no longer retried on a new proxy address, and a refusal from the archive capture index stops index reads for that site. The start price went from 0.02 USD to 0.005 USD, then to 0.014 USD the same day, so a run that finds no article still costs less than its price.

Mamba Labs actor suite

ActorActor ID
Account Hiring WatchgRAZA5WBi1r6L0gy7
Agent Accessibility AuditoranxbRv0lKrpQ1pnua
Agent to Brokerage ResolverePRRGLxOGyaVHO4dI
AI Answer Visibility TrackerRJZvzKniYK4nswcMg
AI Tooling DetectorEwkHhmqiuJgRoVEbE
Amazon Product, Price, and Stock TrackerMtJPZoyjJ3IeqTFyo
API Deprecation and Breaking Change MonitorpHsbS3xXUK8Jqutz5
App Store and Google Play Review MonitorMaCMEhGrbchxQZ92G
B2B Reddit Conversation MonitorSoDryzzsjmY3SsiyG
Bluesky Brand Presence MappereLpxzP4IuXznlFVND
Brand Sponsor FinderPPgK6xrgOmvL7Nrys
Bulk WHOIS and RDAP Domain Age LookupMTrkG5FLU6SjqLdJY
Career Change Signal EnginevX2Yga1a6wGaXaP14
Company Careers Page Jobs, 17 ATS BoardsizP0rfIgf5YaRZfIh
Company Change Event FeedoX44rS0fkEJ3rXLWe
Company Discovery List Builderjch0HdaZnpbMqlcGS
Company Firmographic EnricherYlUtLWjfPpqykmB8g
Company Funding RecordOFS4Mt1gyYNtGfUbE
Company Headcount EstimatoraHC4GROnNt6kfZe5r
Company Identity Resolverlr8fTRAmZCBZmuwwh
Company Role Email, Phone and Address Finder4mMncKaJykiq94grz
Company Social Presence Mapper4k6CCemkgBDz18m2h
Competitor Price, Stock, and Changelog MonitoryxdgCbUQ4PYQWwRNU
Contact Classifier0lGSeYJmniXhGANnO
Contractor License Search, CA, TX, WA, OR, LAWBYK3CPI2kdeq4bP1
CRM Contact Job Change CheckerL8UbEmMJC1XYPSZOb
Domain Deliverability Checker0tVgxI7A6o9jMlxmc
Domain to LinkedIn URL Resolver3HtnSaqPHOg1Qg5gx
Ecommerce Platform Profiler5G2NeYjBbQTjaTn9L
Ecommerce Store DiscoveryPeHu4sLyFvQHXUUrX
Email List Verifier, Bring Your Own KeyCzVJ4NlaCKk80xpgE
Event Presence IndexWLhMy8fMDgsxdYxv5
Expert Witness Finder, US and AustraliaLIpwlgfE3LaQBaXd4
Funding and Press Signal ScannerFS13X6dhQVgX3XOM6
GDPR Cookie Banner and Consent CheckerTrKyOS0KBoGC35nbr
GitHub Followers and Following ExportSGNxDmFb9v3tRDaFI
GitHub Organization Signal ScannerahF8RRpv5mzPao5CN
Google Ads Transparency Center Scraper by Domain1eOwxhBVxzvOXAm4s
Google Trends ScraperOeDzaACKmBYJXzHZk
GTM Hiring Signal ScraperD7O1SA2EqwHGsGr1P
GTM Signals AggregatorxKdRfnfFNkdMpFuNs
Healthcare Provider NPI EnricherMrgbHzcpDq3mOv9Df
ICP Fit ScorerW161DT8W4kW55dMFh
Influencer Change Monitord2VVgahNL6UmcLkhg
Influencer Lead List BuilderKnmByszcv135yM30G
Influencer Profile ScraperEqEnklDVMIcB1V499
Influencer Search Across TikTok, Instagram and YouTubetpkedmloIIWtXx6sg
Influencer Talent Agency LookupzCuX4Mgyg6JvXgGzd
Instagram Facebook Brand Presence MapperHXh65I0JBjPsunbY8
Integration and Marketplace Presence MapperV0guNuvM85Q61f2gj
Job Board Keyword Signal Scanner4DvqpvhMR74NLcDDY
Job Posting MonitorQCfICD9kOPiOdj5iI
Journalist and Media List BuildermAfizsZC8qRoR0ecS
Launch Directory List BuildercRq3bmvEZxZtioQ7U
Lead File Import CheckerRwlGVXTf46LqZdUgt
Legal Entity ResolverKHFyPCDIx7CyqULYm
Link in Bio Scraper and Newsletter DetectorOorucdheTIgu7RFzK
LinkedIn Company Page MapperzOPm6A9JEhUGcIdFW
LinkedIn Jobs FeedSH6N0d8cz46BhCC8B
LinkedIn Post TrackeroiGLNPuaf5BRaz9K5
Local Business Lead BuilderqMN97aoHhsAS5bznV
Local Rank and Map Pack Trackergv0kyHGDIg8XscclB
Lookalike Companies from Seed Domainse2O426WBAbLLQL4Z2
Manufacturer and Supplier FinderQcsdmd0lUfPzVkonh
MCP Server Change and Health MonitorIeqjWF9U0BdDQFY08
Media URL TranscriberSyfr7Ya3EsHgWfrB6
Meta Ad Library Ads by Company, Graph APIJ1GWlSXfSGU3u8Wng
Mobile Phone Waterfall6OOgPktf7RIa5XCOP
New Hire FindercKuc38p4nYHNF3IW8
Newly Registered Companies, UK, Norway, Finland, Franceg2WfZhWvCtc57g2Jo
News and Media Mention Monitorgol1PPUKrsIk4QLBd
Newsletter Sponsor TrackerqSwpqxD1TiPZpLQHv
Open Tender and RFP FinderkPTGz6t6TFoUUyfaO
Outbound Stack Detectorv43UJC8r7qW7cBSTG
Page Finder and ExtractorTpurgcOZbVnknlaiC
Partner and Member Directory ExtractorZX0XJPPUvnFJxeC1a
People Finder & Email VerifierLEgloG7tWgQl4o6TD
Person LinkedIn URL ResolverssuyPV8LnEsL8qbnb
Person Social Footprint MapperjfQXa2zW9FHCJot9K
Personal Email to Company ResolverAefT5Ye6YNPFQwJBf
Pinterest Brand Presence Mapperd1HvjZfKhgvWsoEwn
Podcast Guest and Host Findero2MGSvgbSLeeXOsIo
Product Hunt Daily Launches with Maker DomainsO4VX63drWK9Y9x641
Prospect Engineq9rT6v64nUJdPexOQ
Public Feature Board and Roadmap MonitorrcHF5gj5r2Vqnry35
Publishing Frequency TrackerTbLwaUUATdYb6wp4N
Recent Funding Rounds FeedKueVp9MOz7iOoAgDp
Reddit Brand Presence MapperpKQZmDaT70SEb54bZ
Reddit Search and Thread Scraper4Gsth5cP2Xt9V2xDN
Reporting Window FinderuINxR7a1IW8qUTRUX
Research Topic Institutions and AuthorsOH8ANqt7bCKbo72Gk
Sequencer Event PollerS6s8Rjd61tGdrMRk4
Sequencer Lead Push0Jv27VeWM5tSZQs9x
Shopify App Store and Chrome Web Store ListingsgaY0BzkLyN77mD3wI
Site Crawler for Links and TableslLLJ6JxZ4XqN8ULz0
Substack Newsletter and Posts ScraperUEFsdwiPLmPNVy9xd
Team Page People Extractorj8a9zX0k4mNbvDbWK
Tech Stack Signal Detectorqyd7nNyqFPelQViBx
Threads Posts by Keyword, Exact Match2OT8K8RiEEWtaj2MW
TikTok Brand Presence Mapperfco8FvoJcSafbeyd1
Trustpilot Reputation Enricher3lIqfCt61j4hqE1xz
US and UK Contract Award Winners by CompanyzhEtllASykOcx9hJ8
US Import Records Buyer FinderVIMafpKF5ggOw0COU
VC and Accelerator Portfolio List BuilderchH8hrfuoqqolW06m
Website Accessibility Checker, WCAG 2.2 AAP3jBj3FRghKEhX52z
Website Phrase and Business Model ClassifierCBuZ9k7sRwBeiKiCS
Website Traffic Rank EstimatorGnOFUzlNVIoXgeJjH
Work Email WaterfallOT6xqTFThC0Rjf7Zj
Workplace Program DetectorLi6pPDhqbdzFz3h7G
X Brand Presence MapperoLOgadhHUkNAyDA3w
YouTube Channel from Company Domain6hSpD3kd2s2IQ4VSs
Zillow Listing DetailsyG4zM0Enfsw2NefJ1

Built by Mamba Labs.