OpenAPI Specification: Difference between revisions

Content deleted Content added
Add examples
Line 36:
[[Swagger (software)|Swagger]] development began in early 2010 by Tony Tam, who was working at online dictionary company [[Wordnik]].<ref>{{cite web|url=https://sdtimes.com/apis/swagger-creator-joins-smartbear/|title=Swagger creator joins SmartBear|access-date=August 6, 2019}}</ref>
 
In March 2015, [[SmartBear Software]] acquired the open-source Swagger API specification from Reverb Technologies, Wordnik's parent company.<ref>{{Cite web|title = SmartBear Assumes Sponsorship of Swagger API Open Source Project|url = https://smartbear.com/news/news-releases/sponsorship-of-swagger/|website = SmartBear|access-date = 2015-03-25}}</ref>
 
In November 2015, SmartBear announced that it was creating a new organization called the OpenAPI Initiative under the sponsorship of the [[Linux Foundation]]. Other founding member companies included [[3scale]], [[Apigee]], [[Capital One]], [[Google]], [[IBM]], [[Intuit]], [[Microsoft]], [[PayPal]], and Restlet.<ref name="faqs">{{cite web |title=FAQ |url=https://www.openapis.org/faq#OAIFAQ-History |website=OpenAPI Initiative |access-date=12 November 2019}}</ref><ref>{{Cite news|url=http://www.programmableweb.com/news/%E2%80%8Bsmartbear-linux-foundation-launch-open-api-initiative-to-evolve-swagger/2015/11/10|title=SmartBear, Linux Foundation launch Open API Initiative to Evolve Swagger|date=2015-11-10|work=ProgrammableWeb|access-date=2016-04-21}}</ref><ref>{{Cite web|url=http://www.linuxfoundation.org/news-media/announcements/2015/11/new-collaborative-project-extend-swagger-specification-building|title=New Collaborative Project to Extend Swagger Specification for Building Connected Applications and Services|website=www.linuxfoundation.org|access-date=2016-04-22|url-status=dead|archive-url=https://web.archive.org/web/20160427104213/http://www.linuxfoundation.org/news-media/announcements/2015/11/new-collaborative-project-extend-swagger-specification-building|archive-date=2016-04-27}}</ref> SmartBear donated the Swagger specification to the new group. [[RAML (software)|RAML]] and [https://apiblueprint.org/ API Blueprint] were also under consideration by the group.<ref>{{Cite web|url=http://www.infoworld.com/article/3014506/apis/in-2016-the-need-for-an-api-meta-language-will-crystallize.html|title=In 2016, the need for an API meta-language will crystallize|last=Montcheuil|first=Yves de|website=InfoWorld|access-date=2016-04-25}}</ref><ref>{{Cite web|url=http://www.infoq.com/news/2016/04/Amazon-API-Gateway-Swagger|title=Amazon API Gateway Now Supports Swagger Definition Import|website=InfoQ|access-date=2016-04-25}}</ref>
Line 52:
{| class="wikitable"
|-
! Version !! Date !! Notes<ref>{{cite web|url=http://b|title=OpenAPI Specification Version 3.0.4|access-date=April 23, 2020}}</ref>
|-
| 3.1.0 || 2021-02-15 || Release of the OpenAPI Specification 3.1.0
Line 80:
 
==Usage==
Applications implemented based on OpenAPI interface files can automatically generate documentation of methods, parameters and [[data model]]<nowiki/>s. This helps keep the [[Software documentation|documentation]], client libraries and source code in sync.<ref name=git>{{Cite web|title = swagger-api/swagger-spec|url = https://github.com/swagger-api/swagger-spec/wiki|website = GitHub|access-date = 2015-12-01}}</ref>
 
When an OpenAPI document is used to generate source code stubs for severs, the process is called [[Scaffold (programming)|scaffolding]].
 
=== Relationships to software engineering practices ===
The paradigm of agreeing on an API contract first and then programming business logic afterwards, in contrast to coding the program first and then writing a retrospective description of its behavior as the contract, is called contract-first development. Since the interface is determined before any code is written, downstream developers can [[Mock object|mock]] the [[Server (computing)|server]] behavior and start testing right away.<ref>{{Cite book |last=Preibisch |first=Sascha |url=https://www.worldcat.org/oclc/1076234393 |title=API development : a practical guide for business implementation success |date=2018 |isbn=978-1-4842-4140-0 |___location=[Berkeley, CA] |oclc=1076234393 |quote=Having the Swagger (or for that matter, any other machine-readable) document available, team members can start working on their part of the project at the same time.}}</ref> In this sense, contract-first development is also a practice of [[shift-left testing]].
 
Line 96:
 
==Annual conference==
The OpenAPI Initiative sponsors an annual API Specifications Conference (ASC). The event has its origins in the API Strategy and Practice Conference (APIStrat) that ran for many years and became part of the OpenAPI Initiative in 2016.
 
==See also==