Route Map
The following table lists every route, its access control layout, and its purpose.
| Route | Layout | Description |
|---|---|---|
| /auth | Public | Login (email OTP or Google) |
| /organization | Organization | List organizations; select one to enter the app |
| /physical-spaces | Protected | List physical spaces (requires ?orgId=<id>) |
| /physical-spaces/:id | Protected | Physical space detail — mappings, virtual pod, devices/adapters, webhook logs, attempt history |
| /physical-spaces/webhook-logs/:logId | Protected | Physical-space webhook log detail |
| /physical-spaces/credential-logs/:requestId | Protected | Booking-access credential attempt log detail |
| /meeting-room-displays | Protected | List meeting room displays |
| /meeting-room-displays/:id | Protected | Display detail (config, webhooks, screenshots, etc.) |
| /meeting-room-displays/webhook-logs/:logId | Protected | Display webhook log detail |
| /IoT-Adapters | Protected | List IoT adapters |
| /iot-gateways/:id | Protected | IoT adapter detail |
| /kiosk-tablets | Protected | Kiosk Tablets — map pods to Hexnode tablets, assign / monitor, Kiosk settings |
| /all-devices | Protected (super admin) | All Devices — every Hexnode tablet across every organization (no orgId) |
| /api-keys | Protected | List organization API keys (create / rotate / revoke) |
| /magic/:token | Public (no auth) | Magic Link — guest booking access page |
| * (any other) | — | Redirects to /auth |
Layouts & Guards
PublicRoute (/auth) — if already authenticated, redirects to /organization.
OrganizationProtectedRoute (/organization) — auth required; renders OrganizationLayout.
ProtectedRoute (every protected route) — auth required; renders ProtectedLayout which wraps content in OrganizationProvider and the main AppSidebar.
The /magic/:token route is plain (no guard); the page fetches data directly via joinBackendUrl().
Sidebar Entries (top to bottom)
Physical Spaces — /physical-spaces
IoT Adapters — /IoT-Adapters (also matches /iot-gateways/:id)
Meeting Room Displays — /meeting-room-displays
Kiosk Tablets — /kiosk-tablets (View all Kiosk tablet devices opens /all-devices)
API Keys — /api-keys