Alerts
Route: /alerts
This page is a read-only monitoring view for system alerts.
Data Sources
GET /api/v1/admin/alerts/statsGET /api/v1/admin/alerts?page=1&page_size=100
KPI Cards
- Active Alerts (
active_count) - Total Today (
total_today) - Acknowledged (
acknowledged_count)
Alert List Details
Each alert row shows:
- Title and body
- Source label (device name or user email fallback)
- Relative time label
- Type badge
- Severity badge
- Status badge
Type badge mappings in UI:
sos_alert-> SOSgeofence_alert-> Geofencesafe_search_alert-> Safe Searchlimit_update-> Limit Updatedevice_disconnect_alert-> Disconnect- Unknown types -> Other
Severity mappings:
criticalwarninginfo
Status mappings:
activeacknowledged
Unknown status values are normalized to active in the current UI.
Filter Behavior
- Segmented filter options:
All,Active,Acknowledged - Filter state is synced to query parameter
status- Example:
/alerts?status=active - Example:
/alerts?status=acknowledged
- Example:
- Invalid or missing
statusvalues default toall
Behavior
- Auto-refresh every 30 seconds for both stats and alert list
- Skeleton loading during fetch
- Empty states:
- No alerts
- No active alerts
- No acknowledged alerts
Current Limits (Code-Accurate)
- The page currently loads only the first 100 alerts (
page=1&page_size=100) - Status filtering is client-side over loaded items
- No acknowledge or resolve action is available on this page
Typical Workflow
- Check KPI cards for overall alert volume.
- Use
Activefilter for open incidents. - Prioritize by type and severity badges.
- Jump to device or user investigation pages.
- Review timeline in audit logs when needed.