Skip to content

HATEOAS REST Constraints — The Uniform Interface and Self-Descriptive Messages

DodaTech Updated 2026-06-28 1 min read

In this tutorial, you will learn about HATEOAS REST Constraints. We cover key concepts, practical examples, and best practices to help you master this topic.

HATEOAS is the defining constraint of RESTful APIs. A REST API without hypermedia is just an HTTP API with RPC-style endpoints. Understanding this constraint is key to building truly RESTful systems.

What You'll Learn

  • The uniform interface constraint of REST
  • Self-descriptive messages via hypermedia
  • HATEOAS vs CRUD and RPC approaches
  • Richardson Maturity Model Level 3
  • Why most "REST APIs" are not RESTful

Why It Matters

Many APIs claim to be RESTful but stop at Level 2 of the Richardson Maturity Model. True REST (Level 3) requires hypermedia. DodaTech's API started at Level 2 and migrated to Level 3, resulting in more resilient clients that adapt to server-driven changes automatically.

flowchart TD
    A["Richardson Maturity Model"] --> B["Level 0: HTTP as transport
Single endpoint, XML payload"] A --> C["Level 1: Resources
Multiple URLs, one endpoint per resource"] A --> D["Level 2: HTTP Verbs
GET, POST, PUT, DELETE with correct semantics"] A --> E["Level 3: Hypermedia
Links guide client interactions"] B -.-> C -.-> D -.-> E style E fill:#4CAF50,color:#fff

What's Next

Read the full {{< ilink "HATEOAS" "HATEOAS as a REST Constraint" }} explanation, and compare with {{< ilink "HATEOAS" "HATEOAS vs GraphQL" }} for contrasting architectural styles.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro