Postmate Client — Privacy-First Postman Alternative for VS Code
Test REST, GraphQL, and WebSocket APIs directly inside VS Code. No cloud sync, no login, no telemetry — free forever.
Postmate Client is a local-first API client built natively into VS Code. Send REST and GraphQL calls, test WebSocket and WSS connections in real time, compare responses side-by-side, run data-driven CSV tests, and automate everything in CI/CD — without ever leaving your editor or sending your requests to someone else's servers.
If you've been paying for Postman or Thunder Client just for features they put behind a paywall — WebSocket testing, the CLI runner, data-driven testing — Postmate Client gives you all of it free.

Why developers choose Postmate Client
- 🔒 Privacy-first by design. No cloud sync, no login, no telemetry. Your requests, tokens, and payloads never leave your machine.
- ⚡ Native to VS Code. Not an Electron wrapper. Instant startup, zero external runtime, lives in the same editor you write code in.
- 💸 Free forever. Every feature is free — WebSocket, CLI, data tables, response compare, GraphQL. No paid tiers, no team seats, no upsells.
What's new — WebSocket support
Postmate Client now supports WebSocket and WSS testing as a first-class request type:
- Connect to any
ws:// or wss:// endpoint
- Send messages in TEXT, JSON, XML, or HTML mode (with inline syntax validation)
- Stream incoming messages in real time
- Save WebSocket requests to collections alongside REST and GraphQL — identified by a green
ws label
- Free, with no login or paid tier
Full WebSocket guide →
Features
REST, GraphQL, and WebSocket — one editor
A complete visual request builder with tabs for params, headers, body, auth, tests, and pre/post-request scripts. Build REST and GraphQL calls without writing boilerplate. Stream WebSocket connections in the same UI.

Side-by-side response comparison
Fire two requests in parallel against different environments and instantly see every difference highlighted in clean JSONPath notation. Run single comparisons or bulk comparisons across CSV data tables — perfect for staging-vs-prod regression checks.

Single-row compare guide → · Bulk CSV compare guide →
Data tables and per-request tagging
Attach a CSV data table to any environment — automatically active across every request. Tag rows with a _dtag column to filter which rows run per request. Unique to Postmate Client.

Tests, assertions, and pm scripting
Write tests in plain English with the tabular test editor, or use the full pm scripting library for advanced assertions and chained workflows.
pm.test("Status is 200", () => {
pm.expect(RESPONSE.status).to.equal(200);
});
pm.setVariable("token", RESPONSE.body.token);
pm.schemaTest("Validate response schema", userSchema, sampleData);
Available pm methods include pm.assert, pm.expect, pm.test, pm.getRequest, pm.getVariable, pm.setVariable, pm.clearVariable, pm.listVariables, pm.log, pm.schemaTest, and pm.base64Decode.
For data manipulation, the response body is exposed directly:
const resp = RESPONSE.body;
resp.students.forEach(s => console.log(s.name));

Import from anywhere
Bring your existing work in one click:
- Postman v2.1 collections
- OpenAPI 3.0 and Swagger 2.0 specs
- cURL commands — paste any cURL and it parses into a full request (demo video)
Environments, variables, and request chaining
Manage dev, staging, and production with named environments. Reference values anywhere with {{variableName}} syntax. Chain requests visually to pass tokens, IDs, and computed values between calls.
Collection Runner with drag-and-drop sequencing
Run any folder or collection in sequence with a single click. Drag to reorder. Filter rows by tag. WebSocket requests are skipped automatically so they don't block your stateless HTTP run.

CLI for CI/CD
Run collections from the command line. Automate API tests in any pipeline. Generate HTML reports for stakeholders. The CLI is free — no paid tier, no Newman equivalent to license.
CLI reference →
- Log as cURL — log any outgoing request as a cURL command instead of plain text
- Pre-request and post-request scripts — full JS environment per request
- Built-in JSON Schema generator — one click to generate a schema from any response
- JSON path helper — autocomplete JSONPath expressions inside test editors
- Variable autocomplete — every
{{...}} input suggests available variables

Postmate Client vs Postman vs Thunder Client
| Feature |
Postmate Client |
Postman |
Thunder Client |
| Runs inside VS Code |
✅ Native |
❌ Separate desktop app |
✅ Native |
| Works offline |
✅ Always |
⚠️ Limited |
⚠️ Limited |
| Works without login |
✅ Always |
❌ Required to use |
⚠️ For paid features |
| No cloud sync |
✅ Local-only |
❌ Cloud default |
✅ Local |
| No telemetry |
✅ None |
❌ Yes |
❌ Yes |
| REST support |
✅ Full |
✅ Full |
✅ Full |
| GraphQL support |
✅ Built-in |
✅ Yes |
⚠️ Limited |
| WebSocket / WSS support |
✅ Free |
⚠️ Yes (login required) |
💰 Paid tier only |
| Import Postman / OpenAPI / Swagger / cURL |
✅ Built-in |
⚠️ Partial |
⚠️ Partial |
| Pre/post-request scripts |
✅ Built-in |
✅ Yes |
⚠️ Limited |
pm library |
✅ Built-in |
✅ Native |
⚠️ Limited |
| Side-by-side response compare |
✅ Built-in |
❌ Manual |
❌ Not available |
| Bulk response comparison (CSV-driven) |
✅ Built-in |
❌ Scripting required |
❌ Not available |
| Data tables linked to environments |
✅ Built-in |
❌ Not available |
❌ Not available |
| Per-request data tag filtering |
✅ Built-in |
❌ Not available |
❌ Not available |
| CLI for CI/CD |
✅ Free |
💰 Paid (Newman / Enterprise) |
💰 Paid tier |
| Price |
✅ Free forever |
💰 Paid plans |
💰 Free + paid plans |
Quick start
- Install Postmate Client from the VS Code Marketplace.
- Click the Postmate Client icon in the VS Code Activity Bar.
- Click New Request, paste a URL, hit Send — your first API call without leaving the editor.
For WebSocket testing, click the dropdown next to New Request and choose WebSocket. Paste wss://echo.websocket.org, hit Connect, and send a JSON message to see it stream back in real time.
Read the Getting Started guide →
Resources
Feedback
Postmate Client is built by a developer who got tired of sending API tokens to someone else's cloud. If something doesn't work the way you'd expect, or you want a feature, open an issue on GitHub or post in the discussion forum. Every suggestion gets read.
License & dependencies
Copyright © 2026 Shyam Narayan Yadav. All rights reserved.
Postmate Client is licensed under a proprietary license. You are free to use it, but you may not redistribute, modify, or sell it without explicit permission.
Third-party libraries used: chai, mocha, node-fetch, jsonpath-plus, monaco-editor, uuid, esbuild, rimraf, typescript, vscode-test, and @types/* packages — each used under their respective MIT or Apache 2.0 licenses. Refer to each library for full license details.