cURL → JavaScript
Runs locally in your browser. Your input is not uploaded.Free, no sign-up
cURL command
JavaScript
Convert cURL commands to JavaScript fetch() code.
How to use the cURL to JavaScript converter
- Paste a curl command, or click Sample.
- Copy the
fetch()code. It runs in browsers, Node.js 18+, Deno and Bun.
What's translated
- JSON bodies become
JSON.stringify({…})of a readable object; other bodies stay strings. -ubecomes a BasicAuthorizationheader,-FaFormDataupload, and--max-timeanAbortSignal.timeout().- Headers browsers won't let scripts set, like
CookieandUser-Agent, get a comment: Node.js sends them, browsers don't.
Frequently asked questions
Why does the code use await at the top level?
It's allowed in ES modules (.mjs files, <script type="module">) and the browser console. Elsewhere, wrap it in an async function.
Which cURL options are understood?
The ones that shape a request: -X, -H, -d and its variants (--data-raw, --data-binary, --data-urlencode, --json), -F, -u, -b, -A, -e, -G, -I, -L, -k and --max-time. Output options like -s or -o are ignored, and anything else is listed under the result.
Can I paste "Copy as cURL" from the browser?
Yes, in bash or Windows format: $'…' quoting and \, ^ or ` line continuations are handled. Remove session cookies and tokens you don't want in your code.
Is my command uploaded or run?
No. It's parsed and converted in your browser; nothing is sent.
Related tools
All tools- cURL GeneratorBuild cURL commands from a method, URL, headers, body and authentication.
- cURL → JavaConvert cURL commands to Java HttpClient, Spring RestClient or WebClient code.
- cURL → PythonConvert cURL commands to Python requests code.
- HTTP Request BuilderBuild an HTTP request and generate the raw message plus cURL, Java, JavaScript and Python code.
- HTTP Status Code LookupLook up HTTP status codes with clear descriptions and typical causes.