openapi-definition
Tool to help build/define OpenAPI Specification
Installation
$ npm install openapi-definition
Usage
This is how to build your OpenAPI Specification by using openapi-definition
OpenAPI Specification Sample
let yourOpenApi = "openapi": "3.0.0" "info": "title": "Sample API" "description": "Optional multiline or single-line description in [CommonMark](http://commonmark.org/help/) or HTML." "version": "0.1.9" "servers": "url": "http://api.example.com/v1" "description": "Optional server description, e.g. Main (production) server" "paths": {} ;
User
Schema to OpenAPI Specification
Add const od = ;const add OpenApi set = od;let yourOpenApi = ...; // Add User Schemalet user = "type": "object" "properties": "id": "type": "integer" "format": "int64" "name": "type": "string" ;odadd// add.components_schema(yourOpenApi, 'User', user) console
Output
/users
to OpenAPI Specification
Add path const od = ;const OpenApi = od;let yourOpenApi = ...; // Users Pathconst users_path = "get": "summary": "Returns a list of users." "description": "Optional extended description in CommonMark or HTML." "responses": "200": "description": "A JSON array of user names" "content": "application/json": "schema": "type": "array" "items": "type": "string" // Add users path odadd;// orodset; console
Output
Docs
OpenApi - OpenAPI document fields
All OpenAPI fields. Holds all object paths
to the OpenAPI root document.
const od = ;const OpenApi = od;console
Output
All functions
const od = ;const OpenApi = od; let openApiDef = {}; // Your OpenAPI definition let schemas = schema_1: 'Some data' schema_2: 'Some more data' schema_3: description: 'A description' type: 'object'; let dummyJSON = // Some data // ...; let server = url: 'https://staging.gigantic-server.com/v1' description: 'Staging server'; // Add callback to OpenAPI definition.odadd; // Add example to OpenAPI definition.odadd; // Add header to OpenAPI definition.odadd; // Add link to OpenAPI definition.odadd; // Add parameter to OpenAPI definition.odadd; // Add requestBody to OpenAPI definition.odadd; // Add response to OpenAPI definition.odadd; // Add schema to OpenAPI definition.openApiadd; // Add securityScheme to OpenAPI definition.odadd; // Add path to OpenAPI definition.odadd; // Add server to OpenAPI definition.odadd; // Add security to OpenAPI definition.odaddsecuritydummyJSON openApiDef; // Add tags to OpenAPI definition.odadd; // Sets/overrides path 'externalDocs' in OpenAPI definition.odset; // Sets/overrides path 'info' in OpenAPI definition.odset; // Sets/overrides path 'info_contact' in OpenAPI definition.odset; // Sets/overrides path 'info_license' in OpenAPI definition.odset; // Sets/overrides path 'openapi' in OpenAPI definition.odset; // Sets/overrides path 'yourOwnPath' in OpenAPI definition.odset;