Skip to content

Reports Module

Tenant-scoped CSV reports. Implementation: backend/src/reports/. Migrations: 0018_report_definitions.sql, 0022_report_email_schedule.sql, 0023_report_type_alarms.sql.

Key APIs

MethodPathSummary
GET/api/reportsList report definitions
POST/api/reportsCreate definition
GET/api/reports/{id}Get one definition
PATCH/api/reports/{id}Update definition
DELETE/api/reports/{id}Delete definition
POST/api/reports/{id}/runGenerate CSV and download
POST/api/reports/{id}/send-nowGenerate CSV and email recipients

All routes require bearer JWT. Mutating routes (create/update/delete/send-now) require a manager role.

Report types

  • telemetry — timeseries CSV (keys required). Optional aggregation: none, avg, min, max, sum.
  • alarm — alarm CSV. alarmSeverities / alarmStatuses empty means all.

Schedule

Fields on the definition: emails[], scheduleEnabled, scheduleFrequency (daily | weekly | monthly), lastSentAt.

Cron: ReportsCronService (REPORTS_CRON, REPORTS_TIMEZONE, REPORTS_CRON_ENABLED). Email uses EmailTemplateKind.REPORT_CSV with a CSV attachment.

Frontend

  • Page: frontend/src/features/reports/ReportsPage.tsx (/reports)
  • API client: frontend/src/api/reports.api.ts

support@autoconnecto.in · founder@autoconnecto.in · +91 92121 00555 · app.autoconnecto.in