> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fetchhive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# RSS Feed

> Configure a workflow step that fetches entries from a direct RSS or Atom feed URL

Use **RSS Feed** when you want a workflow to read entries from a direct RSS or Atom feed URL and pass those entries to later steps.

The step only reads the feed document. It does not discover feeds from a website URL, and it does not scrape article pages. To fetch the article content for each feed entry, send the feed output into an **Iteration** step and use **Website Scrape** inside the loop.

## Configuration

| Option              | Required | Description                                                                                                    |
| ------------------- | -------- | -------------------------------------------------------------------------------------------------------------- |
| Name                | No       | Label for the step in the workflow canvas.                                                                     |
| Feed URL            | Yes      | Direct RSS or Atom feed URL. This field supports workflow variables through **Insert Variable**.               |
| Item Limit          | No       | Maximum number of feed entries to return. Defaults to `10`. Valid range is `1` to `100`.                       |
| New items only      | No       | When enabled, repeated scheduled or deployed runs suppress feed items this workflow scope has already emitted. |
| When the step fails | No       | Controls whether the workflow should **Terminate Workflow** or **Continue** if this step fails.                |

Add this step from the **Research** group in **Search steps...**.

## Output

The step returns normalized feed metadata plus an `items` array:

```json theme={null}
{
  "feed": {
    "title": "Example Feed",
    "url": "https://example.com/feed.xml",
    "description": "Latest posts"
  },
  "items": [
    {
      "id": "stable-item-id",
      "guid": "post-123",
      "title": "Post title",
      "url": "https://example.com/posts/post-title",
      "summary": "Entry summary",
      "author": "Author name",
      "published_at": "2026-06-03T12:00:00Z",
      "categories": ["News"],
      "source_url": "https://example.com/feed.xml"
    }
  ]
}
```

Use these workflow variables in later steps:

```text theme={null}
{{rss_step.output.feed}}
{{rss_step.output.items}}
```

For an **Iteration** step, set **Iterator** to:

```text theme={null}
{{rss_step.output.items}}
```

Inside the iteration body, use each entry's URL with:

```text theme={null}
{{iteration.item.url}}
```

## Example: summarize new feed articles

Create this workflow:

```text theme={null}
RSS Feed -> Iteration -> Website Scrape -> AI Prompt -> Aggregate/output
```

1. Add **RSS Feed** and set **Feed URL** to the direct feed URL.
2. Set **Item Limit** to the number of entries you want per run.
3. Leave **New items only** enabled for scheduled or repeated deployed runs.
4. Add **Iteration** and set **Iterator** to `{{rss_step.output.items}}`.
5. Inside the iteration body, add **Website Scrape** and set **URL** to `{{iteration.item.url}}`.
6. Add an **AI Prompt** after the scrape step to summarize the article content.
7. Aggregate or return the summaries from the workflow output.

## Notes

* RSS and Atom feed URLs are supported. Website feed discovery is not part of this step.
* The step normalizes relative item URLs to absolute URLs when the feed URL can be used as a base.
* Dedupe is lightweight seen-item suppression for repeated runs. It is not a feed history or replay interface.
* Article scraping and summarization are separate steps so you can control crawl settings, prompts, and aggregation explicitly.

See also: [Website Scrape](website-scrape), [Testing and Iteration](../../testing-and-iteration), and [Scheduled Deployments](../../scheduled-deployments)
