Workflow

Import and export: Postman, Insomnia, OpenAPI, cURL, HAR and more

Switching API tools should not mean rebuilding your collections by hand. Swastik Codes imports the formats your existing work is in, detects the format automatically, and exports back to standard formats so your data is never locked in.

Get started freeSign inOpen the app

Paste a cURL command and get a saved request in a collection, ready to send.

What you can import

SourceFormats
PostmanCollection v2.0 and v2.1, Collection v3 (including a Git folder of v3 files), environments, globals and full data dumps
Insomniav4 exports and v5 YAML; scripts using insomnia.* are converted to swc.*; gRPC, WebSocket and Socket.IO requests map to those protocols
OpenAPIOpenAPI 3.0 and 3.1, Swagger 2.0, in JSON or YAML
Other API descriptionsRAML 0.8 and 1.0, WSDL (SOAP requests), GraphQL SDL or introspection results
Traffic and snippetscURL commands, HAR files from browser dev tools

Postman collections keep their folders, requests, auth, scripts and tests, variables and saved examples. Imports use the public, documented formats; no Postman account or app is needed to read them.

Four ways to bring files in

The import dialog accepts a file, a whole folder (handy for a Git repository of collection files), a link to a file served over HTTP, or raw text pasted from your clipboard. You can import several files at once; each one is detected, previewed with any warnings, and then added to the current workspace.

You can also paste a cURL command straight into a request's URL bar and it becomes a full request:

Shell
curl -X POST https://api.example.com/v1/orders \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"sku":"A-1","quantity":2}'

From a GitHub repository

Import → GitHub repo builds a collection from the API routes in a public repository's code (FastAPI, Django, Flask, Express, NestJS, Next.js, Laravel, Spring, Go, Rust, Rails, ASP.NET and more), with folders, path variables, parameters, typed bodies and auth. Give it a branch and a sub-folder when the API is not at the root. It is the swc scan scanner, run for you; files written by swc scan -o import too.

A compatibility report before you import

Before anything is saved, the import preview tells you how many requests should run unchanged and lists what needs a look:

  • script calls to pm.* features Swastik Codes does not support, and require() of libraries its sandbox does not include;
  • packages from Postman's package library that your scripts load with pm.require;
  • form-data and binary bodies that point at files on the computer the collection came from;
  • {{$dynamic}} variables Swastik Codes does not generate;
  • variables that none of the imported environments or collections define, so you know to import the environment as well.

Download the report as a text file to keep with your migration notes. The lists it checks against come from the script sandbox itself, so the report and the runtime always agree.

OpenAPI import options

Turning an OpenAPI document into a useful collection involves choices, so they are configurable: name requests from the summary, operation id or URL; group them into folders by tag, by path or not at all; include or disable optional parameters; include deprecated operations; use examples or schema-based placeholders for parameters and bodies; inherit authentication; and include OpenAPI 3.1 webhooks. To keep a collection in step with a changing definition, link it to a spec in API design and sync instead of re-importing.

Export to standard formats

Export a collection as:

  • Postman Collection v2.1 (recommended for moving to tools that read Postman files)
  • Postman Collection v2.0
  • Postman Collection v3, which can also carry gRPC, WebSocket, Socket.IO, MQTT and MCP requests
  • OpenAPI 3
  • Swastik Codes native JSON, which keeps every setting

Environments export as Postman v2.0/v2.1 environments or in the native format. For version control, the workspace can be downloaded as a ZIP with one JSON file per collection and environment, and imported back with a preview of what will change.

How it works

  1. Open the app and choose Import.
  2. Drop files or a folder, paste a link or raw text, and adjust OpenAPI options if relevant.
  3. Review the preview and import. Collections land in the current workspace, ready to send.

Files are converted by the Swastik Codes server when it is reachable, with a fallback in the browser for most formats, so you can import before you create a free account. Postman Collection v3, RAML and WSDL files need the server.

Frequently asked questions

Will my Postman scripts work after import?

Scripts and tests are kept and run as they are: Postman's pm.* is the same object as Swastik Codes' swc.*. An import option converts them to swc.*, and Postman exports write pm.* back. The common libraries and legacy syntax work too. See API testing and our guide to importing a Postman collection.

Are environment secrets imported?

Variable values in the exported file are imported. Postman does not include current values in shared exports unless you choose to, so check secrets after importing and consider moving them to the vault.

Can I export back to Postman?

Yes. Export as Collection v2.1 or v2.0, which Postman and many other tools can import.

What if an import shows warnings?

Warnings list anything that could not be converted exactly, such as request types the target has no equivalent for. The rest of the file is still imported.

Try it on your own API

Swastik Codes runs in the browser and is free to use. Create an account to send requests, sync your workspaces and invite your team.