Web & HTTP

cURL Formatter

Pretty-print a curl command, or convert it to JavaScript fetch or Python requests code.

No upload, ever No account needed Works offline
Input (Paste a curl command)
0 characters
Auto-updated
// how to use it

Three steps, no reading required.

Paste your input

Drop text, code, or data into the input pane — from an API response, a file, anywhere.

Pick a mode

Toggle the modes above the output. The result updates instantly as you type.

Copy the result

Grab the output with Copy or Download, or fix the error shown if the input is invalid.

// examples

Try it with a sample.

POST with headers
curl -X POST https://api.example.com/users -H 'Content-Type: application/json' -H 'Authorization: Bearer xyz' -d '{"name":"Ada"}'
Upload with auth
curl -sS -u admin:secret https://api.example.com/upload -F '[email protected]' -F 'title=Q3 report' -m 30
TYPICAL ONLINE TOOL

A wall of one-line curl

  • Hard to read long commands
  • Risks changing what the command does
  • Uploads URLs, headers and tokens
DEVUTILSNOW

Readable, same behaviour

  • Each option on its own line with backslash continuations
  • Respects quotes and line continuations
  • Only whitespace and quoting change; URL, method, headers and data are preserved
// faq

Questions worth answering upfront.

No. Formatting runs entirely in your browser. Commands often contain tokens or API keys, and none of it ever leaves your device.

It parses the command (respecting quotes and line continuations) and re-emits it with each option on its own line using backslash continuations, so long commands are readable.

No. In Format mode only whitespace and quoting are adjusted for readability, and short options written together like -XPOST are split into -X POST. The URL, method, headers and data are preserved.

Yes. Every tool on DevUtilsNow is free to use with no account required.

This tool formats the command, not its output. To pretty-print a JSON response in a terminal, pipe it through jq (curl -s URL | jq) or Python (curl -s URL | python3 -m json.tool), or paste the response into our JSON Formatter.

Yes. Switch the mode to JavaScript fetch or Python requests. The method, headers, JSON and form bodies, multipart uploads, basic auth, cookies, -G query data and timeouts are translated. Options with no equivalent are listed as comments at the top, so nothing is dropped silently.

Yes. Both versions are parsed: bash, with its '…' and $'…' quoting, and Windows cmd, with its ^ escapes. Paste a request copied from the Network tab to get readable curl, fetch or Python code.

Need another tool?

36+ browser-based utilities — all free, all private, nothing to install.

Browse all tools →
Last updated: Oct 11, 2026