Emojar – free online tools

HTTP Request Builder

Build an HTTP request visually — method, URL, query parameters, headers, JSON or form body and auth — and get ready-to-run code for cURL, JavaScript fetch, Axios, Python requests, Node.js, HTTPie and PowerShell, with correct quoting for each.

This tool runs entirely in your browser.

Loading tool…

How to use the HTTP Request Builder

  1. 1Pick the method and enter the URL — its query string fills the parameters table, and editing the table updates the URL.
  2. 2Add headers, choose a body type (JSON, form, raw text or multipart text fields) and optionally a Bearer token or Basic login.
  3. 3Choose a language tab — cURL, fetch, Axios, Python, Node.js, HTTPie or PowerShell — and copy the code.
  4. 4Run the code in your terminal or project. The builder itself never sends the request.

What is the HTTP Request Builder?

The request builder turns a form into code. Content-Type is set for you from the body type (unless you set one), Basic auth is base64-encoded into an Authorization header, and query parameters are percent-encoded. Each language gets its own escaping: single quotes in shell commands become '\'', JavaScript and Python strings escape quotes, backslashes and line breaks, so values containing quotes, $ signs, newlines or emoji paste safely.

It deliberately doesn’t send requests. Browsers enforce CORS: a page on one site can only call another site’s API if that API explicitly allows it, so a browser-based sender either fails for most APIs or needs a proxy server that would see your data and tokens. Generating code keeps everything on your device.

Frequently asked questions

Why can’t this tool send the request for me?

Browsers block cross-origin requests unless the target API allows them via CORS headers, and most APIs don’t. Getting around that would need a proxy server that sees your data and tokens, so the builder only writes the code for you to run.

Are my tokens and passwords saved?

No. Nothing is stored or sent anywhere — values live only in this tab’s memory and disappear when you close it. Remember that the generated code contains them, so be careful where you paste it.

How do I send JSON with cURL?

Choose the JSON body type: the cURL tab adds -H 'Content-Type: application/json' and --data-raw with your JSON, quoted so it survives the shell. --data-raw also makes cURL use POST unless you choose another method.

Can I upload a file with multipart?

The builder writes text fields only, because a web page can’t embed your local files into code. Add a file part by hand, for example -F 'file=@photo.jpg' in cURL or files={"file": open("photo.jpg", "rb")} in Python.

Is the HTTP Request Builder free and private?

Yes. The HTTP Request Builder is free, needs no account, and runs entirely in your browser. What you type is never sent to a server or stored.