subbu.org

SOAPy REST

with one comment

As I was looking at a large number of so-called REST APIs, I have observed one common pattern in some APIs. They are supposed to be RESTful, but smell SOAPy. Here are some examples.

To get a person, using

GET /path/getPersons?id=subbu

in place of

GET /path/persons/subbu

To create a person, using

POST /path/createPerson?fn=Subbu&ln=Allamaraju&em=subbu@nospam.com

in place of

POST /path/persons?fn=Subbu&ln=Allamaraju&em=subbu@nospam.com

To delete a person, using

POST /path/deletePerson?id=subbu

in place of

DELETE /path/persons/subbu

To update a person, using

POST /path/updatePerson?id=subbu&em=subbu@nospam.com

in place of

PUT /path/persons/subbu/email?address=subbu@nospam.com

and so on.

There are two common themes in all these examples. Firstly, URIs are identifying operations and not resources. That is SOAPy. Secondly, the URI space in these examples is structured such that query parameters provide all the inputs while the response contains the output. That is SOAPy again. These are HTTP APIs, but not RESTful.

Written on October 16th, 2007 at 8:46 am

RSS feed | Trackback URI

1 Comment »

Comment by subbu.org
2007-12-18 13:23:27

A RESTful version of Amazon’s SimpleDB

Dimitri Glazkov posted a quick comment on the rest-discuss mailing list stating that the design of Amazon’s SimpleDB REST API is just a big welcome to 1999. The technology powering SimpleDB is definitely impressive - no doubt about it. It is a simple-t…

 
Name (required)
E-mail (required - never shown publicly)
URI
Subscribe to comments via email
Your Comment (smaller size | larger size)
You may use <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> in your comment.

Trackback responses to this post