Make code as source of truth for your API tests, sync endpoints directly from Next.js, NestJS, and tRPC.
- No need to manually write endpoints or reverse-engineer your APIs
- Reduces API drifts and context switching
- Closes the gap between actual code and tool for testing
- Extracts API schemas as ready to use tests
- Removes the need to write tests manually
- Organizing APIs directly in the code editor
- Next.js (App router), NestJS, tRPC and PayloadCMS - main focus
- Next.js (Pages router) - less accurate
- Install the extension: Marketplace or Open VSX
- Click the 'watch' icon in the activity bar
- Pull from Code: Auto-detect all Next.js/NestJS/tRPC endpoints (recommended)
- Or create manually: Click '+ New Collection' to add endpoints by hand
- Navigate and open requests to execute: 'Send Request'
Works locally by default. Sign in optional (enables team features).
WatchAPI uses .http files compatible with REST Client. Full syntax reference:
GET https://api.example.com/users
Authorization: Bearer {{token}}POST https://api.example.com/users
Content-Type: application/json
{
"name": "John",
"email": "john@example.com"
}Define variables at the top of your .http file:
@baseUrl = https://api.example.com
@token = my-secret-token
GET {{baseUrl}}/users
Authorization: Bearer {{token}}Create rest-client.env.json in your workspace:
{
"local": {
"baseUrl": "http://localhost:3000",
"token": "dev-token"
},
"production": {
"baseUrl": "https://api.example.com",
"token": "prod-token"
}
}Use variables with {{variableName}} syntax.
| Variable | Description | Example |
|---|---|---|
{{$timestamp}} |
Unix timestamp (seconds) | 1737550800 |
{{$guid}} |
Random UUID v4 | f47ac10b-58cc... |
{{$randomInt min max}} |
Random integer | {{$randomInt 1 100}} |
{{$processEnv VAR}} |
Environment variable | {{$processEnv API_KEY}} |
| Feature | WatchAPI | Postman | Thunder Client | REST Client |
|---|---|---|---|---|
| Auto-Import Next.js/NestJS | ✓ | ✗ | ✗ | ✗ |
| Native VS Code Extension | ✓ | ✗ | ✓ | ✓ |
| Team Collaboration | ✓ | ✓ | Paid / Limited | ✗ |
| Production Monitoring | ✓ | ✓ | ✗ | ✗ |
| Free Tier | ✓ | Limited | ✓ | ✓ |
| Works Offline | ✓ | Limited | ✓ | ✓ |
Local-First & Open Source:
- All collections stored on your machine by default
- No telemetry or usage tracking
- Open source under MIT license
- Optional cloud sync (only when signed in)
Privacy Policy: https://watchapi.dev/privacy
Welcome, lets collaborate:
- Read the Contributing Guide to get started
- Report bugs via GitHub Issues
- Request features via GitHub Discussions
- Submit PRs - we review and merge regularly
- Review the Code of Conduct before contributing
See SECURITY.md for reporting security vulnerabilities.
- Report Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: docs.watchapi.dev
- Website: watchapi.dev
This project is under the MIT License.
Let your code define the testing workflow

