REST stands for Representational State Transfer, an architectural pattern defined by Roy Fielding in 2000. A RESTful API is one that actually follows all six REST constraints: client-server, stateless, cacheable, uniform interface, layered system, and optional code on demand. In practice, many APIs labeled 'REST' skip key constraints — especially HATEOAS (hypermedia as the engine of application state) — making them HTTP APIs with a REST label rather than truly RESTful services. The Richardson Maturity Model provides a practical spectrum (levels 0–3) for measuring how closely an API adheres to REST principles. The article concludes that strict compliance matters less than whether the architecture suits your needs, but recommends targeting at least Richardson level 2, with level 3 as an aspirational goal.

11m read timeFrom blog.ndepend.com
Post cover image
Table of contents
What Is REST?What Is a RESTful API?RPC Over HTTP vs. RESTfulREST vs. RESTful and the Richardson Maturity ModelREST vs. RESTful: A Side-by-Side ComparisonREST vs. RESTful: Does It Matter?Frequently Asked Questions
27 Impressions