Key points
schedule_kindiscronoronce, defaulting tocron.cron_expressionis required for cron schedules; the API also acceptscronas an alias.run_atis required for one-time schedules and must be in the future while enabled.timezoneis an IANA name and defaults toUTC.run_team_pathsets the resulting run ownership and notification lineage;globalmeans no concrete team.- Disabled schedules stay visible in the registry rather than disappearing.
Field reference
nameschedulestringRequiredNone
Schedule name, unique within its team path.
name: nightly-reportservices/nopsai/config_repository_resource_export.go
descriptionschedulestringOptionalNone
Human-readable purpose shown in the schedule registry.
description: Nightly compliance report for the payments team.pipelineschedulestringRequiredNone
Stored pipeline identifier the schedule runs.
pipeline: platform/compliance-reportservices/nopsai/config_repository_resource_export.go
schedule_kindschedulestringOptionalcron
Whether the schedule repeats on a cron expression or fires once.
schedule_kind: oncecron, once
services/nopsai/config_repository_resource_export.go
cron_expressionschedulestringConditionalNone
Cron expression for repeating schedules. The API also accepts cron as an alias.
cron_expression: "0 2 * * *"- Required when
schedule_kind: cron.
run_atscheduletimestampConditionalNone
Single execution timestamp for one-time schedules.
run_at: "2026-09-01T02:00:00Z"- Required when
schedule_kind: once. - An enabled one-time schedule must be in the future.
timezoneschedulestringOptionalUTC
IANA timezone used to interpret the cron expression or timestamp.
timezone: Europe/Amsterdamservices/nopsai/config_repository_resource_export.go
enabledschedulebooleanRequiredNone
Whether the schedule is active. Disabled schedules stay visible in the registry.
enabled: truescopeschedulestringOptionalDefault runtime scope
Runtime scope used to resolve variables and secrets for scheduled runs.
scope: platform/productionrun_team_pathschedulestringOptionalglobal
Team path applied to the resulting Pipeline Run for ownership and notification lineage. global means no concrete team assignment.
run_team_path: platform/payments- The Schedules UI groups the registry by this value, falling back to the schedule path for older rows.
services/nopsai/config_repository_resource_export.go
variablesschedulemap<string,string>OptionalNone
Run variable overrides supplied by the schedule.
variables:
REPORT_WINDOW: 24hExamples
name: nightly-compliance-report
pipeline: platform/compliance-report
schedule_kind: cron
cron_expression: "0 2 * * *"
timezone: Europe/Amsterdam
enabled: true
scope: platform/production
run_team_path: platform/payments
variables:
REPORT_WINDOW: 24hHow it works
The Schedules workspace groups by run_team_path when present, falling back to the schedule path for older rows. The registry table stays focused on name, pipeline, cadence, next run, and latest status, with the status linking straight to the run detail when a run exists.
Selecting a schedule navigates to /schedules/<resource path/name>. The detail panel owns mutations, ownership, GitOps source, runtime scope, run team, and variables.
A schedule can be run immediately outside its cadence with POST /v1/schedules/{scheduleID}/run, which is useful for verifying a new cron rule.
Implementation evidence
services/nopsai/config_repository_resource_export.goSchedule GitOps document schema.

