Pay Reports
API endpoints for pay reports
The pay report object
A pay report values the time a set of users spent on-call over a date window, using the rates from a pay config.
Reports are immutable snapshots: once generated, changing the pay config or the schedules behind it will not change the report. Generate a new one instead.
A report starts as a draft and becomes visible to everyone in your organisation when you publish it.
Reports are generated in the background, so a report you have just asked for has no totals yet. Its status says whether they are still coming, and a report that failed carries the reason it will never have them.
When this report was created
"2026-04-01T09:00:00Z"
Last date (YYYY-MM-DD) this report includes shifts from, inclusive
"2026-03-31"
Unique identifier for this pay report
"01G0J1EXE7AXZ2C93K61WBPYEH"
Human readable name for this report
"March 2026"
How time spent on more than one schedule at once was paid
paid_once, paid_per_schedule "paid_per_schedule"
The schedules this report covers
First date (YYYY-MM-DD) this report includes shifts from, inclusive
"2026-03-01"
How far a report has got through being generated
pending, generating, complete, failed "generating"
Whether shifts that priced to zero are part of the report
included, excluded "excluded"
When this report was last updated
"2026-04-01T09:00:00Z"
Why a report could not be generated
invalid_request, timed_out "timed_out"
What went wrong, written for whoever asked for the report. Only set on a failed report.
"Schedule 'Primary Support' has no pay config to price its shifts with"
When this report was published. Unset while the report is still a draft.
"2026-04-01T09:00:00Z"
Total time spent on-call across every shift in this report, in seconds. Unset until the report is complete, and for a legacy report, which we do not summarise.
3600
Total owed for this report, keyed by ISO 4217 currency code, in the lowest denomination of that currency. Reports spanning pay configs with different currencies have an entry per currency, and those totals must not be summed. Unset until the report is complete, and for a legacy report, which we do not summarise.