
Temporal Schedule
CertifiedCreate or update a Temporal schedule
Temporal Schedule
Create or update a Temporal schedule
Creates a new Temporal schedule that triggers a workflow on a cron expression or
fixed interval. If the schedule already exists, the task fails unless overwrite
is set to true, in which case the existing schedule is updated to the new spec.
type: io.kestra.plugin.temporal.workflow.ScheduleExamples
Schedule a report workflow to run daily at 9 AM UTC.
id: schedule_daily_report
namespace: company.team
tasks:
- id: schedule
type: io.kestra.plugin.temporal.workflow.Schedule
endpoint: "localhost:7233"
scheduleId: "daily-report"
cron: "0 9 * * *"
workflowType: "ReportWorkflow"
taskQueue: "report-queue"
args:
- '"daily"'
Schedule a workflow on a fixed interval, updating if it already exists.
id: schedule_heartbeat
namespace: company.team
tasks:
- id: schedule
type: io.kestra.plugin.temporal.workflow.Schedule
endpoint: "localhost:7233"
scheduleId: "heartbeat-check"
intervalSeconds: 300
workflowType: "HeartbeatWorkflow"
taskQueue: "health-queue"
overwrite: true
Properties
endpoint *string
Temporal server endpoint
Host and port of the Temporal frontend service in host: port format.
For Temporal Cloud, use the gRPC endpoint for your namespace,
e.g. <namespace>.tmprl.cloud: 7233.
scheduleId *string
Schedule ID
Unique identifier for the schedule within the namespace.
taskQueue *string
Task queue name
The worker polling this queue will execute the scheduled workflow.
workflowType *string
Workflow type name
Registered workflow type to execute on each schedule tick.
apiKey string
API key for Bearer token authentication
Used with Temporal Cloud. Sent as Authorization: Bearer <apiKey> on every
gRPC call; TLS is enabled automatically when this property is set.
Mutually exclusive with mTLS properties.
args array
Workflow input arguments
List of JSON-encoded argument strings passed to each workflow execution.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150caCert string
PEM-encoded CA certificate
Verifies the server certificate. Can be used alone for one-way TLS
with a custom CA, or together with clientCert/clientKey for mTLS.
clientCert string
PEM-encoded client certificate
Used in mTLS mode. Must be provided together with clientKey.
clientKey string
PEM-encoded client private key
Used in mTLS mode. Must be provided together with clientCert.
cron string
Cron expression
Standard 5-field cron, e.g. 0 9 * * *. Mutually exclusive with intervalSeconds.
intervalSeconds integerstring
Fixed interval in seconds
Run the workflow every N seconds. Mutually exclusive with cron.
namespace string
Temporal namespace
Defaults to default. For Temporal Cloud, typically <namespace>.<accountId>.
overwrite booleanstring
falseOverwrite existing schedule
When true, updates the schedule if it already exists. Defaults to false.
Outputs
scheduleId string
Schedule ID
The ID of the created or updated schedule.