nestjs-temporal-core
    Preparing search index...

    Interface WorkflowStartOptions

    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.

    interface WorkflowStartOptions {
        cronSchedule?: string;
        followRuns?: boolean;
        memo?: Record<string, unknown>;
        priority?: Priority;
        requestEagerStart?: boolean;
        retry?: RetryPolicy;
        retryPolicy?: RetryPolicy;
        searchAttributes?: TypedSearchAttributes;
        startDelay?: Duration;
        staticDetails?: string;
        staticSummary?: string;
        taskQueue?: string;
        typedSearchAttributes?: TypedSearchAttributes | SearchAttributePair[];
        versioningOverride?: VersioningOverride;
        workflowExecutionTimeout?: Duration;
        workflowId?: string;
        workflowIdConflictPolicy?: WorkflowIdConflictPolicy;
        workflowIdReusePolicy?: WorkflowIdReusePolicy;
        workflowRunTimeout?: Duration;
        workflowTaskTimeout?: Duration;
    }

    Hierarchy

    • Omit<Partial<SdkWorkflowOptions>, "searchAttributes">
      • WorkflowStartOptions
    Index
    cronSchedule?: string

    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.

    followRuns?: boolean

    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.

    true
    
    memo?: Record<string, unknown>

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

    priority?: Priority

    Priority of a workflow

    requestEagerStart?: boolean

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

    retry?: RetryPolicy

    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.

    retryPolicy?: RetryPolicy

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

    searchAttributes?: TypedSearchAttributes

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

    startDelay?: Duration

    Amount of time to wait before starting the workflow.

    staticDetails?: string

    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.

    User metadata is a new API and susceptible to change.

    staticSummary?: string

    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.

    User metadata is a new API and susceptible to change.

    taskQueue?: string

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

    typedSearchAttributes?: TypedSearchAttributes | SearchAttributePair[]

    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.

    versioningOverride?: VersioningOverride

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

    workflowExecutionTimeout?: Duration

    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.

    number of milliseconds or ms-formatted string

    workflowId?: string

    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.

    workflowIdConflictPolicy?: WorkflowIdConflictPolicy

    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.

    WorkflowIdConflictPolicy.WORKFLOW_ID_CONFLICT_POLICY_UNSPECIFIED
    
    workflowIdReusePolicy?: WorkflowIdReusePolicy

    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.

    WorkflowIdReusePolicy.WORKFLOW_ID_REUSE_POLICY_ALLOW_DUPLICATE
    
    workflowRunTimeout?: Duration

    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.

    number of milliseconds or ms-formatted string

    workflowTaskTimeout?: Duration

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

    number of milliseconds or ms-formatted string