> restful-hateoas

RESTful API design guidelines following the Richardson Maturity Model through to Level 3 (HATEOAS) for Ruby on Rails. This skill should be used when designing, building, reviewing, or refactoring REST APIs to ensure proper resource modeling, HTTP method semantics, hypermedia controls, content negotiation, and API evolvability. Triggers on tasks involving API controllers, serializers, routing, link relations, pagination, error handling, or HTTP caching in Rails.

fetch
$curl "https://skillshub.wtf/pproenca/dot-skills/restful-hateoas?format=md"
SKILL.mdrestful-hateoas

Community RESTful HATEOAS Best Practices

Comprehensive guide to building REST APIs that reach the Glory of REST (Richardson Maturity Level 3) in Ruby on Rails. Contains 47 rules across 9 categories, ordered by the request/response lifecycle — from resource URI design through hypermedia link relations to API evolution.

When to Apply

Reference these guidelines when:

  • Designing new REST API endpoints and resource URIs
  • Adding hypermedia controls (_links, affordances) to API responses
  • Implementing content negotiation with HAL, JSON:API, or vendor media types
  • Building paginated, filterable, sortable collection endpoints
  • Reviewing APIs for proper HTTP method semantics and status codes
  • Evolving APIs without breaking existing clients

Rule Categories by Priority

PriorityCategoryImpactPrefix
1Resource ModelingCRITICALres-
2HTTP Method SemanticsCRITICALhttp-
3Hypermedia & Link RelationsCRITICALlink-
4Status Codes & Response HeadersHIGHstatus-
5Content Negotiation & Media TypesHIGHmedia-
6Collection PatternsMEDIUM-HIGHcoll-
7Error SemanticsMEDIUMerr-
8Caching & Conditional RequestsMEDIUMcache-
9API EvolutionLOW-MEDIUMevolve-

Quick Reference

1. Resource Modeling (CRITICAL)

2. HTTP Method Semantics (CRITICAL)

3. Hypermedia & Link Relations (CRITICAL)

4. Status Codes & Response Headers (HIGH)

5. Content Negotiation & Media Types (HIGH)

6. Collection Patterns (MEDIUM-HIGH)

7. Error Semantics (MEDIUM)

8. Caching & Conditional Requests (MEDIUM)

9. API Evolution (LOW-MEDIUM)

How to Use

Read individual reference files for detailed explanations and code examples:

Reference Files

FileDescription
references/_sections.mdCategory definitions and ordering
assets/templates/_template.mdTemplate for new rules
metadata.jsonVersion and reference information

┌ stats

installs/wk0
░░░░░░░░░░
github stars80
██████████
first seenMar 17, 2026
└────────────

┌ repo

pproenca/dot-skills
by pproenca
└────────────

┌ tags

└────────────