HATEOAS
Hypermedia As The Engine Of Application State
ELI5 — The Vibe Check
HATEOAS is the REST principle that nobody actually follows. The idea is that API responses should include links telling the client what it can do next, like a 'choose your own adventure' book. In theory it's beautiful. In practice, everyone just reads the API docs.
Real Talk
HATEOAS is a constraint of REST architecture where responses include hypermedia links that describe available actions and state transitions. A HATEOAS-compliant API allows clients to navigate the entire API by following links rather than hardcoding URLs. While theoretically ideal for decoupling clients from servers, it's rarely implemented fully in practice.
Show Me The Code
{
"id": 1,
"name": "Alice",
"_links": {
"self": { "href": "/users/1" },
"orders": { "href": "/users/1/orders" },
"delete": { "href": "/users/1", "method": "DELETE" }
}
}
When You'll Hear This
"Our API is RESTful but not HATEOAS — we use docs instead of hypermedia links." / "HATEOAS sounds great in theory but adds complexity nobody asked for."
Related Terms
API (Application Programming Interface)
An API is like a menu at a restaurant. The kitchen (server) can do a bunch of things, but you can only order what's on the menu.
REST (Representational State Transfer)
REST is a set of rules for how APIs should behave. Think of it as the etiquette guide for servers and clients talking to each other.
Richardson Maturity Model
The Richardson Maturity Model is just the formal name for the REST Maturity Model — named after Leonard Richardson who defined the four levels. It's the sa