Edge Configuration
In one sentence
Every environment variable and endpoint of the octet-edge binary, in one place.
Environment variables
The edge is configured entirely through the environment.
| Variable | Required | Default | Purpose |
|---|---|---|---|
PORT | no | 8080 | Port the edge listens on. |
OCTET_URL | yes | — | Octet's API base URL — where the edge forwards the bundle. Octet provides this. |
LICENSE | prod | — | Your license key. Sent to Octet as the x-octet-license header. |
OCTET_CA_FILE | planned | — | Path to Octet's CA certificate. Pins and verifies Octet over HTTPS. For the planned mutual TLS — optional and inert until Octet provisions certs. |
EDGE_CLIENT_CERT_FILE | planned | — | Path to your client certificate for mutual TLS to Octet. Planned hardening — not required yet. |
EDGE_CLIENT_KEY_FILE | planned | — | Path to the matching private key. Planned hardening — not required yet. |
EXIT_IP | no | — | Testing only. Overrides the harvested source IP, for local setups where the browser↔edge connection is loopback. Leave unset in production. |
TLS behavior. The edge reaches Octet at OCTET_URL (use https://). Mutual TLS is planned hardening and not yet in force — the OCTET_CA_FILE / EDGE_CLIENT_CERT_FILE / EDGE_CLIENT_KEY_FILE variables are optional and inert until Octet provisions certificates. When provided, OCTET_CA_FILE pins and verifies Octet over HTTPS, and adding the client certificate + key enables mutual TLS.
Endpoints
| Method | Path | Purpose |
|---|---|---|
GET | /health | Liveness check. Returns { "ok": true, ... }. |
POST | /v1/signals | The collector posts the signal bundle here. The edge forwards it to Octet and returns a coarse result. Requires Content-Type: application/json. |
GET | /v1/ws | WebSocket latency channel the collector measures against. |
Paths are relative to wherever you mount the edge. With the collector's apiUrl: 'https://yourapp.com/octet', route /octet/* to the edge so /octet/v1/signals reaches /v1/signals. See the per-server guides.
Notes
- The edge is Linux-only for the connection-level timing signal — it relies on a capability available only on Linux. A non-Linux build runs for development but omits that signal.
- The edge is logic-free — it harvests connection-level signals and forwards. It holds no rules or thresholds.
Where to go next
- Deploy the Edge. The deployment walkthrough.
- Licensing. Where
LICENSEcomes from.