Reporting Demo
Interactive sandbox simulating the async report generation flow with WebSocket notifications
This interactive demo simulates the full async report generation flow. No real API calls are made — everything is mocked locally in your browser.
Select a report type and format, then click "Generate Report" to see the full lifecycle:
- Submit a report request to the REST API
- Connect to the WebSocket for real-time notifications
- Track progress as the report moves through the queue
- Download the completed report
Ready
Asset: Vehicle 123 | Jan 1-31, 2026
Report Generation Flow
1. Submit Request
2. Connect WebSocket
3. Track Progress
4. Download Report
Event Log
Select options and click "Generate Report" to see the async flow.
What You're Seeing
- Report Generation Flow (left panel) — Each step shows the actual API requests and WebSocket events
- Event Log (right panel) — Raw events as they would arrive, color-coded by type:
- Blue border — WebSocket progress events (
.report.queued,.report.processing) - Green border — Completion event (
.report.completed) - Gray border — REST API requests/responses
- Blue border — WebSocket progress events (
Implementing This in Your App
The demo simulates the async-first architecture used by the Reporting Service. See the Reporting Service guide for full implementation details, including:
- WebSocket connection with Pusher JS
- Polling fallback for environments without WebSocket
- Complete
ReportClientclass example - Error handling and rate limits
Key Differences from Production
| Demo | Production |
|---|---|
| Mocked data, fixed 7-second cycle | Real processing (seconds to minutes) |
| Always succeeds | May fail if no data in range |
| No authentication | OAuth2 Bearer token required |
| Single simulated report | Up to 3 concurrent per user |
| No actual file download | Pre-signed URL to DigitalOcean Spaces |
Was this page helpful?