RSS Feed Reader: RSS, Atom & JSON Feed to JSON avatar

RSS Feed Reader: RSS, Atom & JSON Feed to JSON

Pricing

Pay per event

Go to Apify Store
RSS Feed Reader: RSS, Atom & JSON Feed to JSON

RSS Feed Reader: RSS, Atom & JSON Feed to JSON

Turn RSS, Atom, RDF and JSON feeds (or any website with a feed) into uniform JSON: titles, links, ISO dates, authors, content, enclosures. Since/keyword/dedupe filters and optional full article text. From $0.20 per 1,000 items, no start fee.

Pricing

Pay per event

Rating

0.0

(0)

Developer

TidyHarvest

TidyHarvest

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

8 hours ago

Last modified

Share

Turn any RSS feed, Atom feed, RDF/RSS 1.0 or JSON Feed into clean, uniform JSON rows: title, link, guid, ISO publish/update dates, author, categories, summary, full content (HTML and plain text), enclosures and media (podcast audio, images) and comments URL. Paste a website URL instead and the feed is found automatically from <link rel="alternate"> or common paths like /feed, /rss.xml, /atom.xml.

Fast and cheap: plain HTTP, no browser, no proxy, no start fee. Optional full article text for every item.

What you can do with it

  • News and blog monitoring: schedule it with Published since = 1 day to get only new posts from dozens of feeds, de-duplicated, in one dataset.
  • Keyword alerts: keep only items mentioning your brand, product or topic (Only items mentioning), drop noise with Skip items mentioning.
  • RSS to JSON / CSV / Excel: one schema for every feed format, so downstream code, Zapier/Make flows, Google Sheets or a database never see format differences.
  • Content and AI pipelines: turn on Fetch full article text to get the readable text of each linked article for summarization, RAG or archiving.
  • Podcast and release tracking: podcast episode audio URLs (enclosures), GitHub release feeds, YouTube channel feeds, changelogs.

Input

FieldWhat it does
urlsFeed URLs or websites, one per line. Websites are searched for their feed.
sinceOnly items newer than 7 days, 24 hours, 2 weeks or a date (2026-10-01). keepUndated also keeps items the feed gives no date.
includeKeywords / excludeKeywordsKeep or drop items by words in title, summary, content or categories.
allFeedsRead every feed a website advertises, not just the main one.
dedupeSkip items already returned in this run (same guid or link). On by default.
fetchArticleText, maxArticlesAdd the full readable text of each item's linked page (capped).
maxItemsPerFeed, maxItemsCaps to control cost.

Example:

{ "urls": ["https://news.ycombinator.com/rss", "wordpress.org/news", "https://www.jsonfeed.org/feed.json"],
"since": "3 days", "includeKeywords": ["python", "ai"], "maxItems": 200 }

Output

One row per feed item:

{
"feedTitle": "Python Insider", "feedUrl": "https://blog.python.org/rss.xml", "feedLink": "https://blog.python.org/",
"feedFormat": "rss", "title": "Python 3.16.0 alpha 1 is now available",
"link": "https://blog.python.org/2026/10/python-3160-alpha-1-is-now-available/",
"guid": "https://blog.python.org/2026/10/python-3160-alpha-1-is-now-available/",
"published": "2026-10-13T00:00:00Z", "updated": null, "author": "Savannah Ostrowski",
"categories": ["releases"], "summary": "Python 3.16.0a1 is the first of ...",
"contentHtml": "<p>Python 3.16.0a1 is ...</p>", "contentText": "Python 3.16.0a1 is ...",
"enclosures": [{"url": "https://.../episode.mp3", "type": "audio/mpeg", "length": 23145678, "source": "enclosure"}],
"imageUrl": "https://.../cover.jpg", "commentsUrl": "https://.../comments",
"articleUrl": "https://...", "articleTitle": "...", "articleText": "...", "articleTextLength": 4045,
"input": "https://blog.python.org/"
}
  • published / updated are ISO 8601 in UTC, whatever date format the feed uses.
  • summary is the plain text of the feed's description/summary (up to 1,000 characters). contentHtml is the full content when the feed has it (content:encoded, Atom content, content_html), otherwise the description; contentText is its plain text.
  • Podcast feeds also fill durationSeconds, episode, season, episodeType and explicit (iTunes tags); every row carries feedLanguage.
  • enclosures merges RSS enclosures, Atom enclosure links, JSON Feed attachments and Media RSS (media:content, media:thumbnail).
  • article* fields appear only with Fetch full article text (articleError explains a page that could not be read).
  • An input that can't be read (no feed found, site down) adds one uncharged row {"input": "...", "error": "..."}; the other feeds are still processed. A per-input summary (feeds found, item counts, errors) is saved to the key-value store as SUMMARY.

Pricing

Pay per item, with lower prices on higher Apify plans, and no start fee:

  • item-parsed: $0.50 per 1,000 items on the free plan, down to $0.20 per 1,000 on Gold and above.
  • article-fetched (only with Fetch full article text, only when text was extracted): $2 per 1,000 articles on the free plan, down to $0.80 per 1,000 on Gold and above.

Date, keyword, duplicate and count filters all apply before you are charged; error rows are free. A run where no feed can be read, or every feed is empty, fails clearly instead of returning an empty dataset. A filtered run with nothing new succeeds with 0 results.

Limits and notes

  • Reads what a feed publishes: most feeds list only the latest 10 to 50 items, so schedule runs to build history.
  • With Published since, items without any date are skipped unless Keep items without a date is on.
  • Full-article extraction is generic (main/article text, no per-site rules) and honors robots.txt; paywalled or JavaScript-only pages return little or no text and are not charged.
  • Feeds are fetched politely: inputs on the same host are read one after another, with a declared user agent and timeouts. Feeds up to 20 MB, articles up to 3 MB.
  • XML is parsed safely: DOCTYPE and entity declarations are stripped first, so XXE and entity-expansion attacks can't run.
  • Public data only. Sites that block non-browser clients (or require login) won't return a feed.