Native REST API testing for desktop

Send HTTP requests, organize nested collections, import Postman, Bruno, and OpenAPI specs, run test suites with JSONPath assertions, and inspect responses in a focused native app.

Open source · Native C++20 and wxWidgets UI · Linux · Windows installer · macOS coming soon

Click to zoom the app screenshot.

Designed for everyday API testing

Compose requests, interchange collections, run suites with assertions, and inspect JSONPath results without leaving the desktop app.

Collections & folders

Organize requests in a nested sidebar tree. Create folders, duplicate or delete items, and reload saved method, URL, headers, and body from each collection.

Environments & variables

Set a base URL per environment and share collection {{var}} variables across them. Configuration is stored as JSON with Save all and auto-save on exit.

Import & export

Bring collections in from Postman, Insomnia, Bruno, OpenAPI JSON/YAML, HAR, or a pasted cURL command. Export back out, or copy the current request as cURL.

OpenAPI 3.x

Import from a URL or local JSON/YAML file. Operations land in tag folders; path parameters become variables. Choose to update the current collection or create a new one.

Collection runner

Run named test suites with expected status codes, JSONPath assertions and captures, cancel support, and elapsed timing for each step.

Response inspection

Review status and headers with JSON pretty-print and syntax highlighting. Filter bodies with JSONPath and keep a per-request path history.

HTTP & HTTPS

Send GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, TRACE, CONNECT, and LIST over HTTP or HTTPS. Set a per-request timeout; Send and Cancel run on a worker thread.

Light & dark

System-aware light and dark themes are available, with optional overrides through environment variables or CLI flags.

Linux Windows macOS (not yet available)

Download

Release packages are available for Linux and Windows.

Windows (x64)

Inno Setup installer · v1.0.3

Download installer

macOS

Disk image or app bundle - not available yet.

Build

APIkulture uses CMake, wxWidgets 3.2, and optional OpenSSL for HTTPS. See the repository README for full prerequisites and platform notes.

Quick start
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
./apikulture

On Linux install libwxgtk3.2-dev (Debian/Ubuntu) or wxwidgets-gtk3 (Arch). Details are in the project README.

APIkulture desktop app showing collections, query parameters, assertions, response headers, and a JSONPath-filtered JSON body