Table of Contents

Class ChildWorkflowOptions

Namespace
Temporalio.Workflows
Assembly
Temporalio.dll

Options for starting a child workflow.

public class ChildWorkflowOptions : ICloneable
Inheritance
ChildWorkflowOptions
Implements
Inherited Members

Properties

CancellationToken

Gets or sets the cancellation token for this child. If unset, defaults to the workflow cancellation token.

public CancellationToken? CancellationToken { get; set; }

Property Value

CancellationToken?

CancellationType

Gets or sets how the workflow will send/wait for cancellation of the child. Default is WaitCancellationCompleted.

public ChildWorkflowCancellationType CancellationType { get; set; }

Property Value

ChildWorkflowCancellationType

CronSchedule

Gets or sets the cron schedule for the workflow.

public string? CronSchedule { get; set; }

Property Value

string

EventGroups

Gets or sets Event Groups to attach to this command, in addition to those active in the current WithEventGroups(params EventGroup[]) scope. Markers describe the start event in this workflow and do not propagate to the child.

public IReadOnlyCollection<EventGroup>? EventGroups { get; set; }

Property Value

IReadOnlyCollection<EventGroup>

Remarks

WARNING: Event Groups are experimental.

ExecutionTimeout

Gets or sets the total workflow execution timeout including retries and continue as new.

public TimeSpan? ExecutionTimeout { get; set; }

Property Value

TimeSpan?

Id

Gets or sets the workflow ID. If unset, default will be a deterministic-random identifier.

public string? Id { get; set; }

Property Value

string

IdReusePolicy

Gets or sets whether to allow re-using a workflow ID from a previously closed workflow. Default is AllowDuplicate.

public WorkflowIdReusePolicy IdReusePolicy { get; set; }

Property Value

WorkflowIdReusePolicy

Memo

Gets or sets the memo for the workflow. Values for the memo cannot be null.

public IReadOnlyDictionary<string, object>? Memo { get; set; }

Property Value

IReadOnlyDictionary<string, object>

ParentClosePolicy

Gets or sets how the child is treated when the parent is closed. Default is Terminate.

public ParentClosePolicy ParentClosePolicy { get; set; }

Property Value

ParentClosePolicy

Priority

Gets or sets the priority that should be used for this Child Workflow.

public Priority? Priority { get; set; }

Property Value

Priority

RetryPolicy

Gets or sets the retry policy. Default is no retries.

public RetryPolicy? RetryPolicy { get; set; }

Property Value

RetryPolicy

RunTimeout

Gets or sets the timeout of a single workflow run.

public TimeSpan? RunTimeout { get; set; }

Property Value

TimeSpan?

StaticDetails

Gets or sets general fixed details for this workflow execution that may appear in UI/CLI. This can be in Temporal markdown format and can span multiple lines. This is a fixed value on the workflow that cannot be updated. For details that can be updated, use CurrentDetails within the workflow.

public string? StaticDetails { get; set; }

Property Value

string

StaticSummary

Gets or sets a single-line fixed summary for this workflow execution that may appear in UI/CLI. This can be in single-line Temporal markdown format.

public string? StaticSummary { get; set; }

Property Value

string

TaskQueue

Gets or sets the task queue. If unset, default will be the parent workflow task queue.

public string? TaskQueue { get; set; }

Property Value

string

TaskTimeout

Gets or sets the timeout of a single workflow task.

public TimeSpan? TaskTimeout { get; set; }

Property Value

TimeSpan?

TypedSearchAttributes

Gets or sets the search attributes for the workflow.

public SearchAttributeCollection? TypedSearchAttributes { get; set; }

Property Value

SearchAttributeCollection

VersioningIntent

Gets or sets whether this Child Workflow should run on a worker with a compatible Build Id or not when using the Worker Versioning feature.

[Obsolete("Worker Build Id versioning is deprecated in favor of Worker Deployment versioning")]
public VersioningIntent VersioningIntent { get; set; }

Property Value

VersioningIntent

VersioningOverride

Gets or sets an explicit versioning configuration for the child workflow. When set, this takes precedence over versioning inherited from the parent workflow. If unset, no override is applied.

public VersioningOverride? VersioningOverride { get; set; }

Property Value

VersioningOverride

Remarks

WARNING: This is experimental and requires Temporal Server 1.32.0 or later.

Methods

Clone()

Create a shallow copy of these options.

public virtual object Clone()

Returns

object

A shallow copy of these options.