OpenAPI Specification
Swagger is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services.
With 3110 "stars" on GitHub, Swagger calls itself "The World's Most Popular Framework for APIs".[1]
On 1 January 2016 Swagger was renamed the OpenAPI Specification.[2]
Usage
Applications implemented with the Swagger framework contain documentation of methods, parameters and models directly in their source code. This prevents the situation when the documentation, client libraries, and source code get out of sync. The overarching goal of Swagger is to enable client and documentation systems to update at the same pace as the server.
History
Both the specification and framework implementation are initiatives from Wordnik. Swagger was developed for Wordnik's own use during the development of Wordnik Developer and the underlying API.[3][4] Swagger development began in early 2010.[5]
In November 2015 SmartBear, the company that maintained Swagger, announced that it was creating a new organization, the Open API Initiative, and would be donating the Swagger specification to the new group.[6] On 1 January 2016 the Swagger specification was renamed the OpenAPI Specification, and was moved to a new repository in GitHub.
Features
The Swagger framework addresses server, client, documentation, and sandbox needs for RESTful APIs.
As a specification, it is language-agnostic. It is also extensible into new technologies and protocols beyond HTTP.
With Swagger's declarative resource specification, clients can understand and consume services without knowledge of server implementation or access to the server code.
The Swagger UI framework allows both developers and non-developers to interact with the API in a sandbox UI that gives clear insight into how the API responds to parameters and options. Swagger may utilize both JSON and XML.
See also
References
Bibliography
- Haupt, F.; Karastoyanova, D.; Leymann, F.; Schroth, B. (2014). A Model-Driven Approach for REST Compliant Services. ICWS 2014. 2014 IEEE International Conference on Web Services. pp. 129–136. doi:10.1109/ICWS.2014.30. ISBN 978-1-4799-5054-6.