Skip to content

Responses

Thiago Miranda edited this page Jun 25, 2026 · 6 revisions

Responses

After a send, the response panel shows the result. At the top sit three chips:

  • STATUS — the HTTP status code, colour-coded (e.g. green for 2xx, red for 4xx/5xx).
  • TIME — round-trip duration in milliseconds.
  • SIZE — response body size, human-readable (e.g. 1.5 KB).

Once a tab has more than one recent response, a HISTORY dropdown joins the chips — see Response history (time-travel).

Below them are four tabs: BODY · HEADERS · COOKIES · TESTS. While a request is in flight you'll see a loading skeleton; before any send, an empty "no response yet" state.

When a response arrives, the active theme plays a reaction scaled to the outcome — a success flourish for 2xx/3xx, an error effect for 4xx/5xx — and the same for network failures and cancellations. See Themes and Appearance#reactive-effects (and THEME SOUNDS in Settings for optional audio cues).

BODY tab

Pretty / Raw / Tree

A PRETTY / RAW / TREE toggle sits above the viewer. PRETTY formats and syntax-highlights JSON; RAW shows the body exactly as received; TREE renders a collapsible tree (see below). The body is read-only. TREE is only available when the body is a JSON object or array under the large-response size limit — otherwise the segment is greyed out.

Tree view

TREE shows the JSON as a foldable tree: click any object/array row to collapse or expand it (the first level opens automatically). Each row has a menu (appears on hover) with:

  • Copy value — the scalar value, or the whole sub-tree as JSON for an object/array.
  • Copy path — the node's JSONPath (e.g. $.user.addresses[0].zip), ready to paste into an extraction rule.
  • Extract to {{var}} — creates an Tests and Chaining for that path in one click (a starting variable name is filled in from the key; refine it in the RULES tab). The rule runs on every subsequent send.

Collapse / expand (Pretty)

In the PRETTY viewer, JSON objects and arrays can also be folded — click the ▾/▸ chevron in the gutter (next to the line numbers) to collapse a region down to a single line, like VS Code or Postman. Click again to unfold. (Folding lives in the editor view, so it isn't available in the plain-text large-response viewer.)

Actions

  • Copy (copy icon) — copies the exact body text to the clipboard ("Response copied").
  • Save response to file (save icon) — opens a save dialog (default response.json); allowed extensions are .json and .txt. Saves the verbatim body.
  • Save as example (bookmark icon) — only shown when the tab is linked to a saved request and a response exists. Captures the request + response as a reusable Collections under that collection node. You're prompted for a name (default like 200 · 14:32).
  • Compare response — diffs this response against an earlier response from this tab (PREVIOUS RESPONSES (this tab)), a saved example, or a recent matching history entry. Shown only when a response exists; disabled when there's nothing to compare against. See Response Diff.

Large responses

To stay fast, big bodies are handled specially:

  • ≥ ~512 KB: shown in a plain-text viewer (no highlighting) with a banner reading e.g. LARGE RESPONSE (2.1 MB) — HIGHLIGHTING DISABLED. A long body shows a SHOW FULL button (initial preview is ~256 KB), and a PRETTIFY ANYWAY button to opt into highlighting (you accept the render cost).
  • Always prettify large responses — a Settings that auto-highlights large bodies instead of using the plain viewer.
  • > ~1 MB: to avoid bloating local storage, the persisted copy is replaced by a placeholder ([response body over 1 MB was not persisted — re-send the request]). The full body is still available in the current session for Copy/Save; after a restart, re-send to fetch it again.

Rich previews (images, media, PDF, CSV, HTML)

When a response isn't text/JSON, Getman renders it instead of dumping raw bytes. The type is detected from the Content-Type header (falling back to the URL's file extension), and the BODY tab swaps the PRETTY/RAW/TREE toggle for a PREVIEW / RAW switch over a dedicated viewer:

  • Images (PNG, JPEG, GIF, WebP, BMP) — shown inline; drag to pan, pinch/scroll to zoom.
  • Video & audio (MP4, WebM, MKV, MOV, MP3, WAV, OGG, FLAC, AAC, and virtually any other format) — an embedded player. Video shows the picture; audio shows a play/pause control and a seek bar.
  • PDF — rendered inline, scrollable and zoomable.
  • CSV — parsed into a scrollable table (the first row is treated as the header; very large files show the first 500 rows).
  • HTML — the source is shown inline, with an OPEN IN BROWSER button (desktop) that opens the page in your real browser for a faithful preview.
  • Anything else (e.g. ZIP and other binary types) — a card showing the content type and size with a SAVE TO FILE button.

RAW for any media response shows that same type + size card with SAVE TO FILE — never garbled text.

A few things to know:

  • In-session only. Media is held in memory for the current session and is not saved to disk. After an app restart — or when you flip back to an older response via the time-travel history — a media response shows a "media not stored this session — re-send to view" placeholder. Re-send to view it again.
  • Very large media (over ~50 MB) isn't buffered into memory; you'll get the type + size card instead of an inline preview.
  • If in-app playback isn't available on your platform, the player falls back to the SAVE TO FILE card so you can still grab the file.

HEADERS tab

Lists every response header as name → value. Shows "NO RESPONSE HEADERS" when empty.

COOKIES tab

Parses the response's Set-Cookie header(s) and lists each cookie with its name, value, and attributes (e.g. Max-Age, Path, Secure, HttpOnly). Shows "NO COOKIES" when none. These cookies are also stored in the Cookies and re-sent automatically on matching requests.

TESTS tab

Shows the results of any Tests and Chaining configured in the RULES tab:

  • A pass/fail summary badge ({passed} / {total} PASSED, green or red).
  • Per-assertion rows: ✓/✗, a label like status = 200, and the actual value found.
  • A CAPTURED section listing extracted variables: {{name}} = value (or {{name}} — not found).
  • If you have no rules: "NO RULES — ADD EXTRACTIONS OR ASSERTIONS IN THE RULES TAB".

Response history (time-travel)

Getman keeps the most recent responses per tab, so you can flip back to an earlier send and compare it — without re-firing the request.

  • Once a tab has two or more recent responses, a HISTORY dropdown appears in the metadata row. Open it to see the recent responses newest-first (each row shows its status, duration, size, and capture time); pick one to view it. The chip reads HISTORY: #2 while you're looking at an older response, and the menu's Latest entry takes you back.
  • Viewing an older response never re-sends and never loses the newest one.
  • Pair it with Compare response to diff "now vs. my last call" — earlier responses show up under PREVIOUS RESPONSES (this tab) in the picker.

How much is kept is up to you (see Settings):

  • Response history (per tab) — how many recent responses to retain (default 5). Set it to 0 to turn the feature off entirely.
  • Save large responses in history — when off, responses over ~512 KB are kept as metadata only (status/time/size, no body) to bound storage. On disk, every history body is still capped at ~1 MB like the current response.

Notes

  • Cancelling a request leaves the previous response untouched (no response is recorded for the cancelled send).
  • Every send is also recorded in History (subject to the history settings).

Clone this wiki locally