Rust and GPUI · Apache 2.0

A cross platform API client

Broquest runs on Linux, macOS and Windows. Collections are folders of TOML files, and requests can run JavaScript before they are sent and after the response arrives.

GET {{baseUrl}}/v1/shipments?status=in_transit&destination_country=SE&limit=4 200 OK · 1.1KB

Broquest with a collection open in the sidebar and a GET request with three query parameters, sent in the Local environment, above its JSON response
The query table and the URL stay in sync. {{baseUrl}} comes from the environment selected next to the method.

Request tabs

Each request opens in a tab with its own environment and response.

Scripting

Each request has a pre-request and a post-response script. Before the request is sent, a script can change its URL, headers and body through req. After the response arrives, a script can read its status, headers and body through res.

bro.setEnvVar saves a value, such as a token, to the selected environment. Scripts run in QuickJS with LLRT modules for crypto, Buffer and URL, and scripts written for Bruno's bru API run as well.

The editor checks syntax as you type, completes the API and has recipes for common scripts such as HMAC signatures.

A POST request with a pre-request script that signs the body and a post-response script that saves the token, next to the JSON response

Environments

A collection can have several environments, such as Local, Staging and Production. They are stored in collection.toml.

Reference a variable as {{name}} in the URL, query, path parameters, headers, body and auth. Secret values are masked in the editor and saved to the system keychain.

The Environments tab of a collection with the Staging environment selected, listing five variables and two masked secrets

Response filter

Filter a JSON response with a JSONPath expression in the field under it.

XML responses are formatted, images are shown inline and PDFs open in the system viewer. The Raw tab shows the final URL, the request headers that were sent and the response headers.

A GET request with a path parameter, its JSON response filtered by a JSONPath expression down to two tracking events

Collections

Each request is a TOML file and each group is a folder. A collection can live in the repository of the API it tests, and changes to it show up in diffs and pull requests.

Broquest can also open OpenCollection YAML folders, the format used by Bruno, and save changes back in that format. Support for it is partial.

Auth set on the collection is used by every request that inherits it.

kestrel/
kestrel/
├─ collection.toml
├─ Health check.toml
├─ Auth/
│  └─ Log in.toml
├─ Rates/
│  └─ Quote rates.toml
├─ Shipments/
│  ├─ Cancel shipment.toml
│  ├─ Create shipment.toml
│  ├─ Get shipment.toml
│  └─ List shipments.toml
└─ Webhooks/
   ├─ List webhooks.toml
   └─ Register webhook.toml
Shipments/Get shipment.tomlTOML
[meta]
name = "Get shipment"
type = "http"
seq = "2"

[http]
method = "GET"
url = "{{baseUrl}}/v1/shipments/:id"
auth = "none"

[[headers]]
key = "Authorization"
value = "Bearer {{token}}"
enabled = true

[[headers]]
key = "Kestrel-Version"
value = "{{apiVersion}}"
enabled = true

[params.path]
id = "KS-48213"

Features

Auth
Basic, Digest, API key, JWT and OAuth2 client credentials, set on a request or on the collection.
Body
JSON, XML, HTML, plain text, URL encoded forms and multipart forms with file uploads.
Import
Create a collection from an OpenAPI spec, grouped by tag, or from a WSDL URL. Paste a cURL command into the URL bar to import it, or copy a request as cURL.
History
Every response is listed in the history with its method, URL, status and time.
Palette
Press Ctrl K (⌘ K on macOS) to open a request by name or run a command.
Layout
Show the response under the request or beside it.
Themes
Comes with Catppuccin Latte, Frappé, Macchiato and Mocha. Theme files in the data directory are reloaded when they change.
Updates
Checks GitHub for new releases and updates itself. This can be turned off in the settings.

Download Broquest 0.1.13

Your system

macOS Apple silicon

brew install --cask zanmato/tap/broquest

The app is not notarized. If you download the archive yourself, clear the quarantine flag after unpacking it:

xattr -r -d com.apple.quarantine Broquest.app
Your system

Windows x86_64

A single executable, no installer.

Your system

Linux x86_64

sudo apt install ./broquest_0.1.13_amd64.deb

Runs on Wayland and X11.

What's new in 0.1.13

Released 7 July 2026

Full changelog · All releases

Features
  • Added partial support for the opencollection format
  • Added a history panel
  • Added a command palette
Style
  • Updated app icon