REST API
Everything you can do in the app — list projects, manage features, dispatch and watch runs, read results, manage groups, drive generation, and more — is also available over the TestVibe REST API (the /api/v1/ops/* surface). The same API powers the testvibe CLI, the MCP server for AI tools, and the in-app Assistant's own tool calls, so all three stay in sync with what the API can do.
Full endpoint documentation, request/response shapes, and examples.
Create a tvb_… key in Settings → CLI & API keys.
Authentication
Every request carries a bearer key created in Settings → CLI & API keys:
Authorization: Bearer tvb_...
A key is scoped to the account it was created in and inherits that account's project access. Revoke a key from the same panel if a machine is retired or a key may have leaked — see CLI & API keys.
Rate Limits
Requests to the ops API (and therefore the CLI and MCP server, which are HTTP clients of it) are token-bucket limited:
| Bucket | Default limit | Notes |
|---|---|---|
| Per account | 5,000 requests/hour | Keyed on the account, not the individual key — creating more keys doesn't raise the ceiling. |
| Per IP | 10,000 requests/hour | Applied before key validation, so an invalid-key flood can't be used to probe or overload the API. |
Exceeding a limit returns 429 Too Many Requests with a Retry-After header. Self-hosted instances can disable rate limiting entirely via configuration if it isn't needed on a private network.
The testvibe CLI And MCP Server
The testvibe CLI and its MCP stdio server (for Claude Desktop/Code, Codex, and similar AI tools) wrap the same authenticated API — install once, then use the CLI directly or point an AI tool at the MCP server.
Install it from the npm registry:
npm install -g testvibe
No npm? Settings → CLI & API keys also shows npm-free commands that download and set up the CLI directly from your TestVibe server.