Generate dynamic, automated Postman collections and environments directly from your Swagger/OpenAPI documentation. This tool leverages Faker.js to populate requests with realistic mock data, ensuring a robust and production-ready testing workflow.
- Smart Mocking: Automatically detects field names like
email,name,id, andpasswordto generate context-aware data. - Recursive Parsing: Deeply crawls nested objects and arrays in your Swagger schemas.
- Postman SDK: Built on top of the official
postman-collectionlibrary. - Environment Automation: Auto-generates
baseUrland security variables (API Key, Bearer Token). - CI/CD Ready: Built-in support for synchronizing collections directly to Postman Cloud.
The project is organized following the Single Responsibility Principle:
src/
├── core/ # Postman SDK logic (Collection & Environment)
├── generators/ # Mock data engine and schema traversal
├── helpers/ # Utility functions (e.g., Postman Cloud Sync)
├── services/ # Swagger analysis and business logic
├── cli.ts # CLI entry point
└── index.ts # Public library API
npx swagger-to-postman -i ./swagger.jsonnpm install -g swagger-to-postman
swagger-to-postman -i ./swagger.jsonnpm install swagger-to-postman
npx swagger-to-postman -i ./swagger.jsonnpm run build
npm linknpm run start -- -i ./swagger.json -o ./output# Using a local file
swagger-to-postman -i ./swagger.json -o ./output
# Using a remote URL
swagger-to-postman -i https://petstore.swagger.io/v2/swagger.json -o ./petstore-output| Argument | Shorthand | Description | Default |
|---|---|---|---|
--input |
-i |
(Required) Path to local swagger.json or remote URL | N/A |
--output |
-o |
Target directory for generated files | ./output |
The tool generates the following files:
output/
├── collection.json # Postman Collection
└── environment.json # Postman Environment