Use this file to discover all available pages before exploring further.
The Reports API provides pre-aggregated analytics data drawn directly from the qr_codes and permissions tables. Both endpoints are available to all authenticated users regardless of role. The dashboard endpoint is designed for real-time widgets (no parameters, always reflects current state), while the summary endpoint supports arbitrary date-range filtering and groups data by operator and hour for deeper analysis.
Returns a live snapshot of the system’s current state: QR code counts by status, permission totals and compliance breakdown, time averages, and the five most recently created permission records. All numeric values are returned as strings (PostgreSQL COUNT and ROUND output).Auth required: BearerQuery parameters: NoneResponse 200
Understanding overdue: A permission is counted as overdue when return_time IS NULL (the bearer has not yet returned) andexit_time + allowed_minutes < NOW() (their deadline has already passed). These records represent active compliance violations that may need operator intervention.
Returns aggregated compliance statistics for a configurable time window. Three result sets are always included: an overall numeric summary, a per-operator breakdown (top 10 by volume), and an hourly distribution of exits across the day. All values are strings from PostgreSQL aggregation functions.Auth required: Bearer
Combine startDate and endDate with your frontend’s date picker to power weekly or monthly compliance reports. The by_admin array returns up to 10 operators sorted by total volume descending — ideal for a leaderboard widget.
Active permissions (those with no return_time) are included in total counts but contribute null to time and delay averages, since AVG in PostgreSQL ignores NULL values. The compliant and non_compliant counts only reflect closed permissions where is_compliant has been computed.