Swagger Converter
Converts Swagger documents from version 1.x
to version 2.0
Installation
Use npm
npm install swagger-converter --save
Usage
It's recommended to use command line tools like swagger-tools
or swagger-spec-converter
for converting your spec. This module will not handle validation and if your spec is not valid can produce invalid spec.
convert function
converter
accept accept following arguments:
resourceListing
(required) is Swagger 1.x entry point file.apiDeclarations
(required) is a map with paths from resourceListing
as keys and resources as valuesoptions
(optional) - See options for the full list of options
var swaggerConverter = require('swagger-converter');
var resourceListing = require('/path/to/petstore/index.json');
var apiDeclarations = {
'/pet': require('/path/to/petstore/pet.json'),
'/user': require('/path/to/petstore/user.json'),
'/store': require('/path/to/petstore/store.json')
};
var swagger2Document = swaggerConverter.convert(resourceListing, apiDeclarations);
console.log(JSON.stringify(swagger2Document, null, 2));
listApiDeclarations function
listApiDeclarations
function accept following arguments:
sourceUrl
(required) - source URL for root Swagger 1.x documentresourceListing
(required) - root Swagger 1.x document
var swaggerConverter = require('swagger-converter');
var resourceListing = require('/path/to/petstore/index.json');
var apiDeclarations = swaggerConverter.listApiDeclarations('http://test.com/api-docs', resourceListing);
console.log(JSON.stringify(apiDeclarations, null, 2));
In browser
Install via Bower
bower install --save swagger-converter
Include the browser.js
script in your HTML
<script src="/path/to/swagger-converter/browser.js"></script>
Use the script
var swagger2Document = SwaggerConverter.convert(resourceListing, apiDeclarations);
Options
collectionFormat
[string] - assigned to every array parameter.
Development
Install dependencies with npm install
command and use npm test
to run the test. Tests will fail if you break coding style.
Building for browser
Just run this command to make a new browser.js
npm run build
License
MIT. See LICENSE