RequestLab
Full HTTP client, right in your editor. Send requests, inspect responses and test your APIs without leaving VS Code — no external apps, no context switching.
English
Native alternative to Postman or Thunder Client, built for backend developers, API testers and anyone who works with HTTP services every day.
What it solves
Jumping out of your editor into an external app to test an API breaks your flow: you switch context, wait for it to load and shuffle configuration back and forth. RequestLab brings all of that inside VS Code, in a lightweight sidebar that lives next to your code.
It's designed for backend developers, frontend developers and API testers who want to iterate fast: write an endpoint, test it and see the result without leaving the keyboard.
Why not just Postman or Thunder Client?
- Native integration: runs in the VS Code Activity Bar, with Monaco editors (the same editing engine as VS Code).
- Lightweight, no accounts: collections live in local JSON files you control — versionable, shareable, scriptable. Your data never leaves your machine.
- One place for everything: HTTP, GraphQL, WebSocket and gRPC in a single panel.
- Reusable responses: generate typed models in seven languages with one click (TypeScript, C#, Dart, Go, Java, Kotlin, Python).
Features
HTTP client
- All methods: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS.
- Body modes: JSON, Form, Text, XML, GraphQL and Raw.
- Form with automatic
application/x-www-form-urlencoded / multipart/form-data detection (upload files by adding a file field).
- GraphQL with separate Query and Variables editors (auto-sets
POST).
- Params in sync with the URL bar — edit either one and the other follows.
- Headers, query params and path variables with enable/disable toggles.
Response panel
Six tabs to inspect every detail of the response:
- Response — pretty-printed body (JSON / XML / HTML / text) with test results.
- Headers — full response header list.
- Cookies — parsed
Set-Cookie attributes (domain, path, expires, httpOnly, secure, sameSite).
- Timeline — phase-by-phase timing breakdown (DNS, TCP, TLS, sending, waiting/TTFB, downloading).
- Raw — the exact HTTP message as received on the wire.
- Snippet — generate typed models from the JSON response in TS, C#, Dart, Go, Java, Kotlin or Python (one click, copy it).
Authentication
Built-in helpers: API Key, Bearer, Basic, Digest, OAuth 1.0, OAuth 2.0 and AWS Signature v4.
Environments & variables
- Per-collection environments with key/value variables.
- Use
{{variable}} anywhere: URL, headers, params, body, auth.
- Switch the active environment from the toolbar; values are injected at send time.
- Dozens of mock helpers like
{{$randomInt}}, {{$randomUUID}}, {{$timestamp}}, {{$randomFirstName}}, etc.
Scripting & tests
- Post-response tests in a safe sandbox (
test(name, fn) and expect(...)-style matchers).
- Results are shown in the response panel.
WebSocket & gRPC
- WebSocket: connect, send text/binary messages and watch the live message log.
- gRPC: invoke unary methods from a
.proto definition.
Collections & storage
- Organize requests into folders and collections.
- Collections persist as portable
.requestlab.json files.
- Pick a custom storage location per collection, or use the default (
.requestlab/ in your workspace).
Import & export
- Import from Postman v2.1, OpenAPI 3 / Swagger 2 and Insomnia v4/v5.
- Export to Postman v2.1.
Networking
- Cookie jar, configurable proxy and client certificate support.
- Configurable follow-redirect and request timeout.
Screenshots

Getting started
- Install RequestLab from the Visual Studio Code Marketplace.
- Click the RequestLab icon in the Activity Bar (left sidebar).
- Create your first collection: + Collection button → pick a name (and, optionally, a folder).
- Add a request: choose the method, type the URL and hit Send.
That's it — the response appears instantly in the panel on the right.
Requirements
Extension Settings
| Setting |
Type |
Default |
Description |
requestlab.storagePath |
string |
"" |
Folder where RequestLab stores collections. Empty = .requestlab folder in your workspace. |
requestlab.followRedirects |
boolean |
true |
Automatically follow HTTP redirects. |
requestlab.requestTimeout |
number |
0 |
Request timeout in ms. 0 means no timeout. |
requestlab.proxy |
object |
{} |
Proxy configuration (enabled, mode: off/on/system). |
Contributing
Found a bug or want to suggest an improvement? Open an issue or a pull request in the official repository: github.com/tucno21/requestlab.
License
MIT
Español
Alternativa nativa a Postman o Thunder Client, pensada para desarrolladores backend, testers de APIs y cualquiera que trabaje con servicios HTTP todos los días.
¿Qué resuelve?
Saltar de tu editor a una app externa para probar una API rompe el flujo de trabajo: cambias de contexto, esperas que cargue y arrastras configuraciones de un lado a otro. RequestLab trae todo eso dentro de VS Code, en una barra lateral ligera que vive junto a tu código.
Está diseñada para desarrolladores backend, frontend y testers de APIs que quieren iterar rápido: escribir un endpoint, probarlo y ver el resultado sin soltar el teclado.
¿Por qué no simplemente Postman o Thunder Client?
- Integración nativa: corre en la Activity Bar de VS Code, con editores Monaco (el mismo motor de edición de VS Code).
- Ligera y sin cuentas: colecciones en archivos JSON locales que tú controlas — versionables, compartibles, scripteables. Tus datos no se suben a ningún lado.
- Un solo lugar: HTTP, GraphQL, WebSocket y gRPC en el mismo panel.
- Respuesta aprovechable: tipa modelos en siete lenguajes con un clic (TypeScript, C#, Dart, Go, Java, Kotlin, Python).
Características principales
Cliente HTTP
- Todos los métodos: GET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS.
- Modos de body: JSON, Form, Text, XML, GraphQL y Raw.
- Form con detección automática de
application/x-www-form-urlencoded / multipart/form-data (sube archivos al añadir un campo file).
- GraphQL con editores separados para Query y Variables (ajusta
POST automáticamente).
- Params sincronizados con la barra de URL — editas cualquiera de los dos y el otro sigue.
- Headers, query params y variables de ruta con toggles de activar/desactivar.
Panel de respuesta
Seis pestañas para inspeccionar cada detalle de la respuesta:
- Response — body formateado (JSON / XML / HTML / texto) con resultados de tests.
- Headers — lista completa de headers de la respuesta.
- Cookies — atributos de
Set-Cookie parseados (domain, path, expires, httpOnly, secure, sameSite).
- Timeline — desglose de tiempos por fase (DNS, TCP, TLS, envío, espera/TTFB, descarga).
- Raw — el mensaje HTTP exacto tal como llegó por la red.
- Snippet — genera modelos tipados desde el JSON de la respuesta en TS, C#, Dart, Go, Java, Kotlin o Python (un clic, cópialo).
Autenticación
Ayudantes integrados: API Key, Bearer, Basic, Digest, OAuth 1.0, OAuth 2.0 y AWS Signature v4.
Entornos y variables
- Entornos por colección con variables clave/valor.
- Usa
{{variable}} en cualquier lugar: URL, headers, params, body, auth.
- Cambia el entorno activo desde la barra de herramientas; los valores se inyectan al enviar.
- Decenas de helpers mock como
{{$randomInt}}, {{$randomUUID}}, {{$timestamp}}, {{$randomFirstName}}, etc.
Scripting y tests
- Tests post-respuesta en un sandbox seguro (
test(name, fn) y matchers tipo expect(...)).
- Los resultados se muestran en el panel de respuesta.
WebSocket y gRPC
- WebSocket: conéctate, envía mensajes de texto/binario y sigue el log en vivo.
- gRPC: invoca métodos unary a partir de un
.proto.
Colecciones y almacenamiento
- Organiza requests en carpetas y colecciones.
- Las colecciones persisten como archivos
.requestlab.json portátiles.
- Elige una ubicación personalizada por colección o usa la predeterminada (
.requestlab/ del workspace).
Importación y exportación
- Importa desde Postman v2.1, OpenAPI 3 / Swagger 2 e Insomnia v4/v5.
- Exporta a Postman v2.1.
Networking
- Cookie jar, proxy configurable y soporte de certificados de cliente.
- Follow-redirect y timeout de request configurables.
Capturas de pantalla

Cómo empezar
- Instala RequestLab desde el Visual Studio Code Marketplace.
- Haz clic en el ícono RequestLab en la Activity Bar (barra lateral izquierda).
- Crea tu primera colección: botón + Collection → ponle un nombre (y, opcionalmente, una carpeta).
- Añade un request: elige el método, escribe la URL y pulsa Send.
Y ya está: la respuesta aparece al instante en el panel derecho.
Requisitos
- VS Code
1.85.0 o posterior.
Configuración de la extensión
| Configuración |
Tipo |
Default |
Descripción |
requestlab.storagePath |
string |
"" |
Carpeta donde RequestLab guarda las colecciones. Vacío = .requestlab del workspace. |
requestlab.followRedirects |
boolean |
true |
Seguir automáticamente las redirecciones HTTP. |
requestlab.requestTimeout |
number |
0 |
Timeout del request en ms. 0 significa sin timeout. |
requestlab.proxy |
object |
{} |
Configuración de proxy (enabled, mode: off/on/system). |
Contribuciones
¿Encontraste un bug o quieres proponer una mejora? Abre un issue o un pull request en el repositorio oficial: github.com/tucno21/requestlab.
Licencia
MIT
| |