{"urls":[{"path":"/","method":"GET","description":"Display fast-onset events in a compact ribbon visualization for device 1 (home page)."},{"path":"/24h","method":"GET","description":"Generate a dotplot visualization for device data."},{"path":"/admin/api/devices","method":"GET","description":"Get all device configurations."},{"path":"/admin/api/devices","method":"POST","description":"Save device configurations."},{"path":"/admin/check-inactive-devices","method":"GET","description":"Check for devices that haven't updated in over 1 hour and report to Discord."},{"path":"/admin/device-status","method":"GET","description":"Serve the device status monitor page."},{"path":"/admin/devices","method":"GET","description":"Serve the admin page for device configuration management."},{"path":"/analytics/{device_id}/event-ribbons","method":"GET","description":"Display event ribbons (tick strips) visualization for a specific device."},{"path":"/analytics/{device_id}/event-ribbons/compact","method":"GET","description":"Display event ribbons in a compact single-bar view for 24 hours."},{"path":"/analytics/{device_id}/fast-onsets/ribbon","method":"GET","description":"Display fast-onset events in a compact ribbon visualization."},{"path":"/analytics/{device_id}/fast-onsets/ribbons","method":"GET","description":"Display fast-onset events for the last 7 days in a ribbon visualization (v2 - Working)."},{"path":"/api/device-status-monitor","method":"GET","description":"Get device status monitoring data from Tinybird."},{"path":"/api/device/{device_id}/decibel-range-details","method":"GET","description":"API endpoint to get detailed decibel readings for a specific range."},{"path":"/d/{device_id}","method":"GET","description":"Shortened URL for device analytics - serves fast-onsets ribbon view directly."},{"path":"/d/{device_id}/heatmaps","method":"GET","description":"Fifteen-day heatmaps: 5-minute median, 5-minute max, and 1-minute max."},{"path":"/d/{device_id}/heatmaps.png","method":"GET","description":"PNG for the fifteen-day median/max heatmaps. Cached in GCS once per local calendar day."},{"path":"/d/{device_id}/overview","method":"GET","description":"Fifteen-day noise overview: 5-minute median heatmap, daily medians, and hourly profiles."},{"path":"/d/{device_id}/overview.png","method":"GET","description":"PNG for the fifteen-day noise overview. Cached in GCS once per local calendar day."},{"path":"/d/{device_id}/trends","method":"GET","description":"Display trends comparison showing last 7 days vs previous 7 days of decibel readings."},{"path":"/device/data","method":"GET","description":"Get decibel readings from Tinybird with optional filters."},{"path":"/device/data/new","method":"POST","description":"This endpoint writes the data directly to TinyBird without buffering."},{"path":"/device/firmware/check","method":"POST","description":"Check if a firmware update is available for the device."},{"path":"/device/firmware/download/{version}","method":"GET","description":"Download a specific firmware version binary file."},{"path":"/device/firmware/status","method":"POST","description":"Receive OTA update status reports from devices."},{"path":"/device/map","method":"GET","description":"Show device map with latest decibel readings from Tinybird."},{"path":"/device/token","method":"POST","description":"Generate a new device token with auto-incremented device ID."},{"path":"/device/{device_id}/fast-onsets","method":"GET","description":"Detect fast onset events for a specific device using rolling window analysis."},{"path":"/device/{device_id}/fast-onsets/plot","method":"GET","description":"Visualize fast onset events for a specific device with interactive plot."},{"path":"/device/{device_id}/widget","method":"GET","description":"Display a sound level widget for a specific device."},{"path":"/heatmap","method":"GET","description":"Fifteen-day heatmaps for the home device (device 1)."},{"path":"/map","method":"GET","description":"Show device map with latest decibel readings from Tinybird."},{"path":"/newmain","method":"GET","description":"New main page with Daily Noise Dose widget and Time Domain Visualization."},{"path":"/urls","method":"GET","description":"Get all accessible URLs/endpoints in the application."},{"path":"/v2/analytics/{device_id}/fast-onsets/ribbons/","method":"GET","description":"Display fast-onset events for the last 7 days in a ribbon visualization (v2 - Working)."},{"path":"/v2/dotplot/","method":"GET","description":"Generate a dotplot visualization for device data."},{"path":"/v2/dotplot/{target_date}","method":"GET","description":"Generate a dotplot visualization for device data."}],"total_count":36}