Links to docs for the Aggregator API

This post tries to tie together all the bits in the release of the Aggregator API, and provides a place for developers to comment, ask for help, report problems, etc.

For background, read this post on Scripting News today.

If you have the OPML Editor running, you should install the latest version of newsRiver.root, and fully update it according to the instructions on this page.

Once you’re up to date, you can run two sample scripts, by jumping to:


If you don’t have the editor running you can view the source for these scripts.

The docs for the API are on the XML-RPC site.

Just for fun, I put up a NewsRiver that you can use over the web.

I’m thinking about whether or not I should let people run the API against this installation. You can delete aggregator items this way. You can delete all the items. Not that I care, but it might make it hard for more than one developer to test against it at a time.

If more information becomes available I’ll link to it here.

13 responses to this post.

  1. Dave, I’ve got opml.root updated and the latest copy iof newsRiver.root. I enabled the API using the Prefs page. Then I jumped to xml.aggregator.rpctesting, opened testItems, and clicked Run. I got an error message: “The server,, returned error code 4: Accessed Denied”.


  2. Dave, bug reports don’t work the same way here as they do with end-user features. You need to go look at the code, and try walking through it with the debugger, and stare at things before reporting a problem. I can’t stare at your installation (I have no idea where you live) and even if I could, I can’t do it for all the users.


  3. Dave, this is great. Not to be negative, but can we avoid the whole XML-RPC debate and publish a SOAP or REST implementation along side?


  4. Dave, here’s what I saw happening, I had the same error message.
    I downloaded and installed per the directions. I went to the aggregator page and put a check mark and put in a username and pw, and saved. It appears that everything is saved. I jumped to and the first value – flRpcInterfaceEnabled was set to false. I manually changed that to True and clicked Run, and it ran. I’m guessing that the check box that is on the preferences page is not acting properly.

    I actually tracked it down.If I’m not mistaken, and I could be,
    In the newsRiverData.english.prefsOutline, under Aggregator API, the part that says @aggregatorData.newsRiver.flNewsPageDeleteCheckboxesDefault should actually be

    I changed mine, and watched the security.flRpcInterfaceEnabled, switch from true to false when clicking the submit button.


  5. I’ll try again to leave a comment — the last two vanished for some reason. Dave, I traced all the way throught the client call, it’s making the connection, sending an XML-RPC request containing my my name and password, and it gets back an XML-RPC fault, “error 4”. That’s all I can do on the client side. If you can tell me wehere to set a breakpoint on the server side, I can try to tell you what’s going on there.


  6. Aha! Based on Dean’s comment, I manually changed to true, and now testSubs works. testItems didn’t work until I ran testSubs, now they both work.


  7. Dean, thanks for the excellent bug report, I fixed it and checked in the change. To get the fix, choose Get Latest Code from the NewsRiver sub-menu of the Tools menu.

    Randy, the SOAP interface is already done, but REST is something I’ll leave for the first person to complain to do. Since you didn’t complain (but you came close) I’ll let you off the hook. ;->


  8. Poets are secretly taking over the Blogosphere and I’m in on the conspiracy.


  9. […] This really came home to me in a conversation with Mike Arrington yesterday. I was trying to explain the Aggregator API that was released yesterday. He didn’t understand that there was a web server in there, and that you could put an API on it even if it’s running on the desktop. Why not, a lot of APIs are running on the desktop (that’s largely what Windows is). […]


  10. […] Hallelujah! Hallelujah! The day is almost here. I’ve been talking heavily about a change in which pure conversation (ala Cluetrain) takes over the web. Talk and share, as opposed to publish and read. While it sounds obvious, and aspects of this can be seen in file-sharing networks, Instant Messengers and even plain old email, there is a richer soil to till in the fertile grounds of RSS and OPML and SSE. That combined with a distributed, peer-like architecture will bring about the decline of the browser and homepage and the rise of the web coupling. A newsreader/writer like device which handles our communications, commerce, whatever. We are seeing a home-page and browser decline with the popularity of RSS readers and still there are cries from the likes of Steve Gillmor and others that we will not click-through to web-pages in posts which do not include its full content. The Web is disintermediating the Web. We are well on our way with the release of the NewsRiver aggregator API , by Dave Winer. The first of the next-generation web tools will be built upon the NewsRiver platform. Mark my words. As sure as the Pope is Italian. (Uhh…you know what I mean) The rules have once again changed. Dave Winer has done it again.   […]


  11. Hi Dave

    You mentioned a few months back to hold off telling potential hosting communities ’til January… so do I sense the time is close?

    It would be great if my hosted community could work from my desktop at home (or a server elsewhere) – with my other OPML Editor weblog on the laptop – and if these non-tecky users could e-mail, text, Skype, whatever, their ‘today’s outline’ while they are somewhere remote – Great for this little community’.

    Dave – you’re going to love what I have in mind – not necessarily the subject but the potential for coming up against entenched interests, and, since you’re way ahead here, I’m sure I’m going to be wowed.


    ps I also commented on this at:


  12. Dave, would you mind pointing me/us at the docs for calling OPML Editor’s engine as a SOAP server? If I get the time, I’d like to take a shot at making a WSDL for this API. Realistically, no one is going to use anyone’s SOAP interface these days without a WSDL contract on which to base their client implementation. [Disclosure: I work for a company ( that makes tools for people working with SOAP.]


  13. Dave, another question: how can I modify one of the test cases to use SOAP instead on XML-RPC? I tried changing the endpoint from xmlrpc:// to soap://, but this resulted in an error message (“Can’t decode the response because the Envelope element was not found.”, in soap.rpc.client).


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: