ExtendedBaseModel
- channelsType: array of string 1…required
- idType: stringmin length:1required
scheduler ID
- messageType: string
Id required - nameType: stringrequired
- scheduleType: ScheduleConfig
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. - createdType: stringFormat: date-timenullable
At Created at date
- lastType: stringFormat: date-timenullable
Modified At the date-time notation as defined by RFC 3339, section 5.6, for example, 2017-07-21T17:32:28Z
- lastType: stringnullable
Modified By - 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
- userType: stringnullable
Id - propertyadditionalPropertyType: anything
Name

