Converts Spring REST Docs cURL snippets to Postman and Insomnia collections
npm install restdocs-to-postmanThis project collects cURL commands generated by Spring REST Docs and
converts them to a Postman or Insomnia collection.
Output formats:
* Postman Collection Format v2.1.0
* Insomnia export format v3
Spring REST Docs is an awesome tool to generate documentation out of tests, but no API playground is provided out of the box.
Tools like Postman or Insomnia offer lots of features to play with APIs and
this project helps to bootstrap Postman and Insomnia collections from Spring REST Docs cURL snippets.
Such a feature has been requested by several people, for example in
Spring REST Docs issue 47.
This project can also be used with Spring Auto REST Docs because the
very same cURL snippets are generated.
For usage on command line, install globally
``bash`
npm install -g restdocs-to-postman
For programmatic usage, install in project
`bash`
npm install --save restdocs-to-postman
`shell`
restdocs-to-postman --input generated-snippets --export-format postman --determine-folder secondLastFolder --output postman-collection.json
From the given folder, all folders are recursively scanned for curl-request.adoc and curl-request.md files.--determine-folder secondLastFolder
Requests can be sorted into folders with .secondLastFolder
The function is the only one for now and puts a request from ../items/get/curl-request.adoc into a folder called item.--replacements replacements.json
Host and header replacements can be used with .
See replacement-example.json
for an example of a replacement file.
`javascript
const converter = require('restdocs-to-postman');
// Convert Spring REST Docs cURL commands to Postman/Insomnia collections
const folderToScan = './target/generated-snippets';
const exportFormat = 'postman';
const replacements = {
host: {
before: 'http://localhost:8080',
after: '{{host}}'
},
headers: [
{
name: 'Authorization',
newValue: '{{oauth2Token}}'
}
]
};
const output = converter.convert({folderToScan, exportFormat, replacements});
// Print the result
console.log(output);
`
Run all tests
`shell``
npm test
- Submit a Pull Request for any enhancement you made.
- Create an issue describing your particular problem.
restdocs-to-postman is Open Source software released under the
Apache 2.0 license.