top | item 2338346

Rdio: No REST for the wicked

52 points| garethr | 15 years ago |developer.rdio.com | reply

28 comments

order
[+] TillE|15 years ago|reply
our API, like most of the popular "REST" APIs, is not REST as defined by Roy Fielding

Other APIs may be imperfect implementations of the ideal, but Rdio's made no attempt to look anything like REST. The complaint wasn't about adhering to a spec, but simply inaccurate nomenclature.

[+] ldh|15 years ago|reply
Kudos to the Rdio team for being responsive and thoughtful rather than defensive.
[+] davidmathers|15 years ago|reply
When I started working on the Rdio API I struggled to work out how to effectively expose our API through a more classically REST model, but ultimately there was too much functionality that would be significantly more ugly when forced into a document-oriented REST model than exposed through an RPC model.

Hi Ian, if it's not too much trouble could you give an example of functionality that didn't work well with REST?

[+] ianloic|15 years ago|reply
Off the top of my head a couple of things that didn't map well were:

* search

* deleting songs from a playlist (safely)

* multidimentional stats queries (eg: http://developer.rdio.com/docs/read/rest/Methods#getHeavyRot...)

Perhaps we could have modelled these in a REST-like manner, but it seemed simpler to make the functionality available through an RPC protocol - simpler for us to implement and simpler for developers to integrate into their software.

[+] bromley|15 years ago|reply
I'm working on an RPC API that works with XML over HTTP. I'll be calling it an XML API. If it did JSON I'd call it a JSON API. Some customers seem to want to call it a REST API, but it would pain me to call it that when it isn't.
[+] slackerIII|15 years ago|reply
If you are interested in music related APIs, my company (http://www.audiogalaxy.com) has a draft API that lets you browse and play your music collection remotely. We support mp3, aac, flac, wma, vorbis, and get your playlists out of iTunes.

We haven't publicized the API quite yet, but we would love get feedback from anybody who might be interested in it. Send me an email if you are: [email protected]

[+] pbreit|15 years ago|reply
REST is totally useless since no one really knows wha it means and there are few if any APIs that come close to being "RESTful". REST's proponents, including Roy, have done a dreadful job educating on what REST is. As I commented on the Rdio thread, it would be nice if the complainers actually suggested how the API in question could be designed more RESTfully.