Scrape RSS, Atom and JSON feeds into structured items, in bulk. Export a current snapshot of each feed or return only new and updated entries across repeat runs. Per-feed status, stable item IDs and webhook-ready output for content monitoring and automation.
2026-10-10: Fewer failed runs from cookie redirects and input slips (0.1.14)
Fixes
Some publishers put their feed behind a CDN that first answers with a cookie
and a redirect back to the same URL. The Actor dropped that cookie, so the
feed redirected in a loop and its feed_summary ended FAILED with
TOO_MANY_REDIRECTS. The cookie is now sent back within that one redirect
chain, so these feeds return their items. Cookies are kept only for the
current feed request, are never sent to another host, and are never stored
or written to the output.
A monitor run started from the Console or the API without monitorId, and
outside a saved Task, no longer fails. The watchlist itself becomes the
monitoring scope: running the same feeds again keeps their history, and
adding or removing a feed starts a new BASELINE. Set monitorId if the
history should continue while the list changes. Runs that already use
monitorId or a saved Task keep their existing history.
A feed URL pasted without https://, such as example.com/feed.xml, is now
read as https://example.com/feed.xml instead of being rejected. When every
row was missing the scheme, the whole run used to fail.
Improvements
When no feed can be checked, the run's status message now names the per-feed
error codes, for example per-feed errors: 1 BLOCKED, and RUN_SUMMARY
counts them in errorCodes. Each feed_summary row still carries the full
error for its feed.
RUN_SUMMARY.monitorScopeSource shows whether a monitor run used
monitorId, the saved Task or the watchlist.
Prices, charged events and the output of feeds that already worked are
unchanged.
2026-09-04: RSS, Atom and JSON Feed scraper and monitor
Features
Parse up to 1,000 RSS 2.0, Atom 1.0, JSON Feed 1.1 and common RSS 1.0 (RDF)
feeds per run into one normalized feed_item format, with one
feed_summary per input feed.
snapshot mode returns the current items. monitor mode remembers the last
successful state of each feed and labels items BASELINE, NEW_ITEM,
UPDATED_ITEM or UNCHANGED, and changesOnly output returns only new and
updated items.
Conditional ETag and Last-Modified requests: an unchanged feed answering
304 Not Modified is not downloaded again.
Optional feed discovery from one homepage's declared <link rel="alternate">.
Pay per successful feed check and per delivered item. Failed, blocked,
invalid and skipped feeds are not charged.
Later September builds updated the Store listing, README and dependency pinning;
feed behavior was unchanged.