LiteClient
LiteClient is a native VS Code extension that brings a powerful REST API client directly into your editor. No more context switching between your IDE and external tools. Make HTTP requests, manage environments, and organize your API collections without leaving VS Code.

Why LiteClient?
Modern API clients have become bloated with cloud accounts, telemetry, and features you never use. LiteClient returns to the fundamentals:
- Zero Startup Time - Opens instantly with your workspace
- Total Privacy - All data stays local. No accounts, no telemetry, no cloud sync
- Native UX - Uses VS Code's native buttons, trees, and themes
- Focused Features - Everything you need, nothing you don't
Features
Collections
Organize your API requests in a hierarchical structure that grows with your project.
- Create unlimited collections to group related APIs
- Nest requests inside folders for logical organization
- Drag-and-drop reordering to keep things organized
- Save requests with full configuration (URL, headers, body, auth)
- Postman Collection v2.1 import for easy migration
- Export collections to share with your team
Environments
Manage different configurations for local, staging, and production environments.
- Create named environments with custom variables
- Global variables available in all environments
- Quick-switch between environments via the sidebar
- Variables work everywhere: URL, headers, body, auth
- Protected storage for sensitive values
HTTP Request Building
Build requests with precision using a familiar interface.
Request Methods
- GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS
URL & Parameters
- Full URL input with variable support
- Query parameters editor with enable/disable toggle
- Variable autocomplete - type
{{ to see available variables
Headers
- Custom headers with key-value pairs
- Enable/disable individual headers
- Variable substitution in both keys and values
Request Body
- No body option for GET/HEAD requests
- Raw body with syntax highlighting (JSON, XML, HTML, JavaScript, text)
- Form-data with file upload support (25MB limit)
- URL-encoded form data
- Variable substitution in all body types
Authentication
Comprehensive authentication support for modern APIs.
API Key
- Custom header or query parameter placement
- Flexible key/value configuration
Bearer Token
- Simple token-based authentication
- Variable support for tokens
Basic Auth
- Username/password credentials
- Automatic Base64 encoding
OAuth 2.0
- Authorization Code - Traditional flow with browser-based authentication
- Authorization Code with PKCE - Enhanced security for public clients
- Client Credentials - Machine-to-machine authentication
- Automatic token caching in secure storage
- Token refresh when tokens expire
- Configurable scopes and audience
Response Analysis
View responses with rich formatting and metadata.
- Syntax-highlighted response body
- Automatic language detection (JSON, XML, HTML, JavaScript)
- Response status codes and status text
- Response headers display
- Response cookies with domain, path, and expiration
- Execution timing in milliseconds
- Request cancel during long-running operations
History Tracking
Never lose track of what you've tried.
- Automatic history recording for every request
- Day-grouped organization (Today, Yesterday, Last Week)
- Request method and URL at a glance
- Execution duration tracking
- Quick replay of historical requests
- Bulk delete by day or individual items
- Clear all history option
Cookie Management
Built-in cookie jar for session management.
- Automatic cookie sending based on domain
- Cookie persistence across VS Code sessions
- Dedicated Cookie Manager panel
- View all cookies grouped by domain
- Delete individual cookies or entire domains
- Clear all cookies option
Storage Scopes
Choose where your data lives — globally or per workspace.
- Global Storage (default) - Collections, environments, and history stored in VS Code's global storage, available across all workspaces
- Workspace Storage - Data stored in a
.liteclient/ folder in your project root, ideal for sharing API collections via version control
- Click the LiteClient: Global/Workspace indicator in the status bar to switch scopes
- Workspace scope requires an open folder
- Each scope maintains independent collections, environments, and history
Multi-Tab Editing
Work on multiple requests simultaneously.
- Multiple request panels open at once
- Unsaved changes indicator
- Drag tabs to reorder
- Custom
.lcreq file type for direct file opening
- Tab icons for easy identification
Variable System
Dynamic variable substitution throughout requests.
{{baseUrl}}/api/users
{{apiKey}}
{{environmentVariable}}
- Available everywhere: URL, headers, body, auth
- Autocomplete dropdown with arrow key navigation
- Global variables always available
- Environment-scoped variables for different configurations
Installation
VS Code Marketplace (Recommended)
- Open VS Code
- Press
Ctrl+Shift+X (Windows/Linux) or Cmd+Shift+X (macOS)
- Search for "LiteClient"
- Click Install
Alternative Installation
Open VSX Registry
From Source
git clone https://github.com/liteclienthq/liteclient.git
cd liteclient
npm install
npm run build
# Install from dist/*.vsix
Quick Start
Your First Request
- Open the LiteClient sidebar from the Activity Bar
- Click New Request (or press
Ctrl+Shift+P → "LiteClient: New Request")
- Enter your URL (e.g.,
https://jsonplaceholder.typicode.com/users)
- Select the HTTP method from the dropdown
- Click Send
- View the response in the panel below
Creating an Environment
- Switch to the Env tab in the sidebar
- Click New Environment
- Enter a name (e.g., "Development")
- Click Add Variable
- Enter variable name and value (e.g.,
baseUrl = http://localhost:3000)
- Select the environment from the dropdown in any request panel
Organizing with Collections
- Switch to the Collections tab in the sidebar
- Click New Collection
- Enter a collection name
- Click Add Request to create your first request
- Use New Folder to organize related requests
- Drag items to reorder or move between collections
Importing from Postman
- In the Collections tab, click Add Collection
- Select Import from Postman
- Choose a Postman Collection v2.1 JSON file
- Requests, folders, and metadata are imported automatically
Authentication Guide
Setting Up API Key Auth
- Open a request panel
- Click the Auth tab
- Select API Key from the dropdown
- Enter the key name and value
- Choose Header or Query for placement
Configuring OAuth 2.0
- Open a request panel
- Click the Auth tab
- Select OAuth 2.0 from the dropdown
- Choose grant type:
- Authorization Code: Requires user login via browser
- Authorization Code (PKCE): Enhanced security, no client secret
- Client Credentials: Direct token exchange
- Configure endpoints (Authorization URL, Token URL)
- Enter Client ID and Secret
- Add scopes if required by your API
- Click Get Access Token
- The token is automatically saved and injected in requests
Keyboard Shortcuts
| Action |
Windows/Linux |
macOS |
| New Request |
Ctrl+Shift+P → "LiteClient: New Request" |
Cmd+Shift+P → "LiteClient: New Request" |
| Send Request |
Ctrl+Enter |
Cmd+Enter |
| Focus URL Bar |
Ctrl+L |
Cmd+L |
Troubleshooting
Variables Not Substituting
If variables appear unchanged in requests:
- Ensure an environment is selected in the sidebar
- Verify the variable exists in the active environment
- Check for typos in the variable name (
{{name}} not {{nam}})
- Global variables are always available regardless of selected environment
Request Fails with "Invalid URL"
- Verify the URL starts with
http:// or https://
- Check for unresolved variables (
{{port}} without defining port)
- Test the URL in a browser to confirm the endpoint exists
Cookies Not Being Sent
- Ensure the Cookie Jar is enabled (default)
- Check that cookies match the request domain
- Verify cookie hasn't expired
- Use Cookie Manager to inspect stored cookies
OAuth Token Expired
- Tokens automatically refresh when possible
- If refresh fails, re-authenticate via the Auth tab
- Check that token URL is correct in OAuth configuration
Response Body Not Formatted
- Response formatting requires proper Content-Type header
- JSON responses are auto-formatted
- Other content types display as plain text
Privacy & Security
LiteClient is designed with privacy as a core principle.
- Local Storage Only - All data stored in VS Code's global storage or optionally in your workspace's
.liteclient/ folder
- No Telemetry - No analytics, tracking, or usage data collection
- No Cloud Sync - Your data never leaves your machine
- Secure Token Storage - OAuth tokens stored in VS Code's SecretStorage
- Open Source - Audit the code yourself on GitHub
Your API keys and credentials are stored locally. Only you can access them.
Support & Feedback
Contributing
Contributions are welcome! Please read our Contributing Guide for details.
License
MIT License - see LICENSE for details.
Built with ❤️ by the LiteClient Team