SavedReportOutput
One saved report.
id is the report, and is what rename, schedule, run and remove address.
originMessageId is the chart the user saved (M0): the run path replays it
and the preview renders its attachment. A client that keys on it instead of
on id will collide the moment two reports are saved from one chart.
The preview fields are null together once M0's attachment is deleted. The
report is still saved, still named and still runnable; there is simply
nothing to show until its next delivery, which lastReportAttachmentId
then carries.
- createdType: stringFormat: date-time
At requiredthe date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- idType: stringrequired
- isType: boolean
Replayable required - isType: boolean
Scheduled read-onlyrequired - nameType: stringrequired
- originType: string
Message Id required - scheduleType: nullable
Config read-onlyrequiredProperties: 5Client-facing structured schedule shape. Shared type for the wire contract — accountsession defines it; the reporting service (or any other consumer producing schedules) translates between this and the flat storage columns (cron-or-token + interval + frequency_unit + timezone).
accountsession does NOT use this directly on the storage Input/Output models — those stay flat to mirror the DB. Consumers build their own request/response Pydantic models using this type.
Field semantics per frequency_unit:
- DAY: day_of_period must be None.
- WEEK: day_of_period must be a non-empty list of full weekday names (monday, tuesday, wednesday, thursday, friday, saturday, sunday). Multi-select.
- MONTH: day_of_period must be a numeric string (e.g. "15"); coerced to int 1..31 by the validator.
- QUARTER: day_of_period must be "first", "last", "fiscal-first", or "fiscal-last". Fiscal anchors are routed to the @fiscal-quarterly token path by the translator.
- YEAR: day_of_period must be "first", "last", "fiscal-first", or "fiscal-last". Fiscal anchors are routed to the @fiscal-yearly token path by the translator.
- FISCAL_QUARTER: day_of_period must be "fiscal-first" or "fiscal-last". Resolved against the account's fiscal_year_start at fire time.
- FISCAL_YEAR: day_of_period must be "fiscal-first" or "fiscal-last".
delivery_time is an ISO datetime string with offset (e.g. "2026-05-19T08:00:00+03:00"). The server extracts time-of-day (in UTC) for the cron, and the IANA
timezonefield carries the user's local tz for round-trip + DST-correct firing. - displayType: enumnullable
Type How the client renders the tabular dataset as a whole.
valuesgridbarstacked_barlinemulti_linepiegauge - lastType: stringnullable
Report Attachment Id - lastType: stringnullable
Report Message Id - nextType: stringFormat: date-timenullable
Run At the date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- originType: stringnullable
Attachment Id

