Note: The maintainers of FeedAPI launched a successor project of feedAPI: Feeds.

FeedAPI is an extensible and configurable alternative to Drupal's core aggregator.

While virtually anything that needs to be parsed and downloaded to a Drupal web site could be done with FeedAPI, its most common configuration is RSS (Atom) aggregation to nodes.

In this configuration, FeedAPI will parse RSS feeds and turns the items within those "aggregated" RSS feeds into nodes. This opens up a plethora of new features that the Drupal core Aggregator Module's lightweight items cannot offer.

By turning RSS items into full-blown nodes, FeedAPI makes it possible for users to comment and/or vote on them, for example. These nodes can be extended with CCK or other modules to include image, video or dates fields -- and the FeedAPI Element Mapper module can then parse feed-item content directly into those fields. With Views, sitebuilders can have near-total control over the sorting and display of these RSS items, as opposed to the one-size-fits all approach that Aggregator offers.

In Drupal 5, FeedAPI also includes a "lightweight item" option. This option is modeled after the core aggregator. Feed items are aggregated to flat database records. The advantage over core aggregator here is to have FeedAPI's flexibility (to use for example a tailored Simple XML parser) while still running on a fast lightweight storage engine.

To get all this magic to work you'll need the following modules:

  • FeedAPI does the heavy lifting of parsing the RSS-feed and providing an API for other modules.
  • FeedAPI can use two different XML parsers: SimplePie (external library, RSS/Atom/RDF support, runs on PHP4/5, robust) and Common Syndication parser (SimpleXML based, RSS/Atom/RDF support, built into PHP5, less robust, faster).
  • Feed Element Mapper will allow you to map individual parts of each RSS-item to either a taxonomy or a CCK-field. (optional)
  • CCK and some of its fields can be used. Currently there are mappers for EM-Fields (movie and image), Date and ImageField/FileField available or in progress. (optional)
  • Drupal's core Taxonomy module can be used to categorize the RSS items automatically as the are imported. (optional)
  • Views is needed to provide an easy listing of all items pulled in from a given feed. (optional)

For developer documentation please refer to FeedAPI Developer's Guide

Lightweight Items

This feature is only available in Drupal 5.

To set up lightweight items, install the FeedAPI Aggregator module and activate the FeedAPI Aggregator processor on your content type configuration page.

Comments

dru_paul’s picture

Hi.

I am very close to what I want to do with FeedAPI, but it is not clear how to assign more than 1 feed url to it.

Can someone point me in the right direction?

Thank you

Paul G

cogdog’s picture

I am setting up a simple FeedAPI right now just to do one feed from a blog that has a lot of embedded YouTube. I have it set to use SimplePie, and get the videos, except, as displayed in drupal, the YouTube videos all start to play at once, while they do not on the original blog. Any tips?

kemi’s picture

hello, i have been searching for step-by-step tips on something that should really be so easy to do. I have a feed from Yahoo Pipes and I want the feed items, not the feed page, to be in a view so I can do more with it, say in Panels. If anyone has clear instructions on how to do this, I would be really grateful! Thanks.

Kemi

kiev1.org’s picture

How to categorize RSS feed items? (Not for freetagging)