跳到内容

OpenAPI models

用于生成和验证生成的 OpenAPI 的 OpenAPI Pydantic 模型。

fastapi.openapi.models

SchemaType module-attribute

SchemaType = Literal[
    "array",
    "boolean",
    "integer",
    "null",
    "number",
    "object",
    "string",
]

SchemaOrBool module-attribute

SchemaOrBool = Schema | bool

SecurityScheme module-attribute

SecurityScheme = (
    APIKey | HTTPBase | OAuth2 | OpenIdConnect | HTTPBearer
)

BaseModelWithConfig

基类: BaseModel

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Contact

基类: BaseModelWithConfig

name class-attribute instance-attribute

name = None

url class-attribute instance-attribute

url = None

email class-attribute instance-attribute

email = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

License

基类: BaseModelWithConfig

name instance-attribute

name

identifier class-attribute instance-attribute

identifier = None

url class-attribute instance-attribute

url = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Info

基类: BaseModelWithConfig

title instance-attribute

title

summary class-attribute instance-attribute

summary = None

description class-attribute instance-attribute

description = None

termsOfService class-attribute instance-attribute

termsOfService = None

contact class-attribute instance-attribute

contact = None

license class-attribute instance-attribute

license = None

version instance-attribute

version

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

ServerVariable

基类: BaseModelWithConfig

enum class-attribute instance-attribute

enum = None

default instance-attribute

default

description class-attribute instance-attribute

description = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Server

基类: BaseModelWithConfig

url instance-attribute

url

description class-attribute instance-attribute

description = None

variables class-attribute instance-attribute

variables = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Reference

基类: BaseModel

ref class-attribute instance-attribute

ref = Field(alias='$ref')

Discriminator

基类: BaseModel

propertyName instance-attribute

propertyName

mapping class-attribute instance-attribute

mapping = None

XML

基类: BaseModelWithConfig

name class-attribute instance-attribute

name = None

namespace class-attribute instance-attribute

namespace = None

prefix class-attribute instance-attribute

prefix = None

attribute class-attribute instance-attribute

attribute = None

wrapped class-attribute instance-attribute

wrapped = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

ExternalDocumentation

基类: BaseModelWithConfig

description class-attribute instance-attribute

description = None

url instance-attribute

url

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Schema

基类: BaseModelWithConfig

schema_ class-attribute instance-attribute

schema_ = Field(default=None, alias='$schema')

vocabulary class-attribute instance-attribute

vocabulary = Field(default=None, alias='$vocabulary')

id class-attribute instance-attribute

id = Field(default=None, alias='$id')

anchor class-attribute instance-attribute

anchor = Field(default=None, alias='$anchor')

dynamicAnchor class-attribute instance-attribute

dynamicAnchor = Field(default=None, alias='$dynamicAnchor')

ref class-attribute instance-attribute

ref = Field(default=None, alias='$ref')

dynamicRef class-attribute instance-attribute

dynamicRef = Field(default=None, alias='$dynamicRef')

defs class-attribute instance-attribute

defs = Field(default=None, alias='$defs')

comment class-attribute instance-attribute

comment = Field(default=None, alias='$comment')

allOf class-attribute instance-attribute

allOf = None

anyOf class-attribute instance-attribute

anyOf = None

oneOf class-attribute instance-attribute

oneOf = None

not_ class-attribute instance-attribute

not_ = Field(default=None, alias='not')

if_ class-attribute instance-attribute

if_ = Field(default=None, alias='if')

then class-attribute instance-attribute

then = None

else_ class-attribute instance-attribute

else_ = Field(default=None, alias='else')

dependentSchemas class-attribute instance-attribute

dependentSchemas = None

prefixItems class-attribute instance-attribute

prefixItems = None

items class-attribute instance-attribute

items = None

contains class-attribute instance-attribute

contains = None

properties class-attribute instance-attribute

properties = None

patternProperties class-attribute instance-attribute

patternProperties = None

additionalProperties class-attribute instance-attribute

additionalProperties = None

propertyNames class-attribute instance-attribute

propertyNames = None

unevaluatedItems class-attribute instance-attribute

unevaluatedItems = None

unevaluatedProperties class-attribute instance-attribute

unevaluatedProperties = None

type class-attribute instance-attribute

type = None

enum class-attribute instance-attribute

enum = None

const class-attribute instance-attribute

const = None

multipleOf class-attribute instance-attribute

multipleOf = Field(default=None, gt=0)

maximum class-attribute instance-attribute

maximum = None

exclusiveMaximum class-attribute instance-attribute

exclusiveMaximum = None

minimum class-attribute instance-attribute

minimum = None

exclusiveMinimum class-attribute instance-attribute

exclusiveMinimum = None

maxLength class-attribute instance-attribute

maxLength = Field(default=None, ge=0)

minLength class-attribute instance-attribute

minLength = Field(default=None, ge=0)

pattern class-attribute instance-attribute

pattern = None

maxItems class-attribute instance-attribute

maxItems = Field(default=None, ge=0)

minItems class-attribute instance-attribute

minItems = Field(default=None, ge=0)

uniqueItems class-attribute instance-attribute

