Skip to content

Building Requests

Thiago Miranda edited this page Jun 15, 2026 · 3 revisions

Building Requests

Everything about composing an HTTP request: method, URL, query params, headers, and the five body types. Authentication has its Authentication.

Method

A dropdown next to the URL selects the HTTP method. Supported methods:

GET · POST · PUT · DELETE · PATCH

(The method dropdown is only shown for HTTP requests — WebSocket/SSE requests use a different control; see Realtime WebSocket and SSE.) New tabs default to GET.

URL bar

Type a full URL (https://api.example.com/users) into the URL field. The field:

  • Highlights {{variables}} live — resolved variables in one colour, unknown ones in a warning colour. See Environments and Variables.
  • Keeps your cursor stable when the app echoes edits back (so typing never jumps).
  • Can be focused instantly with Cmd/Ctrl + L.
  • Has a SEND button on the right (which becomes CANCEL/STOP while a request is in flight).
  • Has an overflow menu (on narrow widths) and a Generate code action — see Code Generation.

Paste a cURL command

Paste any command starting with curl directly into the URL field. Getman runs it through its cURL parser and fills the whole request in one step:

  • Method from -X / --request (defaults to GET).
  • URL from the positional argument or --url.
  • Headers from each -H / --header (Key: value).
  • Body from -d / --data* (multiple -d flags are joined with &).
  • -G / --get converts data into query params and forces GET.
  • -u / --user becomes a Authorization: Basic … header.
  • -b / --cookie becomes a Cookie header.
  • Flags it doesn't model (-A, -e, -o, -x, --compressed, -s, -L, …) are skipped gracefully.

After parsing, a JSON body is auto-beautified for you. If the text isn't a valid cURL command, it's treated as a normal URL edit.

PARAMS tab

The query string and the PARAMS tab are two views of the same data:

  • Editing a row rewrites the URL's query string (base URL and #fragment preserved).
  • Editing the URL's query updates the rows.
  • Rows are an ordered key/value list; duplicates are allowed and order is kept.
  • The last (empty) row auto-spawns a new empty row as you type — no "add" button needed.
  • Delete a row with its trash icon. Rows with an empty key are not sent.
  • Values support {{variables}}.

HEADERS tab

A key/value editor for request headers (a map — last value wins for a repeated key). Same editing model as PARAMS (auto-adding rows, trash to delete). Header values support {{variables}}.

Note: you rarely need to set Content-Type by hand — the body type sets an appropriate one for you (see below). A header you set explicitly always wins over an automatic one.

BODY tab

Pick a body type with the chips: NONE · RAW · FORM · MULTIPART · BINARY.

NONE

No request body. Shows "THIS REQUEST HAS NO BODY". No Content-Type is forced.

RAW

A full code editor for free-form text — typically JSON.

  • Syntax highlighting for JSON (line-by-line).
  • Collapse / expand JSON objects and arrays — click the ▾/▸ chevron in the gutter (next to the line numbers) to fold a region, like VS Code or Postman. Click again to unfold.
  • Find panel with Cmd/Ctrl + F.
  • Beautify with Cmd/Ctrl + B (or the wand button) — pretty-prints JSON off the UI thread.
  • {{variables}} are resolved at send time.
  • Content-Type is yours to set (commonly application/json via the HEADERS tab).

FORM (application/x-www-form-urlencoded)

A key/value editor (text only). All non-empty-key rows are URL-encoded into the body, and Content-Type: application/x-www-form-urlencoded is set automatically. Names and values support {{variables}}.

MULTIPART (multipart/form-data)

A key/value editor where each row is either text or a file:

  • Toggle a row to file mode and click CHOOSE FILE / CHANGE FILE to pick from disk.
  • Text field names and values support {{variables}}; file paths do not (use a literal path).
  • An optional per-file content type is honoured when set.
  • The boundary Content-Type is set automatically by the HTTP client.
  • If a chosen file is missing at send time, Getman surfaces a clear error response instead of failing silently.
  • File picking needs the desktop/mobile app (not the web build).

BINARY (application/octet-stream)

Send the raw bytes of a single file. Click CHOOSE FILE / CHANGE FILE to pick it. Content-Type defaults to application/octet-stream unless you set one explicitly. Desktop/mobile only.

Sending & cancelling

  • Send: click SEND or press Cmd/Ctrl + Enter. Active environment variables are resolved into the URL, query values, header values, and body before dispatch.
  • Cancel: while sending, the button shows CANCEL/STOP with a spinner — click it to abort. The connection is torn down cleanly and no stale response arrives later. The tab returns to idle (the previous response, if any, is kept).

What gets resolved at send time

Variables are substituted into: the URL, query-param values, header values, the body, and auth credentials. Keys (header/param names) and the method are not substituted. History stores the un-resolved request so you can re-send it under a different environment. Details: Environments and Variables.

Clone this wiki locally