Use HTTP Request Builder

Enter your data below to use the HTTP Request Builder

📌 Try these examples:
RESULT

Last updated

Building a GET Request

The HTTP Request Builder constructs and sends HTTP requests with full control over all parameters. Here is a basic GET request to a REST API:

/* Request configuration */
Method: GET
URL: https://api.example.com/users
Query Parameters:
  page=1
  limit=20
  sort=created_at
  order=desc

Headers:
  Accept: application/json
  Authorization: Bearer eyJhbGciOiJIUzI1NiJ9...
  X-API-Version: 2

/* Constructed URL */
GET https://api.example.com/users?page=1&limit=20&sort=created_at&order=desc

/* Equivalent curl command */
curl -X GET \
  "https://api.example.com/users?page=1&limit=20&sort=created_at&order=desc" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9..." \
  -H "X-API-Version: 2"

/* Response */
HTTP/2 200 OK
Content-Type: application/json
X-Total-Count: 142
X-Page-Number: 1

{
  "users": [
    { "id": 1, "name": "Alice", "email": "alice@example.com" },
    { "id": 2, "name": "Bob", "email": "bob@example.com" }
  ],
  "total": 142,
  "page": 1,
  "limit": 20
}

Building a POST Request with JSON Body

POST requests create new resources. The builder handles JSON body formatting and sets the correct Content-Type header:

/* Request configuration */
Method: POST
URL: https://api.example.com/users

Headers:
  Content-Type: application/json
  Accept: application/json
  Authorization: Bearer eyJhbGciOiJIUzI1NiJ9...

Body (JSON):
{
  "name": "Carol White",
  "email": "carol@example.com",
  "role": "editor",
  "preferences": {
    "notifications": true,
    "theme": "dark"
  }
}

/* Equivalent curl command */
curl -X POST \
  "https://api.example.com/users" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9..." \
  -d '{
    "name": "Carol White",
    "email": "carol@example.com",
    "role": "editor",
    "preferences": {
      "notifications": true,
      "theme": "dark"
    }
  }'

/* Response */
HTTP/2 201 Created
Content-Type: application/json
Location: https://api.example.com/users/43

{
  "id": 43,
  "name": "Carol White",
  "email": "carol@example.com",
  "role": "editor",
  "created_at": "2024-01-16T08:45:22Z"
}

Building a PUT Request (Full Update)

PUT requests replace an entire resource. Here is updating a user record:

/* Request configuration */
Method: PUT
URL: https://api.example.com/users/43

Headers:
  Content-Type: application/json
  Authorization: Bearer eyJhbGciOiJIUzI1NiJ9...

Body:
{
  "name": "Carol Johnson",
  "email": "carol.johnson@example.com",
  "role": "admin",
  "preferences": {
    "notifications": false,
    "theme": "light"
  }
}

/* Equivalent curl */
curl -X PUT \
  "https://api.example.com/users/43" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eyJhbGciOiJIUzI1NiJ9..." \
  -d '{"name":"Carol Johnson","email":"carol.johnson@example.com","role":"admin","preferences":{"notifications":false,"theme":"light"}}'

/* PATCH request — partial update */
Method: PATCH
URL: https://api.example.com/users/43
Body:
{
  "role": "admin"
}
/* Only updates the role field, leaves everything else unchanged */

Form Data and File Upload Requests

The builder handles multipart form data for file uploads:

/* File upload request */
Method: POST
URL: https://api.example.com/uploads
Content-Type: multipart/form-data

Form Fields:
  title: "Profile Photo"
  description: "User avatar image"
  file: [binary file data]

/* Equivalent curl */
curl -X POST \
  "https://api.example.com/uploads" \
  -F "title=Profile Photo" \
  -F "description=User avatar image" \
  -F "file=@/path/to/photo.jpg"

/* URL-encoded form data (no files) */
Method: POST
URL: https://api.example.com/login
Content-Type: application/x-www-form-urlencoded

Body:
  username=alice&password=secretpassword&remember_me=true

/* Equivalent curl */
curl -X POST \
  "https://api.example.com/login" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "username=alice&password=secretpassword&remember_me=true"

Authentication Examples

The builder supports all common authentication schemes:

/* Basic authentication */
Method: GET
URL: https://api.example.com/protected
Authorization: Basic YWxpY2U6c2VjcmV0cGFzc3dvcmQ=
/* base64("alice:secretpassword") */

curl -u alice:secretpassword https://api.example.com/protected

/* Bearer token (JWT) */
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkFsaWNlIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c

/* API key in header */
X-API-Key: sk_live_abcdefghijklmnopqrstuvwxyz123456

/* API key as query parameter */
GET https://api.example.com/data?api_key=sk_live_abcdefghijklmnopqrstuvwxyz123456

/* OAuth 2.0 token request */
Method: POST
URL: https://auth.example.com/oauth/token
Content-Type: application/x-www-form-urlencoded

Body:
  grant_type=client_credentials
  &client_id=your_client_id
  &client_secret=your_client_secret
  &scope=read:users write:users

Yes! HTTP Request Builder is completely free to use with no registration required. All processing is done client-side in your browser.

Absolutely! All processing happens locally in your browser. Your data never leaves your device, ensuring complete privacy and security.

Frequently Asked Questions

Simply enter your data, click the process button, and get instant results. All processing happens in your browser for maximum privacy and security.