Richardson Maturity Model

The Richardson Maturity Model is a scale for evaluating services and their RESTfulness. It consists of four levels:

  1. HTTP transport - Remote interaction through tunnel, no web mechanisms.
  2. Resources - Separate resources instead of a single endpoint.
  3. HTTP Verbs - Standardized use of HTTP verbs to perform actions.
  4. Hypermedia controls - HATEOAS is implemented.

For a web services to be RESTful in a meaningful sense, they need to reach level 3 of the Richardson Maturity Model.

http://martinfowler.com/articles/richardsonMaturityModel.html

http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm

http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven