Developer Mode (Operations Portal)
Developer Mode is a debugging overlay built into the Quiddly Operations Portal. When you turn it on, every API call the UI makes is captured live and shown with its method, path, status, timing, and the rights it required - with deep links straight into this portal’s API reference. It is the fastest way to see what the API expects while you build an integration.
It reads the same OpenAPI spec this portal publishes, so the required-rights and reference links it shows are always in sync with the documentation here.
Who can use it
Section titled “Who can use it”Developer Mode is gated by the ViewDeveloperTools right. Without it, the
toggle and overlay never appear. Individual panels enforce their own rights on
top (for example clearing cache needs CacheEdit).
Turning it on
Section titled “Turning it on”- Open the user menu (top-right of the Operations Portal).
- Flip the Developer Mode switch.
- A floating
DEV TOOLchip appears at the bottom-left, showing a live count of captured requests. Click it (or reopen the user menu) to open the tools drawer.
The on/off state is remembered in your browser. The drawer can be docked to the right or the bottom, resized, and themed light or dark - all remembered between sessions. It is purely a front-end overlay: turning it on does not change any API behaviour.
What the panels show
Section titled “What the panels show”| Panel | What it does |
|---|---|
| API Logs | Every captured request: method, path, status, duration, request/response headers and bodies, request id, and the required rights for that endpoint. A lock icon flags 401/403 responses; each row links to the matching operation in the reference. |
| Webhook Logs | Recent webhook deliveries, polled from GET /webhook/log (needs ReadWebhookRequestLog). Filter by status and retry a failed delivery (PUT /webhook/log/<id>, needs RetryWebhookEvents). |
| Cache | Lists clearable cache modules (GET /cache/clear), clears one module (POST /cache/clear), or flushes everything (POST /cache/clear/all). Mutating actions need CacheEdit. |
| Access | Your current rights and access context. |
| Environment | The environment / build the UI is pointed at. |
How request capture works
Section titled “How request capture works”Developer Mode hooks the browser’s network layer, so it captures both modern (axios) and legacy (jQuery/Backbone) calls the Operations Portal makes - you do not have to open the browser dev tools. Only same-origin API calls are logged, and only while Developer Mode is on.
Required rights it shows come from this portal
Section titled “Required rights it shows come from this portal”The API Logs panel resolves each endpoint’s required rights and its reference
deep link from this portal. It loads a slim index, /developers/operation-rights.json
(operation -> tag, operationId, and required rights), and falls back to the full
/developers/openapi.json if the index is absent. Both are generated from the
same **Required rights:** annotations you see on each operation in the
reference. The “API Reference” button in the drawer
opens /developers/reference for the current tenant.