Skip to content

Yaak - Desktop API Client Cheatsheet

Yaak - Desktop API Client Cheatsheet

Yaak is a modern, offline-first desktop API client built with Tauri, Rust, and React. It organizes and executes REST, GraphQL, gRPC, WebSocket, and Server-Sent Events (SSE) requests in a fast, lightweight app that is privacy-first: no telemetry, no account required, and no cloud lock-in. Workspaces are stored as plain files, so you can sync them with Git, and it supports environments, variables, and importing from Postman/Insomnia.

Installation

PlatformMethod
macOSDownload the .dmg from yaak.app, or brew install --cask yaak
WindowsDownload the installer from yaak.app
LinuxAppImage / .deb / .rpm from yaak.app
VerifyLaunch the app; check Help → About for version

Request Types

TypeUse
REST / HTTPStandard API requests
GraphQLQueries/mutations with schema introspection
gRPCCall gRPC services (with reflection)
WebSocketBidirectional socket connections
SSEServer-Sent Events streams

Core Concepts

TermMeaning
WorkspaceA project grouping requests/environments
FolderOrganizes requests within a workspace
EnvironmentNamed set of variables (dev/staging/prod)
Variable${[ name ]} template used across requests
Plain-file syncWorkspace data stored as files → Git-friendly

Building Requests

ElementNotes
Method + URLWith variable templating
Query paramsKey/value editor
HeadersKey/value editor
BodyJSON, form, GraphQL, binary, etc.
AuthBearer, Basic, OAuth 2.0, API key

Environments & Variables

FeatureUse
EnvironmentsSwitch base URLs/secrets per stage
VariablesReference with ${[ var ]} in any field
Dynamic valuesGenerated values (timestamps, UUIDs)
SecretsKept out of synced plain files where configured

Productivity Features

FeatureDescription
Response viewerPretty JSON, headers, timing, size
HistoryPrevious responses per request
ImportPostman, Insomnia, cURL, OpenAPI
PluginsExtend via a plugin system
Git syncCommit the workspace files to version control
TemplatingChain requests by referencing prior responses

gRPC & GraphQL Notes

ProtocolCapability
gRPCServer reflection to discover services/methods; streaming
GraphQLSchema introspection, query builder, variables

Common Workflows

# Team workflow with Git-based sync
1. Create a workspace; store it in your repo
2. Define dev/staging/prod environments with variables
3. Build REST/GraphQL/gRPC requests using ${[ base_url ]}
4. Commit the plain files; teammates pull and get the same collection
# Chain requests
- Send a login request, capture the token from the response
- Reference it as a variable in subsequent authorized requests

Yaak vs Other API Clients

AspectYaakPostmanATACBruno
InterfaceDesktop GUIDesktop GUITerminal TUIDesktop GUI
ProtocolsREST/GraphQL/gRPC/WS/SSEBroadRESTREST/GraphQL
TelemetryNoneYesNoneNone
StoragePlain files (Git)Cloud/localFilesFiles (Git)
Best forPrivacy-first GUI, multi-protocolTeams/cloudTerminal-firstGUI + Git

Resources