mirror of
https://github.com/adidas/api-guidelines.git
synced 2025-10-25 15:19:19 +00:00
Updates core-principles/implementation-maturity.md
Auto commit by GitBook Editor
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
# Apiary
|
||||
Every API description MUST be stored in [Apiary](https://apiary.io/) under the ADIDAS GROUP team. Apiary MUST be the **single source of truth** to learn about existing APIs within the organization.
|
||||
|
||||
(TODO: see Apiary Appendix)
|
||||
|
||||
@@ -2,6 +2,3 @@
|
||||
Every API design MUST be **resource-centric** ([Web API Design Maturity Model Level 2](http://amundsen.com/talks/2016-11-apistrat-wadm/2016-11-apistrat-wadm.pdf)). That is an API design MUST revolve around Web-styled **resources**, **relations** between the resources and the **actions** the resources might afford.
|
||||
|
||||
An API design MAY be **affordance-centric** ([Web API Design Maturity Model Level 3](http://amundsen.com/talks/2016-11-apistrat-wadm/2016-11-apistrat-wadm.pdf)).
|
||||
|
||||
|
||||
(TODO: see API Design Process Appendix)
|
||||
|
||||
@@ -2,6 +2,3 @@
|
||||
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)).
|
||||
|
||||
|
||||
(TODO: see HTTP Verbs Appendix)
|
||||
|
||||
@@ -1,7 +1,5 @@
|
||||
# OpenAPI Specification
|
||||
Every API MUST be described using an API description format. The API description format used MUST be the [OpenAPI Specification (formerly known as Swagger Specification) version 2.0](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md).
|
||||
|
||||
(TODO: see OpenAPI Appendix)
|
||||
|
||||
## Language
|
||||
The API description MUST be written in **American English**.
|
||||
|
||||
@@ -2,6 +2,3 @@
|
||||
Every API description (contract) using HTTP(S) protocol MUST be tested against its API implementation. The tests MUST be executed using the [Dredd testing framework](https://github.com/apiaryio/dredd). The Dredd MUST [report the test results to Apiary](https://help.apiary.io/tools/automated-testing/testing-reporter/).
|
||||
|
||||
In addition to local runs, the tests SHOULD be an integral part the API implementation's CI/CD pipeline. The CI/CD pipeline SHOULD be configured to run the test whenever there is a change to either API description (contract) or its implementation.
|
||||
|
||||
|
||||
(TODO: see Testing and CI/CD Appendix)
|
||||
Reference in New Issue
Block a user