Skip to main content

Class: Swagger

protoc_gen_openapiv2.options.Swagger

Swagger is a representation of OpenAPI v2 specification's Swagger object.

See: https://github.com/OAI/OpenAPI-Specification/blob/3.0.0/versions/2.0.md#swaggerObject

Example:

option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { info: { title: "Echo API"; version: "1.0"; description: ""; contact: { name: "gRPC-Gateway project"; url: "https://github.com/grpc-ecosystem/grpc-gateway"; email: "none@example.com"; }; license: { name: "BSD 3-Clause License"; url: "https://github.com/grpc-ecosystem/grpc-gateway/blob/main/LICENSE"; }; }; schemes: HTTPS; consumes: "application/json"; produces: "application/json"; };

Implements

Constructors

constructor

new Swagger(properties?): Swagger

Constructs a new Swagger.

Parameters

NameTypeDescription
properties?ISwaggerProperties to set

Returns

Swagger

Properties

basePath

basePath: string

The base path on which the API is served, which is relative to the host. If it is not included, the API is served directly under the host. The value MUST start with a leading slash (/). The basePath does not support path templating. Note that using base_path does not change the endpoint paths that are generated in the resulting OpenAPI file. If you wish to use base_path with relatively generated OpenAPI paths, the base_path prefix must be manually removed from your google.api.http paths and your code changed to serve the API from the base_path.

Implementation of

ISwagger.basePath


consumes

consumes: string[]

A list of MIME types the APIs can consume. This is global to all APIs but can be overridden on specific API calls. Value MUST be as described under Mime Types.

Implementation of

ISwagger.consumes


extensions

extensions: Object

Custom properties that start with "x-" such as "x-foo" used to describe extra functionality that is not covered by the standard OpenAPI Specification. See: https://swagger.io/docs/specification/2-0/swagger-extensions/

Index signature

▪ [k: string]: IValue

Implementation of

ISwagger.extensions


externalDocs

Optional externalDocs: null | IExternalDocumentation

Additional external documentation.

Implementation of

ISwagger.externalDocs


host

host: string

The host (name or ip) serving the API. This MUST be the host only and does not include the scheme nor sub-paths. It MAY include a port. If the host is not included, the host serving the documentation is to be used (including the port). The host does not support path templating.

Implementation of

ISwagger.host


info

Optional info: null | IInfo

Provides metadata about the API. The metadata can be used by the clients if needed.

Implementation of

ISwagger.info


produces

produces: string[]

A list of MIME types the APIs can produce. This is global to all APIs but can be overridden on specific API calls. Value MUST be as described under Mime Types.

Implementation of

ISwagger.produces


responses

responses: Object

An object to hold responses that can be used across operations. This property does not define global responses for all operations.

Index signature

▪ [k: string]: IResponse

Implementation of

ISwagger.responses


schemes

schemes: Scheme[]

The transfer protocol of the API. Values MUST be from the list: "http", "https", "ws", "wss". If the schemes is not included, the default scheme to be used is the one used to access the OpenAPI definition itself.

Implementation of

ISwagger.schemes


security

security: ISecurityRequirement[]

A declaration of which security schemes are applied for the API as a whole. The list of values describes alternative security schemes that can be used (that is, there is a logical OR between the security requirements). Individual operations can override this definition.

Implementation of

ISwagger.security


securityDefinitions

Optional securityDefinitions: null | ISecurityDefinitions

Security scheme definitions that can be used across the specification.

Implementation of

ISwagger.securityDefinitions


swagger

swagger: string

Specifies the OpenAPI Specification version being used. It can be used by the OpenAPI UI and other clients to interpret the API listing. The value MUST be "2.0".

Implementation of

ISwagger.swagger


tags

tags: ITag[]

A list of tags for API documentation control. Tags can be used for logical grouping of operations by resources or any other qualifier.

Implementation of

ISwagger.tags

Methods

toJSON

toJSON(): Object

Converts this Swagger to JSON.

Returns

Object

JSON object


create

create(properties?): Swagger

Creates a new Swagger instance using the specified properties.

Parameters

NameTypeDescription
properties?ISwaggerProperties to set

Returns

Swagger

Swagger instance


decode

decode(reader, length?): Swagger

Decodes a Swagger message from the specified reader or buffer.

Parameters

NameTypeDescription
readerUint8Array | ReaderReader or buffer to decode from
length?numberMessage length if known beforehand

Returns

Swagger

Swagger

Throws

If the payload is not a reader or valid buffer

Throws

If required fields are missing


decodeDelimited

decodeDelimited(reader): Swagger

Decodes a Swagger message from the specified reader or buffer, length delimited.

Parameters

NameTypeDescription
readerUint8Array | ReaderReader or buffer to decode from

Returns

Swagger

Swagger

Throws

If the payload is not a reader or valid buffer

Throws

If required fields are missing


encode

encode(message, writer?): Writer

Encodes the specified Swagger message. Does not implicitly grpc.gateway.protoc_gen_openapiv2.options.Swagger.verify|verify messages.

Parameters

NameTypeDescription
messageISwaggerSwagger message or plain object to encode
writer?WriterWriter to encode to

Returns

Writer

Writer


encodeDelimited

encodeDelimited(message, writer?): Writer

Encodes the specified Swagger message, length delimited. Does not implicitly grpc.gateway.protoc_gen_openapiv2.options.Swagger.verify|verify messages.

Parameters

NameTypeDescription
messageISwaggerSwagger message or plain object to encode
writer?WriterWriter to encode to

Returns

Writer

Writer


fromObject

fromObject(object): Swagger

Creates a Swagger message from a plain object. Also converts values to their respective internal types.

Parameters

NameTypeDescription
objectObjectPlain object

Returns

Swagger

Swagger


getTypeUrl

getTypeUrl(typeUrlPrefix?): string

Gets the default type url for Swagger

Parameters

NameTypeDescription
typeUrlPrefix?stringyour custom typeUrlPrefix(default "type.googleapis.com")

Returns

string

The default type url


toObject

toObject(message, options?): Object

Creates a plain object from a Swagger message. Also converts values to other types if specified.

Parameters

NameTypeDescription
messageSwaggerSwagger
options?IConversionOptionsConversion options

Returns

Object

Plain object