The Open API Initiative has announced the preview of the OpenAPI 3.0 with an Implementer Draft scheduled for the end of February.
The new OpenAPI 3.0 specification comes with the following main improvements:
- The overall structure of the specification was refactored for better reusability, as shown in the image below
- The JSON schema includes support for
oneOf
,anyOf
andnot
- The parameters now can use a schema
- Cookie parameters are in; dataForm parameters are out
- Body parameters have their own entity
- Content type can be negotiated
- There can be multiple hosts
- The security definitions have been simplified and enhanced
- WebHooks can not be described through a callback mechanism
The Open API Initiative, the organization responsible for developing the specification, plans to have the first Implementer Draft by the end of February.
The declared purpose of the OpenAPI specification is to:
Define a standard, language-agnostic interface to REST APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic.
OpenAPI is built on Swagger 2.0 which was donated by SmartBear to the Linux Foundation with the desire to build a new organization with a neutral governance model that takes it further. Google, IBM and Microsoft became interested in contributing and are founding members of the Open API Initiative. A Technical Developer Community (TDC) was created to develop the specification. The TDC is open to any individual who wants to contribute, without requiring membership.
After a year of work on “hundreds of tickets and thousands of comments”, the OpenAPI specification is close to being final without any other major changes to be expected.