Send your first request
Send it
Section titled “Send it”Open an endpoint from the navigator and press ⌘↵.
The request goes out from the Rust engine inside the app, so localhost targets, self-signed
development certificates, and CORS-restricted APIs all behave normally.
The response dock fills in: status, duration, size, headers, and the body. JSON bodies are
folded and syntax-highlighted — every { and [ has a fold caret with a … n items summary,
and you can collapse or expand the whole tree. Click any value to copy it.
Read the response
Section titled “Read the response”Four things beyond the body, each on its own tab and each shown only when it applies:
- Timeline breaks a buffered HTTP response into DNS, connect, time-to-first-byte and
transfer. The connect phase is labelled TCP + TLS together, because the HTTP client
underneath does not report them separately, and a phase with no time is labelled reused
connection rather than
0 ms. Streaming responses and gRPC carry no timings at all, and the tab says so instead of inventing them. - Trailers on a gRPC call, kept separate from Headers because they arrive after the body.
- Diff compares this run against the previous one, or against the endpoint’s own documented example.
- Preview renders what can be rendered. HTML previews load in a fully sandboxed frame with nothing granted, and there is an option to block external resources on top of that.
Two things for finding a value in a large body:
⌘Fopens a find bar over the body, raw text, or headers. It searches the document, not the visible DOM, so a match inside a collapsed JSON node is still found and the node is opened to show it.- The filter bar narrows a JSON body with the same path-and-comparison language chains use for extractions and tests, so what you learn here you reuse there.
Save as example stores the response under the endpoint, in the same committable overlay file as your other edits to it — which is what the Diff tab later compares against.
Read a response covers all of this properly, including the size limits at which a body stops being rendered automatically.
Add an environment
Section titled “Add an environment”Hardcoding http://localhost:8080 into every request is how collections rot. An
environment is a named set of variables that requests reference with {{name}}:
environments: - name: local variables: baseUrl: http://localhost:8080 id: "1" - name: staging variables: baseUrl: https://api.staging.example.com id: "42"Write {{baseUrl}}/users/{{id}} in a URL and it resolves against whichever environment is
active. Switch environments from the picker in the header or through the command palette; the
same request now hits a different deployment.
Environment variables are for configuration, not credentials. Secrets belong in the keychain — see Auth provider.
Save it
Section titled “Save it”A spec-derived endpoint is generated from the document and does not need saving. When you want a request of your own — a specific reproduction case, an edge case worth keeping — save it into a collection, a YAML file at the root of your project folder.
Saved YAML is written back minimally: only the fields you actually set, in a stable order, so that a one-header change is a one-line diff. The format is documented in Collection file format.
Check the response automatically
Section titled “Check the response automatically”The Form view’s Tests tab turns “I looked at it and it seemed fine” into an assertion that runs on every send:
tests: - source: status op: eq expected: "201" - source: body path: id op: exists - source: header path: content-type op: contains expected: application/json - source: duration op: lt expected: "500"A response can also be checked against the endpoint’s own declared shape with op: schema —
no expected value to paste, and it follows the description as it moves. That operator is offered
only where there is an endpoint binding to check against, which is why you will see it here and
not on a chain’s assert node.
Results appear as a pass/fail strip above the response and are stored in run history. See Test a response for the full vocabulary.
Where to go next
Section titled “Where to go next”- Automate auth — stop pasting tokens.
- Build a chain — log in, extract the id, call the real endpoint.
- Concepts — the vocabulary the rest of the docs use, including the per-request send settings and the pre/post script hooks this page skipped.