GeneratedReportOutput
One occurrence of a report — a single chart or grid message.
A scheduled report appears once per fire; nothing is collapsed. lineage_key
is the originating message (M0) and is what rename, schedule and run-now
address; message_id is this occurrence and is what open and download
address. is_replayable is read from M0, never from the occurrence — fired
rows always carry a NULL replay context.
- attachmentType: string
Id required - createdType: stringFormat: date-time
At requiredthe date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- displayType: TabularDisplayTypeenum
Type requiredHow the client renders the tabular dataset as a whole.
valuesgridbarstacked_barlinemulti_linepiegauge - isType: boolean
Replayable required - isType: boolean
Scheduled read-onlyrequired - lineageType: string
Key required - messageType: string
Id required - nameType: stringrequired
- scheduleType: ScheduleConfignullable
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. - 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
- scheduleType: stringnullable
Id

