Tunneling
Overview
Managed tunnels (FRP) to expose local or private HTTP services with tokens, frpc.toml download, rotate-token, and usage.
API
{pe} = /projects/{projectId}/environments/{environmentId}.
| Method | Path | Notes |
|---|---|---|
| GET | /tunneling/health | Health |
| POST | /tunneling/frp/plugin/{pluginKey} | FRP plugin; shared-secret plugin key |
| GET/POST | /tunneling{pe}/tunnels | API key or owner JWT |
| GET/PATCH/DELETE | /tunneling{pe}/tunnels/{tunnelId} | API key or owner JWT |
| POST | /tunneling{pe}/tunnels/{tunnelId}/rotate-token | Rotate |
| GET | /tunneling{pe}/tunnels/{tunnelId}/frpc.toml | Client config |
| GET | /tunneling{pe}/usage | Usage |
Clients
| Package | Runtime |
|---|---|
@vijihub/tunneling | server |
Implementation
- Enable Tunneling on the environment.
- Create a tunnel; download
frpc.tomland runfrpcwith the issued token. - Optionally point AI/STT/TTS (or other) provider base URLs at the tunnel’s public URL from Console provider settings.
- Rotate tokens if leaked; update local
frpcconfig.
Constraints
- FRP plugin endpoint uses a separate plugin key — not a project API key.
- Tunnel CRUD requires API key or owner JWT.
- Treat tunnel tokens like secrets; rotate on compromise.
- Usage is metered via
GET …/usage.