🛸 Convert Postman Collection v2.1/v2.0 to OpenAPI v3.0.
Or in other words, transform this specification and also this to this one
Using npm
:
npm i postman-to-openapi
Using yarn
:
yarn add postman-to-openapi
// Require Package
const postmanToOpenApi = require('postman-to-openapi')
// Postman Collection Path
const postmanCollection = './path/to/postman/collection.json'
// Output OpenAPI Path
const outputFile = './api/collection.yml'
// Async/await
try {
const result = await postmanToOpenApi(postmanCollection, outputFile, { defaultTag: 'General' })
// Without save the result in a file
const result2 = await postmanToOpenApi(postmanCollection, null, { defaultTag: 'General' })
console.log(`OpenAPI specs: ${result}`)
} catch (err) {
console.log(err)
}
// Promise callback style
postmanToOpenApi(postmanCollection, outputFile, { defaultTag: 'General' })
.then(result => {
console.log(`OpenAPI specs: ${result}`)
})
.catch(err => {
console.log(err)
})
All features, usage instructions and help can be found in the Documentation page
This project use for development:
- Node.js v10.15.3 or higher
- Standard JS rules to maintain clean code.
- Use Conventional Commit for commit messages.
- Test with mocha.js.
Use the scripts in package.json
:
test:unit
: Run mocha unit test.test
: Executetest:lint
plus code coverage.lint
: Execute standard lint to review errors in code.lint:fix
: Execute standard lint and automatically fix errors.changelog
: Update changelog automatically.
Husky is configured to avoid push incorrect content to git.
Nodejs
Javascript
OpenAPI
Postman
Newman
Collection
Transform
Convert
See the LICENSE file.