Skip to content

Enable Openapi 3.1.0 #844

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

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
"""
OpenAPI v3.0.3 schema types, created according to the specification:
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md
OpenAPI v3.1.0 schema types, created according to the specification:
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.1.0.md

The type orders are according to the contents of the specification:
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md#table-of-contents
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.1.0.md#table-of-contents
"""

__all__ = [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class Components(BaseModel):

References:
- https://swagger.io/docs/specification/components/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#componentsObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#componentsObject
"""

schemas: Optional[Dict[str, Union[Schema, Reference]]] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class Contact(BaseModel):
Contact information for the exposed API.

See Also:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#contactObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#contactObject
"""

name: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class Discriminator(BaseModel):

References:
- https://swagger.io/docs/specification/data-models/inheritance-and-polymorphism/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#discriminatorObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#discriminatorObject
"""

propertyName: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class Encoding(BaseModel):

References:
- https://swagger.io/docs/specification/describing-request-body/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#encodingObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#encodingObject
"""

contentType: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class Example(BaseModel):

References:
- https://swagger.io/docs/specification/adding-examples/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#exampleObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#exampleObject
"""

summary: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ class ExternalDocumentation(BaseModel):
"""Allows referencing an external resource for extended documentation.

References:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#externalDocumentationObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#externalDocumentationObject
"""

description: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class Header(Parameter):

References:
- https://swagger.io/docs/specification/describing-parameters/#header-parameters
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#headerObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#headerObject
"""

name: str = Field(default="")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class Info(BaseModel):

References:
- https://swagger.io/docs/specification/api-general-info/
-https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#infoObject
-https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#infoObject
"""

title: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class License(BaseModel):
License information for the exposed API.

References:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#licenseObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#licenseObject
"""

name: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class Link(BaseModel):

References:
- https://swagger.io/docs/specification/links/
- https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md#linkObject
- https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.1.0.md#linkObject
"""

operationRef: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class MediaType(BaseModel):

References:
- https://swagger.io/docs/specification/media-types/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#mediaTypeObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#mediaTypeObject
"""

media_type_schema: Optional[Union[Reference, Schema]] = Field(default=None, alias="schema")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class OAuthFlow(BaseModel):
Configuration details for a supported OAuth Flow

References:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#oauthFlowObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#oauthFlowObject
- https://swagger.io/docs/specification/authentication/oauth2/
"""

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class OAuthFlows(BaseModel):
Allows configuration of the supported OAuth Flows.

References:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#oauthFlowsObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#oauthFlowsObject
- https://swagger.io/docs/specification/authentication/oauth2/
"""

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ class OpenAPI(BaseModel):
"""This is the root document object of the OpenAPI document.

References:
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#oasObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#oasObject
- https://swagger.io/docs/specification/basic-structure/
"""

Expand All @@ -30,7 +30,7 @@ class OpenAPI(BaseModel):
security: Optional[List[SecurityRequirement]] = None
tags: Optional[List[Tag]] = None
externalDocs: Optional[ExternalDocumentation] = None
openapi: Union[Literal["3.0.0"], Literal["3.0.1"], Literal["3.0.2"], Literal["3.0.3"]]
openapi: Union[Literal["3.0.0"], Literal["3.0.1"], Literal["3.0.2"], Literal["3.0.3"], Literal["3.1.0"]]
model_config = ConfigDict(extra="allow")


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class Operation(BaseModel):

References:
- https://swagger.io/docs/specification/paths-and-operations/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#operationObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#operationObject
"""

tags: Optional[List[str]] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ class Parameter(BaseModel):
References:
- https://swagger.io/docs/specification/describing-parameters/
- https://swagger.io/docs/specification/serialization/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#parameterObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#parameterObject
"""

name: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class PathItem(BaseModel):

References:
- https://swagger.io/docs/specification/paths-and-operations/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#pathItemObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#pathItemObject
"""

ref: Optional[str] = Field(default=None, alias="$ref")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@

References:
- https://swagger.io/docs/specification/paths-and-operations/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#pathsObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#pathsObject
"""
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class Reference(BaseModel):

References:
- https://swagger.io/docs/specification/using-ref/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#referenceObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#referenceObject
"""

ref: str = Field(alias="$ref")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class RequestBody(BaseModel):

References:
- https://swagger.io/docs/specification/describing-request-body/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#requestBodyObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#requestBodyObject
"""

description: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class Response(BaseModel):

References:
- https://swagger.io/docs/specification/describing-responses/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#responseObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#responseObject
"""

description: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ class Schema(BaseModel):

References:
- https://swagger.io/docs/specification/data-models/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#schemaObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#schemaObject
"""

title: Optional[str] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class SecurityScheme(BaseModel):

References:
- https://swagger.io/docs/specification/authentication/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#componentsObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#componentsObject
"""

type: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ class Server(BaseModel):

References:
- https://swagger.io/docs/specification/api-host-and-base-path/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#serverObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverObject
"""

url: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ class ServerVariable(BaseModel):

References:
- https://swagger.io/docs/specification/api-host-and-base-path/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#serverVariableObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverVariableObject
"""

enum: Optional[List[str]] = None
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ class Tag(BaseModel):

References:
- https://swagger.io/docs/specification/paths-and-operations/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#tagObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#tagObject
"""

name: str
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class XML(BaseModel):

References:
- https://swagger.io/docs/specification/data-models/representing-xml/
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#xmlObject
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#xmlObject
"""

name: Optional[str] = None
Expand Down