uniqueItems = None

maxContains class-attribute instance-attribute

maxContains = Field(default=None, ge=0)

minContains class-attribute instance-attribute

minContains = Field(default=None, ge=0)

maxProperties class-attribute instance-attribute

maxProperties = Field(default=None, ge=0)

minProperties class-attribute instance-attribute

minProperties = Field(default=None, ge=0)

required class-attribute instance-attribute

required = None

dependentRequired class-attribute instance-attribute

dependentRequired = None

format class-attribute instance-attribute

format = None

contentEncoding class-attribute instance-attribute

contentEncoding = None

contentMediaType class-attribute instance-attribute

contentMediaType = None

contentSchema class-attribute instance-attribute

contentSchema = None

title class-attribute instance-attribute

title = None

description class-attribute instance-attribute

description = None

default class-attribute instance-attribute

default = None

deprecated class-attribute instance-attribute

deprecated = None

readOnly class-attribute instance-attribute

readOnly = None

writeOnly class-attribute instance-attribute

writeOnly = None

examples class-attribute instance-attribute

examples = None

discriminator class-attribute instance-attribute

discriminator = None

xml class-attribute instance-attribute

xml = None

externalDocs class-attribute instance-attribute

externalDocs = None

example class-attribute instance-attribute

example = None
在 OpenAPI 3.1.0 中已弃用,该版本现使用 JSON Schema 2020-12,尽管仍受支持。请改用 examples。

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

Example

基类: TypedDict

summary instance-attribute

summary

description instance-attribute

description

value instance-attribute

value

externalValue instance-attribute

externalValue

ParameterInType

基类: Enum

query class-attribute instance-attribute

query = 'query'

header class-attribute instance-attribute

header = 'header'

path class-attribute instance-attribute

path = 'path'

cookie class-attribute instance-attribute

cookie = 'cookie'

Encoding

基类: BaseModelWithConfig

contentType class-attribute instance-attribute

contentType = None

headers class-attribute instance-attribute

headers = None

style class-attribute instance-attribute

style = None

explode class-attribute instance-attribute

explode = None

allowReserved class-attribute instance-attribute

allowReserved = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

MediaType

基类: BaseModelWithConfig

schema_ class-attribute instance-attribute

schema_ = Field(default=None, alias='schema')

example class-attribute instance-attribute

example = None

examples class-attribute instance-attribute

examples = None

encoding class-attribute instance-attribute

encoding = None

model_config class-attribute instance-attribute

model_config = {'extra': 'allow'}

ParameterBase

基类: BaseModelWithConfig

description class-attribute instance-attribute

description = None

required class-attribute instance-attribute

required = None

deprecated class-attribute instance-attribute

deprecated = None

style class-attribute instance-attribute

style = None

explode class-attribute instance-attribute

explode = None

allowReserved class-attribute instance-attribute

allowReserved = None

schema_ class-attribute instance-attribute

schema_ = Field(default=None, alias='schema')

example class-attribute instance-attribute

example = None

examples class-attribute instance-attribute

examples = None

content 类属性 实例属性

content = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

Parameter

基类: ParameterBase

name 实例属性

name

in_ 类属性 实例属性

in_ = Field(alias='in')

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

required 类属性 实例属性

required = None

deprecated 类属性 实例属性

deprecated = None

style 类属性 实例属性

style = None

explode 类属性 实例属性

explode = None

allowReserved 类属性 实例属性

allowReserved = None

schema_ 类属性 实例属性

schema_ = Field(default=None, alias='schema')

example 类属性 实例属性

example = None

examples 类属性 实例属性

examples = None

content 类属性 实例属性

content = None

Header

基类: ParameterBase

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

required 类属性 实例属性

required = None

deprecated 类属性 实例属性

deprecated = None

style 类属性 实例属性

style = None

explode 类属性 实例属性

explode = None

allowReserved 类属性 实例属性

allowReserved = None

schema_ 类属性 实例属性

schema_ = Field(default=None, alias='schema')

example 类属性 实例属性

example = None

examples 类属性 实例属性

examples = None

content 类属性 实例属性

content = None

RequestBody

基类: BaseModelWithConfig

description 类属性 实例属性

description = None

content 实例属性

content

required 类属性 实例属性

required = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

基类: BaseModelWithConfig

operationRef 类属性 实例属性

operationRef = None

operationId 类属性 实例属性

operationId = None

parameters 类属性 实例属性

parameters = None

requestBody 类属性 实例属性

requestBody = None

description 类属性 实例属性

description = None

server 类属性 实例属性

server = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

Response

基类: BaseModelWithConfig

description 实例属性

description

headers 类属性 实例属性

headers = None

content 类属性 实例属性

content = None
links = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

Operation

基类: BaseModelWithConfig

tags 类属性 实例属性

tags = None

summary 类属性 实例属性

summary = None

description 类属性 实例属性

description = None

externalDocs 类属性 实例属性

externalDocs = None

operationId 类属性 实例属性

operationId = None

parameters 类属性 实例属性

parameters = None

requestBody 类属性 实例属性

requestBody = None

responses 类属性 实例属性

responses = None

