Temporal Schedule

Temporal Schedule

Certified

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.

yaml
type: io.kestra.plugin.temporal.workflow.Schedule

Schedule a report workflow to run daily at 9 AM UTC.

yaml
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.

yaml
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

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.

Schedule ID

Unique identifier for the schedule within the namespace.

Task queue name

The worker polling this queue will execute the scheduled workflow.

Workflow type name

Registered workflow type to execute on each schedule tick.

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.

SubTypestring

Workflow input arguments

List of JSON-encoded argument strings passed to each workflow execution.

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.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset 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.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150

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.

PEM-encoded client certificate

Used in mTLS mode. Must be provided together with clientKey.

PEM-encoded client private key

Used in mTLS mode. Must be provided together with clientCert.

Cron expression

Standard 5-field cron, e.g. 0 9 * * *. Mutually exclusive with intervalSeconds.

Fixed interval in seconds

Run the workflow every N seconds. Mutually exclusive with cron.

Temporal namespace

Defaults to default. For Temporal Cloud, typically <namespace>.<accountId>.

Defaultfalse

Overwrite existing schedule

When true, updates the schedule if it already exists. Defaults to false.

Schedule ID

The ID of the created or updated schedule.