ReportRun
A request or response body; the type column links to the schemas it refers to.
ReportRun
| Field | Type | Required | Description |
|---|---|---|---|
| id | string (uuid) | yes | — |
| report_id | string (uuid) | yes | — |
| trigger | string | yes | `scheduled`: claimed by the cron tick. `manual`: a superuser's send-now. one of "scheduled" | "manual" |
| due_at | string (date-time) | yes | The scheduled occurrence the run is for; the request time of a manual run. |
| period_from | string (date) | yes | First day the run's sign-in figures cover, on the deployment's clock. |
| period_to | string (date) | yes | Last day they cover, inclusive. |
| status | string | yes | one of "running" | "completed" | "failed" |
| started_at | string (date-time) | yes | — |
| finished_at | string (date-time) | null | yes | — |
| sent_count | integer | yes | Emails the mail server took. minimum 0 |
| skipped_count | integer | yes | Recipients sent no email: no address on file, or an account since disabled. Those with an address-less but live account still get the in-app notification. minimum 0 |
| failed_count | integer | yes | Recipients whose email the mail server refused or that failed validation. minimum 0 |
| detail | string | null | yes | Why a run failed, or the first refusal of a run that sent with failures. |
| triggered_by | string (uuid) | null | yes | The superuser who sent a manual run; null for a scheduled one. |
{
"id": "1b671a64-40d5-491e-99b0-da01ff1f3341",
"report_id": "1b671a64-40d5-491e-99b0-da01ff1f3341",
"trigger": "scheduled",
"due_at": "2026-01-01T00:00:00.000Z",
"period_from": "2026-10-19",
"period_to": "2026-10-19",
"status": "running",
"started_at": "2026-01-01T00:00:00.000Z",
"finished_at": "2026-01-01T00:00:00.000Z",
"sent_count": 0,
"skipped_count": 0,
"failed_count": 0,
"detail": "string",
"triggered_by": "1b671a64-40d5-491e-99b0-da01ff1f3341"
}