KeyValue
KeyValue
{{ rawRequest }}
Response

Loading…

Status: {{ responseStatus }}

Headers:
  • {{ h.key }}: {{ h.value }}
copied!
{{ formattedBody }}

Introduction:

Hyper-Text Transfer Protocol (HTTP) application-programming interfaces let two systems exchange structured data over the web. Each call follows a request–response pattern containing a method, target URL, optional headers, and a body that encodes payload details.

This online tool lets you compose every element of an HTTP call—method, endpoint, query string, headers, authentication, and body—inside a reactive engine. The component then sends the call directly from your browser, captures the raw response, and formats headers and body for review.

You might confirm a new endpoint before writing code, inspect unexpected status codes received in production, or share a reproducible request with a colleague. *Remember that calling secured endpoints from public networks may expose credentials.*

Technical Details:

Concept Overview

HTTP defines a stateless, text-based protocol where a client opens a TCP connection, sends a request line containing the verb and path, adds optional header fields, and transmits an optional message body. The server replies with a three-digit status code, response headers, and an optional body that may be JSON, XML, HTML, or binary.

Core Request-Response Structure

  1. Select method (GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS).
  2. Build the absolute URL and attach any query parameters.
  3. Add headers—content type, accepted formats, custom keys.
  4. Optionally encode a message body; most APIs expect JSON.
  5. Apply authentication credentials (Basic or Bearer) if required.
  6. Send the request and await the response status line, headers, and body.

Status-Code Interpretation

ClassCode RangeMeaning
Success200–299Request completed; body may contain the resource or confirmation.
Redirection300–399Client must follow a different URL to obtain the resource.
Client Error400–499Malformed request, missing auth, or forbidden action.
Server Error500–599Server recognised the request but failed to fulfil it.

Variables & Parameters

  • method – HTTP verb controlling the operation performed.
  • url – absolute or schemeless target endpoint.
  • query – key–value pairs appended to the URL.
  • headers – additional metadata such as Content-Type.
  • body – request payload for non-idempotent verbs.
  • authTypeNone, Basic, or Bearer token.

Worked Example

Retrieve a user list from an example service:

GET https://api.example.com/users?page=2 HTTP/1.1
Accept: application/json
Authorization: Bearer your_token
    

A 200 OK response returns a JSON body containing the user array.

Assumptions & Limitations

  • Client-side only – no cross-domain proxy; CORS must be enabled on the target API.
  • Large binary bodies display as plain text; they are not decoded.
  • Streaming responses are read fully before display, which may delay huge downloads.
  • Only Basic and Bearer auth are supported; other schemes require manual header entry.

Edge Cases & Error Sources

  • HTTP 301/302 responses follow redirects automatically; disabled by some servers.
  • Self-signed TLS certificates trigger network errors in modern browsers.
  • Malformed JSON bodies return raw text because parsing fails.
  • Headers with duplicate names are combined by the browser’s fetch implementation.

Scientific Validity & References

Based on RFC 7230–7235 (HTTP/1.1), RFC 9110 (Semantics), and WHATWG Fetch Living Standard.

Privacy & Compliance

The application processes request data entirely in the browser; no payloads are transmitted to third-party servers, aiding GDPR compliance.

Step-by-Step Guide:

The sequence below walks you through crafting and sending a request.

  1. Choose a Method matching the operation.
  2. Enter the full URL or paste a complete cURL command.
  3. Open Params to add or toggle query keys.
  4. Populate Headers for content type, tokens, or custom keys.
  5. Switch to Body and paste JSON or form data when required.
  6. Select Auth, choose Basic or Bearer, and enter credentials.
  7. Review the generated Raw request, then press Send.
  8. Inspect Status, Headers, and formatted Body in the Response pane.

FAQ:

Is my data stored?

No. All inputs and responses remain in your browser; nothing is sent to any external service.

Can I test secured HTTPS endpoints?

Yes, but browsers reject certificates signed by unknown authorities. Use a valid certificate or disable certificate pinning on the server.

How do I send form-encoded data?

In the Body tab, paste a key=value&other=value string and set the Content-Type header to application/x-www-form-urlencoded.

Does the tool follow redirects?

Yes. The underlying fetch call follows redirects automatically unless the target server blocks it with CORS or uses authentication-dependent redirects.

Why do I see “Network Error”?

Cross-origin requests require CORS headers. If the API omits them or blocks credentials, the browser raises a network-level error.

Glossary:

HTTP Method
Verb indicating the desired action on the resource.
Header
Key–value pair conveying metadata for the request or response.
Status Code
Three-digit server response classification.
Body
Optional payload sent with non-idempotent requests or returned by the server.
Authentication
Mechanism verifying client identity, such as Basic or Bearer token.

No data is transmitted or stored server-side; processing occurs entirely within your browser session.