Skip to main content

Class: OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:20

OpenApiSpec is a container for an OpenAPI specification.

This class wraps the behavior of openapi-ts to make it easier to build an OpenAPI specification dynamically at runtime using the server RapidREST information.

Constructors​

Constructor​

new OpenApiSpec(spec?): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:26

Parameters​

spec?​

OpenAPIObject

Returns​

OpenApiSpec

Accessors​

builder​

Get Signature​

get builder(): OpenApiBuilder

Defined in: service-core/src/OpenApiSpec.ts:30

Returns​

OpenApiBuilder

Set Signature​

set builder(value): void

Defined in: service-core/src/OpenApiSpec.ts:34

Parameters​
value​

OpenApiBuilder

Returns​

void


components​

Get Signature​

get components(): ComponentsObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:54

Returns​

ComponentsObject | undefined


externalDocs​

Get Signature​

get externalDocs(): ExternalDocumentationObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:66

Returns​

ExternalDocumentationObject | undefined


info​

Get Signature​

get info(): InfoObject

Defined in: service-core/src/OpenApiSpec.ts:42

Returns​

InfoObject


openapi​

Get Signature​

get openapi(): string

Defined in: service-core/src/OpenApiSpec.ts:38

Returns​

string


paths​

Get Signature​

get paths(): PathsObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:50

Returns​

PathsObject | undefined


security​

Get Signature​

get security(): SecurityRequirementObject[] | undefined

Defined in: service-core/src/OpenApiSpec.ts:58

Returns​

SecurityRequirementObject[] | undefined


servers​

Get Signature​

get servers(): ServerObject[] | undefined

Defined in: service-core/src/OpenApiSpec.ts:46

Returns​

ServerObject[] | undefined


tags​

Get Signature​

get tags(): TagObject[] | undefined

Defined in: service-core/src/OpenApiSpec.ts:62

Returns​

TagObject[] | undefined


webhooks​

Get Signature​

get webhooks(): PathsObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:70

Returns​

PathsObject | undefined

Methods​

addCallback()​

addCallback(name, callback): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:265

Parameters​

name​

string

callback​

ReferenceObject | CallbackObject

Returns​

OpenApiSpec


addContact()​

addContact(contact): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:190

Parameters​

contact​

ContactObject

Returns​

OpenApiSpec


addDescription()​

addDescription(description): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:205

Parameters​

description​

string

Returns​

OpenApiSpec


addExample()​

addExample(name, example): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:240

Parameters​

name​

string

example​

ReferenceObject | ExampleObject

Returns​

OpenApiSpec


addExternalDocs()​

addExternalDocs(extDoc): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:280

Parameters​

extDoc​

ExternalDocumentationObject

Returns​

OpenApiSpec


addHeader()​

addHeader(name, header): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:250

Parameters​

name​

string

ReferenceObject | HeaderObject

Returns​

OpenApiSpec


addInfo()​

addInfo(info): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:185

Parameters​

info​

InfoObject

Returns​

OpenApiSpec


addLicense()​

addLicense(license): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:195

Parameters​

license​

LicenseObject

Returns​

OpenApiSpec


addLink(name, link): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:260

Parameters​

name​

string

ReferenceObject | LinkObject

Returns​

OpenApiSpec


addModel()​

addModel(name, clazz): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:296

Adds a RapidREST model class to the OpenAPI specification as a schema.

Parameters​

name​

string

The name of the model to add.

clazz​

any

The class prototype to build the schema from.

Returns​

OpenApiSpec


addOpenApiVersion()​

addOpenApiVersion(openApiVersion): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:180

Parameters​

openApiVersion​

string

Returns​

OpenApiSpec


addParameter()​

addParameter(name, parameter): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:235

Parameters​

name​

string

parameter​

ReferenceObject | ParameterObject

Returns​

OpenApiSpec


addPath()​

addPath(path, pathItem): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:220

Parameters​

path​

string

pathItem​

PathItemObject

Returns​

OpenApiSpec


addRequestBody()​

addRequestBody(name, reqBody): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:245

Parameters​

name​

string

reqBody​

ReferenceObject | RequestBodyObject

Returns​

OpenApiSpec


addResponse()​

