RapidHTTP
Lightweight, fast HTTP client for VS Code. Send requests directly from .http files with environment variables, pretty response viewer, and code generation — no Postman needed.
Features
- Send HTTP Requests — Execute GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS, TRACE from
.http files
- Pretty Response Viewer — JSON syntax highlighting, headers table, and timing breakdown in a side panel
- Environment Variables — Use
{{variable}} syntax with .http-env.json for dev/staging/production
- CodeLens — Clickable "Send Request" and "Copy as cURL" links above every request
- Request Explorer — Browse all
.http files and requests in the sidebar tree view
- Code Generation — Copy any request as cURL, fetch, axios, or Python requests
- Request History — Quick access to recent requests and responses
- Syntax Highlighting — Full grammar support for
.http files with methods, headers, variables, and comments
- Keyboard First —
Cmd+Enter / Ctrl+Enter to send, no mouse required
Keyboard Shortcuts
| Shortcut |
Action |
Cmd+Enter (Mac) / Ctrl+Enter (Win/Linux) |
Send request at cursor |
Usage
1. Create a .http file
# @name ListUsers
GET https://api.example.com/users
Authorization: Bearer {{token}}
Accept: application/json
###
# @name CreateUser
POST https://api.example.com/users
Content-Type: application/json
Authorization: Bearer {{token}}
{
"name": "Alice",
"email": "alice@example.com"
}
2. Set up environments (optional)
Create .http-env.json in your workspace root:
{
"development": {
"baseUrl": "http://localhost:3000",
"token": "dev-token-123"
},
"staging": {
"baseUrl": "https://staging.api.example.com",
"token": "staging-token-456"
}
}
3. Send requests
- Click Send Request in the CodeLens above any request
- Press
Cmd+Enter / Ctrl+Enter with cursor inside a request
- Use the play button in the editor title bar
- Separate multiple requests with
### or ---
- Comments: lines starting with
# or //
- Name requests with
# @name MyRequest
- Define file-level variables with
@variable = value
@host = api.example.com
@baseUrl = https://{{host}}/v1
###
# @name GetUsers
GET {{baseUrl}}/users?page=1
###
# @name DeleteUser
DELETE {{baseUrl}}/users/123
Variable Resolution
Variables are resolved in this order:
- File variables —
@variable = value in the .http file
- Environment variables — from
.http-env.json active environment
- System environment —
process.env fallback
Settings
| Setting |
Default |
Description |
rapidHttp.timeout |
30000 |
Request timeout in milliseconds |
rapidHttp.followRedirects |
true |
Follow HTTP redirects automatically |
rapidHttp.validateSSL |
true |
Validate SSL certificates |
rapidHttp.defaultEnvironment |
"" |
Default environment name |
rapidHttp.saveHistory |
true |
Save request history in memory |
rapidHttp.historySize |
50 |
Maximum history entries |
rapidHttp.responseBodyMaxSize |
5242880 |
Max response body size (bytes) |
Commands
| Command |
Description |
RapidHTTP: Send Request |
Send HTTP request at cursor |
RapidHTTP: Send All Requests |
Send all requests in file |
RapidHTTP: Select Environment |
Switch active environment |
RapidHTTP: Copy as cURL |
Copy request as cURL command |
RapidHTTP: Copy as Fetch |
Copy as JavaScript fetch |
RapidHTTP: Copy as Axios |
Copy as JavaScript axios |
RapidHTTP: Show Request History |
Browse request history |
RapidHTTP: New .http File |
Create new .http file from template |
RapidHTTP: Format Request Body |
Pretty-print JSON body |
Requirements
Privacy
RapidHTTP runs entirely locally. No data is collected, no telemetry, no cloud services. Your requests and environments stay on your machine.
License
Copyright (c) 2026 Apaya. All rights reserved.