-
Notifications
You must be signed in to change notification settings - Fork 9.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
v3.1.0-rc0 Release #2251
Merged
Merged
v3.1.0-rc0 Release #2251
Changes from 40 commits
Commits
Show all changes
41 commits
Select commit
Hold shift + click to select a range
7a5b183
3.1.0 prep
webron 77f86eb
Update README
webron e985f13
Allow specification extensions in discriminator object
MikeRalphson eb92123
Note that specification extensions beginning x-oas- are reserved
MikeRalphson 3083f1a
Merge pull request #1715 from MikeRalphson/specext-oas
webron 334cf53
Merge pull request #1714 from MikeRalphson/discrim-ext
webron d27bb1c
security; add mutualTLS securityScheme type
MikeRalphson a76dad5
Merge pull request #1764 from MikeRalphson/v3.1-mutualTLS
webron 5f6a25a
832 add info.summary (#1779)
ioggstream 5044418
fix OIDC url and OAuth2 requirements
AxelNennker 192aafe
Merge pull request #1959 from AxelNennker/fix_OICD_and_OAuth2
MikeRalphson ac236d1
Update Schema Object to proper JSON Schema
f8f92ed
update vocab and arbitrary props
e121405
another go at arbitrary keywords
5905f45
feedback from @handrews
0ec2c73
Support style, explode, allowReserved encoding for multipart/form-dat…
4822592
default should match json schema
d67f350
removed json schema keyworld list, its just all of em.
bb9a6f2
redundant $ref reference
e3c236a
Merge pull request #1977 from philsturgeon/json-schema-update
webron fd39bcd
Correct Styles Values for spaceDelimited and pipeDelimited, as based …
Arhimenrius 61f9d7e
Add support for webhooks as a top-level element (#2103)
lornajane 3cb92bd
Align the OAS 3.1 nullable language with the 3.0.3 (#2115)
handrews c37a305
allow, but discourage, requestBody for GET, HEAD, DELETE (#2117)
n2ygk 92a9104
Reference Object and Schema Object use of $ref updates for 2019-09 / …
handrews c376bef
Fix table cell formatting containing `nullable` description (#2152)
hkosova 70ecce7
Add SPDX identifier field to license object, fixes #1599 (#2105)
MikeRalphson c6415fe
Add information about objects to the description too
Arhimenrius a6b99bc
Make paths object optional (#1781)
MikeRalphson b5a15df
Fwd port v3.0.3 dev to v3.1.0 dev (#2163)
MikeRalphson b45d0d8
security; widen use of scopes array to other securityScheme types (#1…
MikeRalphson cafadc9
Allow summary and description as $ref siblings (#2181)
MikeRalphson 6abda3b
Merge pull request #2101 from Arhimenrius/correct-style-values-types
earth2marsh 1a8d44f
HTTP not REST (#1946)
philsturgeon d5b65bb
Missing updates
webron 3678d30
Merge pull request #2224 from OAI/Missing-updates
MikeRalphson ece5497
Remove boolean compatibility for exclusive* (#2226)
handrews 69662e4
Update "format" and "content*" for new JSON Schema (#2200)
handrews 835a18f
[3.1.0-dev] drop OAS semver requirement (#2243)
MikeRalphson ee77d2d
Remove "nullable" entirely (#2246)
handrews 3a96dfe
Update version for release (#2269)
webron File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,13 +4,17 @@ | |
|
||
![](https://avatars3.githubusercontent.com/u/16343502?v=3&s=200) | ||
|
||
|
||
**This is the WIP branch for the next minor version of the spec - 3.1.0. Non-breaking changes should be submitted against this branch, specifically against [3.1.0.md](https://github.com/OAI/OpenAPI-Specification/blob/v3.1.0-dev/versions/3.1.0.md).** | ||
|
||
|
||
The OpenAPI Specification is a community-driven open specification within the [OpenAPI Initiative](https://www.openapis.org/), a Linux Foundation Collaborative Project. | ||
|
||
The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for [REST APIs](https://en.wikipedia.org/wiki/Representational_state_transfer), which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service. | ||
The OpenAPI Specification (OAS) defines a standard, programming language-agnostic interface description for HTTP APIs, which allows both humans and computers to discover and understand the capabilities of a service without requiring access to source code, additional documentation, or inspection of network traffic. When properly defined via OpenAPI, a consumer can understand and interact with the remote service with a minimal amount of implementation logic. Similar to what interface descriptions have done for lower-level programming, the OpenAPI Specification removes guesswork in calling a service. | ||
|
||
Use cases for machine-readable API definition documents include, but are not limited to: interactive documentation; code generation for documentation, clients, and servers; and automation of test cases. OpenAPI documents describe an API's services and are represented in either YAML or JSON formats. These documents may either be produced and served statically or be generated dynamically from an application. | ||
Use cases for machine-readable API definition documents include, but are not limited to: interactive documentation; code generation for documentation, clients, and servers; and automation of test cases. OpenAPI documents describe an APIs services and are represented in either YAML or JSON formats. These documents may either be produced and served statically or be generated dynamically from an application. | ||
|
||
The OpenAPI Specification does not require rewriting existing APIs. It does not require binding any software to a service — the service being described may not even be owned by the creator of its description. It does, however, require the capabilities of the service be described in the structure of the OpenAPI Specification. Not all services can be described by OpenAPI — this specification is not intended to cover every possible style of REST APIs. The OpenAPI Specification does not mandate a specific development process such as design-first or code-first. It does facilitate either technique by establishing clear interactions with a REST API. | ||
The OpenAPI Specification does not require rewriting existing APIs. It does not require binding any software to a service — the service being described may not even be owned by the creator of its description. It does, however, require the capabilities of the service be described in the structure of the OpenAPI Specification. Not all services can be described by OpenAPI — this specification is not intended to cover every possible style of HTTP APIs, but does include support for [REST APIs](https://en.wikipedia.org/wiki/Representational_state_transfer). The OpenAPI Specification does not mandate a specific development process such as design-first or code-first. It does facilitate either technique by establishing clear interactions with a HTTP API. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. nit: |
||
|
||
This GitHub project is the starting point for OpenAPI. Here you will find the information you need about the OpenAPI Specification, simple examples of what it looks like, and some general information regarding the project. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
openapi: 3.1.0 | ||
info: | ||
title: Webhook Example | ||
version: 1.0.0 | ||
paths: | ||
# OpenAPI documents all need a paths element | ||
/pets: | ||
get: | ||
summary: List all pets | ||
operationId: listPets | ||
parameters: | ||
- name: limit | ||
in: query | ||
description: How many items to return at one time (max 100) | ||
required: false | ||
schema: | ||
type: integer | ||
format: int32 | ||
responses: | ||
'200': | ||
description: A paged array of pets | ||
content: | ||
application/json: | ||
schema: | ||
$ref: "#/components/schemas/Pets" | ||
|
||
webhooks: | ||
# Each webhook needs a name | ||
newPet: | ||
# This is a Path Item Object, the only difference is that the request is initiated by the API provider | ||
post: | ||
requestBody: | ||
description: Information about a new pet in the system | ||
content: | ||
application/json: | ||
schema: | ||
$ref: "#/components/schemas/Pet" | ||
responses: | ||
"200": | ||
description: Return a 200 status to indicate that the data was received successfully | ||
|
||
components: | ||
schemas: | ||
Pet: | ||
required: | ||
- id | ||
- name | ||
properties: | ||
id: | ||
type: integer | ||
format: int64 | ||
name: | ||
type: string | ||
tag: | ||
type: string | ||
Pets: | ||
type: array | ||
items: | ||
$ref: "#/components/schemas/Pet" | ||
|
||
|
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in this case "API's service" is the correct use of the possessive, as the services belong to the API.