Skip to content

Introduction to Rext HTTP

Rext HTTP is a smart HTTP client built as a VS Code extension. It introduces the .rext file format — an evolution of the traditional .http format — designed for dynamic, automated API workflows.

Traditional API tools come with significant drawbacks:

  • 500MB+ desktop apps eating your RAM
  • Collections locked to proprietary formats
  • Credentials synced to third-party clouds
  • No version control, no Git history
  • Context switching between editor and tools

Rext solves all of these by keeping everything in plain text, inside your editor.

Unlike traditional .http files, Rext introduces smart directives to handle the complete lifecycle of an HTTP request:

FeatureDescription
Variable CaptureExtract values from responses and reuse them
AssertionsValidate status codes, bodies, headers, duration
Pre-Request ChainsAutomatically execute dependencies before a request
Shared ConfigurationDefine base URLs, headers, timeouts once
Environment FilesSwitch between Dev, Staging, Production with one click
Git-FriendlyPlain text .rext files, fully diff-friendly

Here’s a complete example of what a .rext file looks like:

@config
baseUrl: https://api.example.com
headers:
Content-Type: application/json
###
@id a1b2c3
@name Login
POST /auth/login
{
"email": "{{email}}",
"password": "{{password}}"
}
@capture env.token = body.access_token
@assert status == 200
###
@name Get Profile
@pre a1b2c3
GET /profile
Authorization: Bearer {{token}}
@assert status == 200
@assert body.email exists