Skip to main content

Interface: WorkflowStartOptions

Defined in: src/interfaces.ts:1074

Workflow start options — extends Temporal SDK's WorkflowOptions from @temporalio/client with workflowId and taskQueue made optional (the module applies defaults when omitted).

All fields from the SDK's WorkflowOptions are available directly (e.g. retry, typedSearchAttributes, followRuns, startDelay, etc.). The two legacy shims below are kept for backward compatibility.

Extends​

  • Omit<Partial<SdkWorkflowOptions>, "searchAttributes">

Properties​

cronSchedule?​

optional cronSchedule?: string

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:116

Optional cron schedule for Workflow. If a cron schedule is specified, the Workflow will run as a cron based on the schedule. The scheduling will be based on UTC time. The schedule for the next run only happens after the current run is completed/failed/timeout. If a RetryPolicy is also supplied, and the Workflow failed or timed out, the Workflow will be retried based on the retry policy. While the Workflow is retrying, it won't schedule its next run. If the next schedule is due while the Workflow is running (or retrying), then it will skip that schedule. Cron Workflow will not stop until it is terminated or cancelled (by returning temporal.CanceledError). https://crontab.guru/ is useful for testing your cron expressions.

Inherited from​

Omit.cronSchedule


followRuns?​

optional followRuns?: boolean

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:33

If set to true, instructs the client to follow the chain of execution before returning a Workflow's result.

Workflow execution is chained if the Workflow has a cron schedule or continues-as-new or configured to retry after failure or timeout.

Default​

true

Inherited from​

Omit.followRuns


memo?​

optional memo?: Record<string, unknown>

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:121

Specifies additional non-indexed information to attach to the Workflow Execution. The values can be anything that is serializable by DataConverter.

Inherited from​

Omit.memo


priority?​

optional priority?: Priority

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:155

Priority of a workflow

Inherited from​

Omit.priority


requestEagerStart?​

optional requestEagerStart?: boolean

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:46

Potentially reduce the latency to start this workflow by requesting that the server start it on a local worker running with this same client.

Inherited from​

Omit.requestEagerStart


retry?​

optional retry?: RetryPolicy

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:106

Controls how a Workflow Execution is retried.

By default, Workflow Executions are not retried. Do not override this behavior unless you know what you're doing. More information.

Inherited from​

Omit.retry


retryPolicy?​

optional retryPolicy?: RetryPolicy

Defined in: src/interfaces.ts:1087

Deprecated​

Use retry (Temporal SDK field name). Forwarded to retry at runtime.


searchAttributes?​

optional searchAttributes?: TypedSearchAttributes

Defined in: src/interfaces.ts:1082

Deprecated​

Use typedSearchAttributes (Temporal SDK field name). Forwarded to typedSearchAttributes at runtime.


startDelay?​

optional startDelay?: Duration

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:37

Amount of time to wait before starting the workflow.

Inherited from​

Omit.startDelay


staticDetails?​

optional staticDetails?: string

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:146

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.

Inherited from​

Omit.staticDetails


staticSummary?​

optional staticSummary?: string

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:151

A single-line fixed summary for this workflow execution that may appear in the UI/CLI. This can be in single-line Temporal markdown format.

Inherited from​

Omit.staticSummary


taskQueue?​

optional taskQueue?: string

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:24

Task queue to use for Workflow tasks. It should match a task queue specified when creating a Worker that hosts the Workflow code.

Inherited from​

Omit.taskQueue


typedSearchAttributes?​

optional typedSearchAttributes?: TypedSearchAttributes | SearchAttributePair[]

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:141

Specifies additional indexed information to attach to the Workflow Execution. More info: https://docs.temporal.io/docs/typescript/search-attributes

Values are always converted using JsonPayloadConverter, even when a custom data converter is provided. Note that search attributes are not encoded, as such, do not include any sensitive information.

If both searchAttributes and typedSearchAttributes are provided, conflicting keys will be overwritten by typedSearchAttributes.

Inherited from​

Omit.typedSearchAttributes


typeInfo?​

optional typeInfo?: PayloadTypeInfo

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:52

Experimental

Type information used to encode and decode Workflow input and output.

Inherited from​

Omit.typeInfo


versioningOverride?​

optional versioningOverride?: VersioningOverride

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:41

Override the versioning behavior of the Workflow that is about to be started.

Inherited from​

Omit.versioningOverride


workflowExecutionTimeout?​

optional workflowExecutionTimeout?: Duration

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:185

The time after which workflow execution (which includes run retries and continue as new) is automatically terminated by Temporal service. Do not rely on execution timeout for business level timeouts. It is preferred to use in workflow timers for this purpose.

Format​

number of milliseconds or ms-formatted string

Inherited from​

Omit.workflowExecutionTimeout


workflowId?​

optional workflowId?: string

Defined in: node_modules/@temporalio/client/lib/workflow-options.d.ts:19

Workflow id to use when starting.

Assign a meaningful business id. This ID can be used to ensure starting Workflows is idempotent. Workflow IDs are unique: see WorkflowOptions.workflowIdReusePolicy and WorkflowOptions.workflowIdConflictPolicy.

Inherited from​

Omit.workflowId


workflowIdConflictPolicy?​

optional workflowIdConflictPolicy?: WorkflowIdConflictPolicy

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:99

Defines what happens when trying to start a Workflow with the same ID as a Running Workflow.

Note: It is not possible to have two actively running Workflows with the same ID.

Default​

WorkflowIdConflictPolicy.WORKFLOW_ID_CONFLICT_POLICY_UNSPECIFIED

Inherited from​

Omit.workflowIdConflictPolicy


workflowIdReusePolicy?​

optional workflowIdReusePolicy?: WorkflowIdReusePolicy

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:91

Defines what happens when trying to start a Workflow with the same ID as a Closed Workflow.

Note: It is not possible to have two actively running Workflows with the same ID.

Default​

WorkflowIdReusePolicy.WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE

Inherited from​

Omit.workflowIdReusePolicy


workflowRunTimeout?​

optional workflowRunTimeout?: Duration

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:176

The time after which workflow run is automatically terminated by Temporal service. Do not rely on run timeout for business level timeouts. It is preferred to use in workflow timers for this purpose.

Format​

number of milliseconds or ms-formatted string

Inherited from​

Omit.workflowRunTimeout


workflowTaskTimeout?​

optional workflowTaskTimeout?: Duration

Defined in: node_modules/@temporalio/common/lib/workflow-options.d.ts:191

Maximum execution time of a single workflow task. Default is 10 seconds.

Format​

number of milliseconds or ms-formatted string

Inherited from​

Omit.workflowTaskTimeout