RSS and Atom Feed to JSON, with Feed Auto Discovery avatar

RSS and Atom Feed to JSON, with Feed Auto Discovery

Pricing

$0.50 / 1,000 feed item saveds

Go to Apify Store
RSS and Atom Feed to JSON, with Feed Auto Discovery

RSS and Atom Feed to JSON, with Feed Auto Discovery

Turn any RSS, Atom or JSON Feed, or any website URL, into clean JSON items: title, link, date, authors, categories, summary, full text, image and enclosures. Finds the feed for you from a site's home page. For AI agents, RAG pipelines, news monitoring and alerts.

Pricing

$0.50 / 1,000 feed item saveds

Rating

0.0

(0)

Developer

Hay Equipos

Hay Equipos

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 hours ago

Last modified

Share

Give the actor any feed address, or just a website or blog address, and get every item back as clean, consistent JSON: title, link, publish date, authors, categories, summary, full text, image and attachments. It reads RSS 2.0, RSS 1.0 (RDF), Atom and JSON Feed, and returns all four in one schema, so your code or your AI agent never has to care which format a site uses.

Do not know the feed address? Paste the home page. The actor finds the feed the site declares in its own page header, and if there is none it tries the usual addresses such as /feed, /rss.xml and /atom.xml.

No login, no browser, no proxies. robots.txt is respected, including rules that name Apify, and each site gets at most one request per second.

What you can use it for

  • AI agents and RAG pipelines: pull the latest posts from any blog, newsroom or changelog as plain text, ready to summarize, embed or index.
  • News and content monitoring: run it on a schedule with "Only items published after" and send only new items to Slack, email, a sheet or a webhook.
  • Competitor tracking: follow competitors' blogs, product update pages and press rooms in one run.
  • Newsletters and digests: Substack, Ghost, WordPress, Medium publications and most news sites publish feeds this actor reads.
  • Podcast and media feeds: audio and video attachments come back in enclosures with type and size.

Input

FieldWhat it doesDefault
Feed or website URLsFeed addresses or ordinary website addresses, one per linerequired
Find the feed when a website URL is givenAuto discovery on or offon
Maximum items per feedItems taken from each feed, in the publisher's order (newest first on almost every site)50
Maximum items in totalStop after this many items across all feeds1,000
Only items published afterA date such as 2026-09-01; older items are skipped and not chargednone
Include item textPlain text of each itemon
Maximum text lengthCut the text to this many characters (0 for no limit)20,000
Include item HTMLThe publisher's HTML as welloff

Example input:

{
"urls": [
"https://blog.cloudflare.com",
"https://github.blog/feed/",
"https://www.jsonfeed.org/feed.json"
],
"maxItemsPerFeed": 20,
"publishedAfter": "2026-09-01"
}

Output

One row per feed item. The same item is never saved twice in a run.

{
"input": "https://blog.cloudflare.com",
"feedUrl": "https://blog.cloudflare.com/rss/",
"feedTitle": "The Cloudflare Blog",
"feedLink": "https://blog.cloudflare.com",
"feedFormat": "rss2",
"title": "Example post title",
"url": "https://blog.cloudflare.com/example-post/",
"id": "abc123",
"authors": ["Jane Roe"],
"publishedAt": "2026-09-25T14:00:00.000Z",
"updatedAt": null,
"categories": ["AI", "Developers"],
"summary": "The first lines of the post...",
"hasFullContent": true,
"wordCount": 1450,
"imageUrl": "https://blog.cloudflare.com/content/images/example.png",
"enclosures": [],
"text": "The full post as plain text...",
"scrapedAt": "2026-09-27T07:18:37.239Z"
}
  • feedFormat is rss2, rss1, atom or jsonfeed.
  • hasFullContent tells you whether the publisher put the whole article in the feed or only a summary. Many sites publish only a summary; the actor never visits the article pages themselves.
  • Dates are ISO 8601 in UTC. Entities and character sets (UTF 8, ISO 8859 1, Windows 1252 and others) are decoded for you.
  • Inputs that give nothing (no feed found, the site blocked the request, robots.txt disallows it) are listed in RUN_SUMMARY in the run's key value store and cost nothing.

Pricing

Pay per event. No start fee, no subscription, no platform usage charged on top.

EventPrice
Feed item saved$0.0005 (50 cents per 1,000 items)

Example: an agent that checks 10 blogs for today's posts pays only for the handful of new items it gets back, often less than one cent. Failed feeds, skipped old items and duplicates are free. Set a maximum charge per run in Apify and the actor stops cleanly when it is reached.

Limits

  • A feed carries only what the publisher puts in it, usually the latest 10 to 50 items. This actor reads feeds; it does not crawl a site's archive. Run it on a schedule to build a history.
  • Sites that block cloud servers, or whose robots.txt disallows automated reading of the feed (GitHub's release feeds are one example), return a free error entry instead of items.
  • Feeds larger than 10 MB are skipped.
  • Discovery tries the feeds the page declares and at most 8 addresses in total per input.

FAQ

Does it work with Substack, WordPress, Ghost and Medium? Yes. They all publish standard feeds. Paste the publication's home page and the actor finds the feed.

Can I get only new items on a schedule? Yes. Set "Only items published after" to the date of your last run, or keep the output of each run and compare by id or url.

Why is text short for some items? The publisher only puts a summary in the feed. hasFullContent is false in that case.

Can an AI agent call it? Yes. It is a single job with one required input, pay per event pricing and no start fee, which suits agents calling it through the Apify API or MCP server.

Is this legal? Feeds are published so that software can read them. The actor reads only feeds, respects robots.txt and rate limits, and returns what the publisher chose to publish. You are responsible for how you use the content, including copyright in the full text.