callbacks 类属性 实例属性

callbacks = None

deprecated 类属性 实例属性

deprecated = None

security 类属性 实例属性

security = None

servers 类属性 实例属性

servers = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

PathItem

基类: BaseModelWithConfig

ref 类属性 实例属性

ref = Field(default=None, alias='$ref')

summary 类属性 实例属性

summary = None

description 类属性 实例属性

description = None

get 类属性 实例属性

get = None

put 类属性 实例属性

put = None

post 类属性 实例属性

post = None

delete 类属性 实例属性

delete = None

options 类属性 实例属性

options = None

head 类属性 实例属性

head = None

patch 类属性 实例属性

patch = None

trace 类属性 实例属性

trace = None

servers 类属性 实例属性

servers = None

parameters 类属性 实例属性

parameters = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

SecuritySchemeType

基类: Enum

apiKey 类属性 实例属性

apiKey = 'apiKey'

http 类属性 实例属性

http = 'http'

oauth2 类属性 实例属性

oauth2 = 'oauth2'

openIdConnect 类属性 实例属性

openIdConnect = 'openIdConnect'

SecurityBase

基类: BaseModelWithConfig

type_ 类属性 实例属性

type_ = Field(alias='type')

description 类属性 实例属性

description = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

APIKeyIn

基类: Enum

query 类属性 实例属性

query = 'query'

header 类属性 实例属性

header = 'header'

cookie 类属性 实例属性

cookie = 'cookie'

APIKey

基类: SecurityBase

type_ 类属性 实例属性

type_ = Field(default=apiKey, alias='type')

in_ 类属性 实例属性

in_ = Field(alias='in')

name 实例属性

name

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

HTTPBase

基类: SecurityBase

type_ 类属性 实例属性

type_ = Field(default=http, alias='type')

scheme 实例属性

scheme

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

HTTPBearer

基类: HTTPBase

scheme 类属性 实例属性

scheme = 'bearer'

bearerFormat 类属性 实例属性

bearerFormat = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

type_ 类属性 实例属性

type_ = Field(default=http, alias='type')

description 类属性 实例属性

description = None

OAuthFlow

基类: BaseModelWithConfig

refreshUrl 类属性 实例属性

refreshUrl = None

scopes 类属性 实例属性

scopes = {}

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

OAuthFlowImplicit

基类: OAuthFlow

authorizationUrl 实例属性

authorizationUrl

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

refreshUrl 类属性 实例属性

refreshUrl = None

scopes 类属性 实例属性

scopes = {}

OAuthFlowPassword

基类: OAuthFlow

tokenUrl 实例属性

tokenUrl

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

refreshUrl 类属性 实例属性

refreshUrl = None

scopes 类属性 实例属性

scopes = {}

OAuthFlowClientCredentials

基类: OAuthFlow

tokenUrl 实例属性

tokenUrl

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

refreshUrl 类属性 实例属性

refreshUrl = None

scopes 类属性 实例属性

scopes = {}

OAuthFlowAuthorizationCode

基类: OAuthFlow

authorizationUrl 实例属性

authorizationUrl

tokenUrl 实例属性

tokenUrl

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

refreshUrl 类属性 实例属性

refreshUrl = None

scopes 类属性 实例属性

scopes = {}

OAuthFlows

基类: BaseModelWithConfig

implicit 类属性 实例属性

implicit = None

password 类属性 实例属性

password = None

clientCredentials 类属性 实例属性

clientCredentials = None

authorizationCode 类属性 实例属性

authorizationCode = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

OAuth2

基类: SecurityBase

type_ 类属性 实例属性

type_ = Field(default=oauth2, alias='type')

flows 实例属性

flows

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

OpenIdConnect

基类: SecurityBase

type_ 类属性 实例属性

type_ = Field(default=openIdConnect, alias='type')

openIdConnectUrl 实例属性

openIdConnectUrl

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

description 类属性 实例属性

description = None

Components

基类: BaseModelWithConfig

schemas 类属性 实例属性

schemas = None

responses 类属性 实例属性

responses = None

parameters 类属性 实例属性

parameters = None

examples 类属性 实例属性

examples = None

requestBodies 类属性 实例属性

requestBodies = None

headers 类属性 实例属性

headers = None

securitySchemes 类属性 实例属性

securitySchemes = None
links = None

callbacks 类属性 实例属性

callbacks = None

pathItems 类属性 实例属性

pathItems = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

Tag

基类: BaseModelWithConfig

name 实例属性

name

description 类属性 实例属性

description = None

externalDocs 类属性 实例属性

externalDocs = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}

OpenAPI

基类: BaseModelWithConfig

openapi 实例属性

openapi

info 实例属性

info

jsonSchemaDialect 类属性 实例属性

jsonSchemaDialect = None

servers 类属性 实例属性

servers = None

paths 类属性 实例属性

paths = None

webhooks 类属性 实例属性

webhooks = None

components 类属性 实例属性

components = None

security 类属性 实例属性

security = None

tags 类属性 实例属性

tags = None

externalDocs 类属性 实例属性

externalDocs = None

model_config 类属性 实例属性

model_config = {'extra': 'allow'}