class Aws::SWF::Types::StartWorkflowExecutionInput

@note When making an API call, you may pass StartWorkflowExecutionInput

data as a hash:

    {
      domain: "DomainName", # required
      workflow_id: "WorkflowId", # required
      workflow_type: { # required
        name: "Name", # required
        version: "Version", # required
      },
      task_list: {
        name: "Name", # required
      },
      task_priority: "TaskPriority",
      input: "Data",
      execution_start_to_close_timeout: "DurationInSecondsOptional",
      tag_list: ["Tag"],
      task_start_to_close_timeout: "DurationInSecondsOptional",
      child_policy: "TERMINATE", # accepts TERMINATE, REQUEST_CANCEL, ABANDON
      lambda_role: "Arn",
    }

@!attribute [rw] domain

The name of the domain in which the workflow execution is created.
@return [String]

@!attribute [rw] workflow_id

The user defined identifier associated with the workflow execution.
You can use this to associate a custom identifier with the workflow
execution. You may specify the same identifier if a workflow
execution is logically a *restart* of a previous execution. You
cannot have two open workflow executions with the same `workflowId`
at the same time within the same domain.

The specified string must not start or end with whitespace. It must
not contain a `:` (colon), `/` (slash), `|` (vertical bar), or any
control characters (`\u0000-\u001f` \| `\u007f-\u009f`). Also, it
must not *be* the literal string `arn`.
@return [String]

@!attribute [rw] workflow_type

The type of the workflow to start.
@return [Types::WorkflowType]

@!attribute [rw] task_list

The task list to use for the decision tasks generated for this
workflow execution. This overrides the `defaultTaskList` specified
when registering the workflow type.

<note markdown="1"> A task list for this workflow execution must be specified either as
a default for the workflow type or through this parameter. If
neither this parameter is set nor a default task list was specified
at registration time then a fault is returned.

 </note>

The specified string must not start or end with whitespace. It must
not contain a `:` (colon), `/` (slash), `|` (vertical bar), or any
control characters (`\u0000-\u001f` \| `\u007f-\u009f`). Also, it
must not *be* the literal string `arn`.
@return [Types::TaskList]

@!attribute [rw] task_priority

The task priority to use for this workflow execution. This overrides
any default priority that was assigned when the workflow type was
registered. If not set, then the default task priority for the
workflow type is used. Valid values are integers that range from
Java's `Integer.MIN_VALUE` (-2147483648) to `Integer.MAX_VALUE`
(2147483647). Higher numbers indicate higher priority.

For more information about setting task priority, see [Setting Task
Priority][1] in the *Amazon SWF Developer Guide*.

[1]: https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html
@return [String]

@!attribute [rw] input

The input for the workflow execution. This is a free form string
which should be meaningful to the workflow you are starting. This
`input` is made available to the new workflow execution in the
`WorkflowExecutionStarted` history event.
@return [String]

@!attribute [rw] execution_start_to_close_timeout

The total duration for this workflow execution. This overrides the
defaultExecutionStartToCloseTimeout specified when registering the
workflow type.

The duration is specified in seconds; an integer greater than or
equal to `0`. Exceeding this limit causes the workflow execution to
time out. Unlike some of the other timeout parameters in Amazon SWF,
you cannot specify a value of "NONE" for this timeout; there is a
one-year max limit on the time that a workflow execution can run.

<note markdown="1"> An execution start-to-close timeout must be specified either through
this parameter or as a default when the workflow type is registered.
If neither this parameter nor a default execution start-to-close
timeout is specified, a fault is returned.

 </note>
@return [String]

@!attribute [rw] tag_list

The list of tags to associate with the workflow execution. You can
specify a maximum of 5 tags. You can list workflow executions with a
specific tag by calling ListOpenWorkflowExecutions or
ListClosedWorkflowExecutions and specifying a TagFilter.
@return [Array<String>]

@!attribute [rw] task_start_to_close_timeout

Specifies the maximum duration of decision tasks for this workflow
execution. This parameter overrides the
`defaultTaskStartToCloseTimout` specified when registering the
workflow type using RegisterWorkflowType.

The duration is specified in seconds, an integer greater than or
equal to `0`. You can use `NONE` to specify unlimited duration.

<note markdown="1"> A task start-to-close timeout for this workflow execution must be
specified either as a default for the workflow type or through this
parameter. If neither this parameter is set nor a default task
start-to-close timeout was specified at registration time then a
fault is returned.

 </note>
@return [String]

@!attribute [rw] child_policy

If set, specifies the policy to use for the child workflow
executions of this workflow execution if it is terminated, by
calling the TerminateWorkflowExecution action explicitly or due to
an expired timeout. This policy overrides the default child policy
specified when registering the workflow type using
RegisterWorkflowType.

The supported child policies are:

* `TERMINATE` – The child executions are terminated.

* `REQUEST_CANCEL` – A request to cancel is attempted for each child
  execution by recording a `WorkflowExecutionCancelRequested` event
  in its history. It is up to the decider to take appropriate
  actions when it receives an execution history with this event.

* `ABANDON` – No action is taken. The child executions continue to
  run.

<note markdown="1"> A child policy for this workflow execution must be specified either
as a default for the workflow type or through this parameter. If
neither this parameter is set nor a default child policy was
specified at registration time then a fault is returned.

 </note>
@return [String]

@!attribute [rw] lambda_role

The IAM role to attach to this workflow execution.

<note markdown="1"> Executions of this workflow type need IAM roles to invoke Lambda
functions. If you don't attach an IAM role, any attempt to schedule
a Lambda task fails. This results in a
`ScheduleLambdaFunctionFailed` history event. For more information,
see
[https://docs.aws.amazon.com/amazonswf/latest/developerguide/lambda-task.html][1]
in the *Amazon SWF Developer Guide*.

 </note>

[1]: https://docs.aws.amazon.com/amazonswf/latest/developerguide/lambda-task.html
@return [String]

Constants

SENSITIVE