"Web" vs "REST" APIs

,

If you are a RESTferian or REST-fanatic, please look away now. This is my regular rant about the term “REST” 🙂

<rant>

I am seeing the term “REST” everywhere these days, as an annotation of things that obviously do not follow the architectural principles expressed in Fielding’s thesis. Also, when someone implements all the REST principles with CORBA or even SOAP (remember that WS-Web experiment?), how are we going to call the APIs then?

What’s wrong with “Web APIs”? It’s beautiful, it captures the fact that they are APIs for the Web and by the Web and doesn’t tie anyone to a particular architectural style. You take advantage of the Web Architecture’s features that make sense to your application and everyone’s happy 🙂

</rant>

Will probably have to repeat in few months just so that I can take it off my chest 🙂 I know what Jim will probably say… “just move on” 🙂

4 responses to “"Web" vs "REST" APIs”

  1. Hm, I wonder – why would that be an improvement?

    If someone defined what a “Web API” is, lots of people would still do things their own way and claim they have a Web API. At least with REST, there’s a pretty authorative paper that defines it already, and there’s usually not much disagreement about whether something is RESTful or not.

  2. Actually, I disagree Stefan.

    A “Web API” indicates the use of Web technologies. It can be about HTTP and W3C’s Web Architecture.

    The authorative dissertation and Chapter5 in particular talks about an architectural style and not about specific technologies. I could implement the same principles with any technologies I like.

  3. nice post.

    while a name doesn’t define the tech (hence your valid remarks about the ‘misuse’ of REST), I don’t like the term ‘API.’ in my experience, it evokes standard RPC/RMI thinking that runs counter to the REST model and, in the end, hampers folks understanding of Fielding’s contstraint model for Web architecture.

    FWIW, i’ve started using a new acronym for sites that use a REST-like approach w/o actually adhering to the REST model: POH: Plain Old HTTP. [http://amundsen.com/blog/archives/924].

  4. Hi Mike,

    If getting people to use the term “REST” as an architectural style instead of a technology is difficult, then getting them to stop using the term “API” is like trying to change a cosmological constant 🙂

    I agree with you though. I had discussed this somewhere long long time ago 🙂