Design & Implementation Maturity
API Design Maturity
How to design an API
Every API design MUST be resource-centric (Web API Design Maturity Model Level 2). That is an API design MUST revolve around Web-styled resources, relations between the resources and the actions the resources may afford.
An API design MAY be affordance-centric (Web API Design Maturity Model Level 3).
API Design Implementation Maturity
How to implement the API design
Every API design implementation using the HTTP protocol MUST use the appropriate HTTP Request Method (Richardson Maturity Model Level 2) to implement an action afforded by a resource.
An API design implementation SHOULD include hypermedia controls (HATEOAS) (Richardson Maturity Model Level 3).