O Richardson Maturity Model (RMM) classifica quão "RESTful" uma API é ao longo de quatro níveis, e o HATEOAS é o nível mais alto — a constraint que a maioria pula.
Os quatro níveis
Nível 0 — "O Pântano do POX": uma URI, um método (RPC sobre HTTP).
POST /api { "action": "getUser", "id": 42 }
Nível 1 — Resources: muitas URIs, mas ainda um verbo.
POST /users/42 , POST /users/42/delete
Nível 2 — HTTP Verbs: métodos + status codes apropriados (onde vive a maioria das "REST" APIs).
GET /users/42 → 200 , DELETE /users/42 → 204
Nível 3 — Hypermedia Controls (HATEOAS): as responses linkam para o que você pode fazer em seguida.
A maioria das APIs "REST" em produção está no — resources, métodos, e status codes corretos. Isso geralmente é bom o suficiente, e é um alvo perfeitamente razoável.
