Three modes, one model
- Drag-and-drop visual builder - dimensions, measures and filters (for everyone).
- Google-style search operators - quick typed filters like
status:open amount>100. - Raw SQL - for advanced users, gated by a dedicated permission.
All three parse to one serialisable query model that runs read-only - every identifier is allowlist-checked and every value is bound, never concatenated, with a single-statement sandbox and row/time caps as defense-in-depth.
The headless engine ships in current builds; the visual builder UI is rolling out.