A browser API client with environments, history and saved requests
Most API debugging is repetition: the same endpoint against staging, then production, then staging again with one header changed.
A form that forgets everything between requests turns that into copy-paste work.
Environment variables
Write {{baseUrl}}/users/{{userId}} once and switch environments by editing two values instead of rewriting every URL. Variables
resolve in the URL, in header names and values, and in the body, and the resolved URL is shown before you send so there are no
surprises. They are stored in your browser only — nothing is synced anywhere.
History
Every sent request is recorded with its method, resolved URL, status code and time. Clicking an entry restores the whole request, so
"it worked twenty minutes ago" becomes something you can verify instead of remember.
Collections
Name a request and it stays in a list you can restore from later: the health check, the login call, the webhook replay. It is the
80% of a desktop API client that people actually use.
Code export is the handoff
curl for the terminal and CI, fetch for the browser, axios for a Node service, Python requests for a script, HTTPie for a readable
one-liner. Each is generated from the resolved request, so what you copy is what you just sent — variables already substituted.
About CORS
Requests go directly from your tab first. When the target API does not send permissive CORS headers, the request is retried through
a lightweight relay so you still get a response. Keep production credentials out of requests that need the relay — copy the curl
snippet and run it locally instead.