openapi

Data structures needed to parse and document an OpenAPI Specification.

Members

Aliases

OasCallback
alias OasCallback = OasPathItem[string]

A map of possible out-of band callbacks related to the parent operation. Each value in the map is a OasPathItem object that describes a set of requests that may be initiated by the API provider and the expected responses. The key value used to identify the path item object is an expression, evaluated at runtime, that identifies a URL to use for the callback operation.

OasResponses
alias OasResponses = OasResponse[string]

A container for the expected responses of an operation. The container maps a HTTP response code to the expected response.

OasSecurityRequirement
alias OasSecurityRequirement = string[][string]

Lists the required security schemes to execute this operation. The name used for each property MUST correspond to a security scheme declared in the Security Schemes under the Components Object.

Classes

OasComponents
class OasComponents

Holds a set of reusable objects for different aspects of the OAS. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.

OasContact
class OasContact

Contact information for the exposed API.

OasDiscriminator
class OasDiscriminator

When request bodies or response payloads may be one of a number of different schemas, a discriminator object can be used to aid in serialization, deserialization, and validation. The discriminator is a specific object in a schema which is used to inform the consumer of the specification of an alternative schema based on the value associated with it.

OasDocument
class OasDocument

The root document of an OpenAPI Specification.

OasEncoding
class OasEncoding

A single encoding definition applied to a single schema property.

OasExample
class OasExample
Undocumented in source.
OasExternalDocumentation
class OasExternalDocumentation

Allows referencing an external resource for extended documentation.

OasHeader
class OasHeader

Data about OasHeader. The OasHeader object follows the structure of the OasParameter object with the following changes:

OasInfo
class OasInfo

The object provides metadata about the API. The metadata MAY be used by the clients if needed, and MAY be presented in editing or documentation generation tools for convenience.

OasLicense
class OasLicense

License information for the exposed API.

OasLink
class OasLink

The Link object represents a possible design-time link for a response. The presence of a link does not guarantee the caller's ability to successfully invoke it, rather it provides a known relationship and traversal mechanism between responses and other operations.

OasMediaType
class OasMediaType

Each OasMediaType object provides schema and examples for the media type identified by its key.

OasOAuthFlow
class OasOAuthFlow

Configuration details for a supported OAuth Flow.

OasOAuthFlows
class OasOAuthFlows

Allows configuration of the supported OAuth Flows.

OasOperation
class OasOperation

Describes a singel API operation on a path.

OasParameter
class OasParameter

Describes a single operation parameter.

OasPathItem
class OasPathItem

Describes the operations available on a single path. A Path Item MAY be empty, due to [ACL constraints](https://swagger.io/specification/#security-filtering). The path itself is still exposed to the documentation viewer but they will not know which operations and parameters are available.

OasRequestBody
class OasRequestBody
Undocumented in source.
OasResponse
class OasResponse

Describes a single response from an API Operation, including design-time, static links to operations based on the response.

OasSchema
class OasSchema

The OasSchema object allows the definition of input and output data types. These types can be objects, but also primitives and arrays. This object is an extended subset of the [JSON Schema Specification Wright Draft 00](https://json-schema.org/).

OasSecurityScheme
class OasSecurityScheme

Defines a security scheme that can be used by the operations. Supported schemes are HTTP authentication, an API key (either as a header, a cookie parameter or as a query parameter), OAuth2's common flows (implicit, password, client credentials and authorization code) as defined in RFC6749, and [OpenID Connect Discovery](https://tools.ietf.org/html/draft-ietf-oauth-discovery-06).

OasServer
class OasServer

An object representing a Server.

OasServerVariable
class OasServerVariable

An object representing a Server Variable for server URL template substitution.

OasTag
class OasTag

Adds metadata to a single tag that is used by the OasOperation object. It is not mandatory to have a Tag Object per tag defined in the Operation Object instances.

See Also

Meta