Zero Signup ToolsFree browser tools

Developer Tools

cURL to Postman Converter

Convert one or many curl commands into a Postman Collection v2.1 JSON file. Method, URL, headers, body, basic and bearer auth, formdata, and variables.

Presets

What gets converted

Method and URL
The method comes from -X / --request, or is inferred (POST when a body is set, GET otherwise). The URL is parsed into Postman's structured url{} so it shows up in the address bar with the path segments, query parameters, and protocol filled in.
Headers
Every -H header becomes a Postman header entry. -A / --user-agent, -e / --referer, and -b / --cookie are added under the matching header names. Authorization: Bearer is promoted to the bearer auth block; Authorization: Basic is decoded into basic auth fields.
Body
-d / --data / --data-raw / --data-binary are imported as a raw body. The Content-Type header or JSON shape sets the language hint so Postman highlights the body correctly. Form-style bodies use urlencoded mode; -F parts use formdata mode (with file rows keeping the original @path placeholder).
Auth
-u user:pass becomes Postman basic auth. Authorization: Bearer in headers becomes Postman bearer auth so token values are managed in the Authorization tab. Anything else stays in headers verbatim.
Multiple commands
Paste many curl commands in one go. Blank lines, ; separators, and && or || chain operators between commands create separate requests in the same collection. The same parser handles each command independently.
Variables
Postman {{variable}} markers in your URL, headers, body, or auth values are kept verbatim, so the collection imports cleanly into a workspace that already defines those environment variables.

How to import into Postman

  1. Click Download .json above (or copy the JSON) to save the collection file to your machine.
  2. In Postman, open your workspace and click Import in the top left, then drag the .json file in or select it from disk.
  3. Postman detects the v2.1 schema and creates a new collection. Each parsed curl command appears as a separate request you can run, tweak, or share.
  4. Re-select any local file paths from multipart uploads (Postman clears file references on import for security) and the collection is ready to send.

How to use

  1. Paste one curl command in the input box, or several at once separated by blank lines, semicolons, or && operators. Click Load sample for a working multi-request example.
  2. Adjust the collection name on the right; the filename updates to match. Each parsed request shows its method pill, derived name, and URL so you can spot mistakes before downloading.
  3. Watch the warnings panel for unsupported flags or bodies that looked like JSON but did not parse; the request still imports, the warning just flags what to double-check.
  4. Click Download .json to save the .postman_collection.json file, or Copy JSON to paste the collection into another tool. Use a Preset (POST JSON, multipart upload, basic auth, etc.) to see how each shape maps before pasting your own commands.
  5. In Postman, click Import in the top left of your workspace and drag the .json file in. Postman creates a new collection with every parsed request ready to send; re-select any local file paths for multipart uploads (Postman clears file references on import for security) and you are ready to go.

About this tool

cURL to Postman Converter takes one or many curl commands and emits a downloadable Postman Collection v2.1 JSON file that imports directly into a Postman workspace. The parser tokenizes each command the way a POSIX shell does: single-quoted arguments stay literal, double-quoted arguments respect the standard backslash escapes for backslash, dollar, backtick, and double quote, $'...' ANSI-C quoting expands the common control codes, backslash line continuations are folded into a single logical line, and short flags can be glued together so -XPOST and -X POST both parse. It understands the flags engineers actually use in pasted curl: -X / --request for the method, -H / --header for headers, -d / --data, --data-raw, --data-binary, --data-ascii, and --data-urlencode for bodies (with -G folding the data back into the query string), -F / --form for multipart parts (including the leading @ marker for file uploads), -u / --user for HTTP Basic credentials, -b / --cookie, -A / --user-agent, and -e / --referer for those convenience headers, plus a long list of recognized boolean flags (-L, -s, -i, -v, --compressed, --http2, retry options, and more) that do not affect the request shape. Each parsed request becomes a Postman item with the method, the structured url object (protocol, host segments, path segments, and query parameters extracted from the URL), the request headers, and a body block that matches the curl semantics: -F parts become formdata with file rows preserving the original local path so Postman can prompt the importer to re-attach the file, urlencoded bodies become the matching mode, and raw bodies are imported with a language hint inferred from the Content-Type header or from the body shape so Postman renders JSON, XML, and HTML bodies with the right syntax highlighting. Authentication is split out into Postman's auth block where possible: -u user:password becomes a basic auth entry, an Authorization: Bearer header is promoted to a bearer token entry, and an Authorization: Basic base64 header is decoded back into username and password so round-tripping with the matching postman-to-curl converter preserves the original credentials. Postman {{variable}} markers in your URL, headers, body, and auth values are kept verbatim so the collection imports cleanly into a workspace that already defines those environment variables. Paste many commands in one go: blank lines, lone semicolons, and && or || chain operators between curl invocations split the input into separate requests in the same collection. The output is downloadable as a .postman_collection.json file with a fresh _postman_id v4 UUID and the official v2.1.0 schema URL, ready to drag into Postman's Import dialog. All parsing and JSON generation runs in the browser, so the URLs, bearer tokens, basic auth credentials, cookies, and JSON bodies in your curl commands never leave your device.

Free to use. Works in your browser. No signup, no login.

Related tools

You may also like

All tools
All toolsDeveloper Tools