schedule field and it fires on that cadence — an additional trigger, so the workflow stays callable from your app too.
Inline schedule
schedule is a structured object (recurring or one-time), not a cron string — see Schedules for every field. Always include an IANA timezone.
Rules
context.userisnullon scheduled fires — don’t depend on a signed-in user. (Alsonullon anonymous request fires, so it’s not a reliable “this is a schedule” signal.)- Never simulate cadence in code. The
schedulefield is the only source of truth — nosetInterval/setTimeoutorif (week % 2)skip-checks; serverless runs don’t keep timers alive.
Let end users set the schedule
For runtime, end-user-driven cadence (a “remind me every…” setting), use theZiteSchedules runtime API from zitejs/schedules inside a workflow:
inputs are validated against the target workflow’s inputSchema at fire time. See Schedules for add / list / update / remove.
Scheduled jobs are part of the Business plan.