API Reference (OpenAPI / Swagger)
OmniWeb's controller (central backend) exposes a single REST API behind the same JWT login that governs the rest of the portal. That API is self-documenting:
- Swagger UI:
/api/docs— browse every endpoint, expand a route to see its method, path/query parameters, whether it needs a token, and its summary. Click Authorize, paste a bearer JWT, and you can try calls live against the running instance. - OpenAPI 3 spec:
/api/openapi.json— the machine readable document, for importing into Postman/Insomnia or generating clients.

What's documented
The spec is generated at runtime by introspecting the live route map, so it always matches the endpoints the running instance actually serves — there is no hand-maintained file to drift. For every route it captures:
- the HTTP method and path (with path/query parameters),
- a summary and description taken from the code,
- whether a bearer JWT is required, and
- where applicable, the per-element view/control permission the route enforces.
Endpoints are grouped by area (Auth, Admin, SIM Bank, Remote SIM, APDU, Test Devices, IR.38, RAEX, TAP, and so on) so you can find a feature's routes quickly.
Getting a token
Most endpoints require a bearer token. Obtain one with POST /api/auth/login
(the same credentials you use for the portal), then send it as
Authorization: Bearer <token>. In Swagger UI, use the Authorize button so
every "Try it out" call carries the token automatically.
Scope
This documents the controller API only. The device-agent that runs at remote sites is not part of this API: it dials out to the controller over a WebSocket and exposes no inbound REST endpoints, so there is nothing to call on it directly.