Updates core-principles/rules-for-extending.md

Auto commit by GitBook Editor
This commit is contained in:
apidesigner
2017-01-31 14:33:11 +00:00
parent f1eb8a88f8
commit 5f1c5ff520
5 changed files with 9 additions and 7 deletions

View File

@@ -17,12 +17,12 @@
* [Changes and Versioning](core-principles/versioning.md)
* [Protocol](protocol/README.md)
* [HTTP](protocol/http.md)
* [Know your HTTP](protocol/know-your-http.md)
* [TLS](protocol/tls.md)
* [Content Negotiation ](protocol/content-negotiation.md)
* [Know your HTTP](protocol/know-your-http.md)
* [Separate Concerns](protocol/separate-concerns.md)
* [Use Appropriate Methods](protocol/use-appropriate-methods.md)
* [Use Appropriate Status Codes](protocol/use-appropriate-status-codes.md)
* [Content Negotiation ](protocol/content-negotiation.md)
* [Request Methods](protocol/use-appropriate-methods.md)
* [Status Codes](protocol/use-appropriate-status-codes.md)
* Caching
* [Miscellaneous](miscellaneous.md)

View File

@@ -1,7 +1,7 @@
# Implementation Maturity
Every API design using the HTTP(S) protocol MUST use the appropriate **HTTP Request Method semantics** ([Richardson Maturity Model Level 2](https://martinfowler.com/articles/richardsonMaturityModel.html#level2)) to implement any action afforded by a resource.
Every API design using the HTTP(S) protocol MUST use the appropriate **HTTP Request Method** ([Richardson Maturity Model Level 2](https://martinfowler.com/articles/richardsonMaturityModel.html#level2)) to implement an action afforded by a resource.
An API design implementation SHOULD include **hypermedia controls**HATEOAS([Richardson Maturity Model Level 3](https://martinfowler.com/articles/richardsonMaturityModel.html#level3)).
An API design implementation SHOULD include **hypermedia controls** (HATEOAS) ([Richardson Maturity Model Level 3](https://martinfowler.com/articles/richardsonMaturityModel.html#level3)).
(TODO: see HTTP Verbs Appendix)

View File

@@ -1,7 +1,7 @@
# Rules for Extending
Any modification to an existing API design MUST avoid breaking changes and MUST maintain backward compatibility.
In particular any change to an API design MUST follow the following Rules for Extending:
In particular, any change to an API design MUST follow the following Rules for Extending:
1. **You MUST NOT take anything away** (related: [Minimal Surface Principle](core-principles/minimal-api-surface.md)
, [Robustness Principle](core-principles/robustness.md))

View File

@@ -0,0 +1 @@
# Use Appropriate Request Methods

View File

@@ -0,0 +1 @@
# Use Appropriate Status Codes