addResponse(name, response): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:230

Parameters​

name​

string

response​

ReferenceObject | ResponseObject

Returns​

OpenApiSpec


addRoute()​

addRoute(name, path, method, metadata, docs, routeClass, isWebSocket?): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:312

Adds a RapidREST route handler to the OpenAPI specification.

Parameters​

name​

string

The name of the route handler. (e.g. findAll)

path​

string

The complete path of the route handler. (e.g. /my/resources/:id)

method​

string

The HTTP verb type that the route handler processes. (e.g. GET)

metadata​

any

The object containing all API information about the route handler.

docs​

DocumentsData

The object containing all documentation information about the route handler.

routeClass​

any

The parent route class that the route handler belongs to.

isWebSocket?​

boolean = false

Returns​

OpenApiSpec


addSchema()​

addSchema(name, schema): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:225

Parameters​

name​

string

schema​

SchemaObject | ReferenceObject

Returns​

OpenApiSpec


addSecurityScheme()​

addSecurityScheme(name, secScheme): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:255

Parameters​

name​

string

secScheme​

ReferenceObject | SecuritySchemeObject

Returns​

OpenApiSpec


addServer()​

addServer(server): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:270

Parameters​

server​

ServerObject

Returns​

OpenApiSpec


addTag()​

addTag(tag): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:275

Parameters​

tag​

TagObject

Returns​

OpenApiSpec


addTermsOfService()​

addTermsOfService(termsOfService): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:210

Parameters​

termsOfService​

string

Returns​

OpenApiSpec


addTitle()​

addTitle(title): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:200

Parameters​

title​

string

Returns​

OpenApiSpec


addVersion()​

addVersion(version): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:215

Parameters​

version​

string

Returns​

OpenApiSpec


addWebhook()​

addWebhook(webhook, webhookItem): OpenApiSpec

Defined in: service-core/src/OpenApiSpec.ts:285

Parameters​

webhook​

string

webhookItem​

PathItemObject

Returns​

OpenApiSpec


createSchemaClass()​

createSchemaClass(clazz): SchemaObject

Defined in: service-core/src/OpenApiSpec.ts:610

Creates a new SchemaObject given the specified class prototype.

Parameters​

clazz​

any

The class prototype to build a schema object from.

Returns​

SchemaObject

The schema object with all information derived from the given class prototype.


createSchemaObject()​

createSchemaObject(typeInfo, defaultValue?, description?, example?, format?, identifier?): SchemaObject | ReferenceObject

Defined in: service-core/src/OpenApiSpec.ts:705

Creates a schema object for the given type.

Parameters​

typeInfo​

any

defaultValue?​

any

description?​

string

example?​

any

format?​

string

identifier?​

boolean

Returns​

SchemaObject | ReferenceObject


getParameterReference()​

getParameterReference(name): ReferenceObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:801

Returns a reference to an existing parameter defined in the OpenAPI specification for the given name.

Parameters​

name​

string

The name of the parameter to find a reference for.

Returns​

ReferenceObject | undefined

The reference to the parameter with the given name, otherwise undefined.


getSchemaReference()​

getSchemaReference(name): ReferenceObject | undefined

Defined in: service-core/src/OpenApiSpec.ts:817

Returns a reference to an existing schema defined in the OpenAPI specification for the given name.

Parameters​

name​

string

The name of the schema to find a reference for.

Returns​

ReferenceObject | undefined

The reference to the schema with the given name, otherwise undefined.


getSpec()​

getSpec(): OpenAPIObject

Defined in: service-core/src/OpenApiSpec.ts:168

Returns​

OpenAPIObject


getSpecAsJson()​

getSpecAsJson(replacer?, space?): string

Defined in: service-core/src/OpenApiSpec.ts:172

Parameters​

replacer?​

(key, value) => unknown

space?​

string | number

Returns​

string


getSpecAsYaml()​

getSpecAsYaml(): string

Defined in: service-core/src/OpenApiSpec.ts:176

Returns​

string


merge()​

merge(other): void

Defined in: service-core/src/OpenApiSpec.ts:831

Merges a provided OpenAPI specification with this specification.

Parameters​

other​

any

The other OpenAPI spec object to merge.

Returns​

void