class Aws::SWF::Types::RespondDecisionTaskCompletedInput

Input data for a TaskCompleted response to a decision task.

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

data as a hash:

    {
      task_token: "TaskToken", # required
      decisions: [
        {
          decision_type: "ScheduleActivityTask", # required, accepts ScheduleActivityTask, RequestCancelActivityTask, CompleteWorkflowExecution, FailWorkflowExecution, CancelWorkflowExecution, ContinueAsNewWorkflowExecution, RecordMarker, StartTimer, CancelTimer, SignalExternalWorkflowExecution, RequestCancelExternalWorkflowExecution, StartChildWorkflowExecution, ScheduleLambdaFunction
          schedule_activity_task_decision_attributes: {
            activity_type: { # required
              name: "Name", # required
              version: "Version", # required
            },
            activity_id: "ActivityId", # required
            control: "Data",
            input: "Data",
            schedule_to_close_timeout: "DurationInSecondsOptional",
            task_list: {
              name: "Name", # required
            },
            task_priority: "TaskPriority",
            schedule_to_start_timeout: "DurationInSecondsOptional",
            start_to_close_timeout: "DurationInSecondsOptional",
            heartbeat_timeout: "DurationInSecondsOptional",
          },
          request_cancel_activity_task_decision_attributes: {
            activity_id: "ActivityId", # required
          },
          complete_workflow_execution_decision_attributes: {
            result: "Data",
          },
          fail_workflow_execution_decision_attributes: {
            reason: "FailureReason",
            details: "Data",
          },
          cancel_workflow_execution_decision_attributes: {
            details: "Data",
          },
          continue_as_new_workflow_execution_decision_attributes: {
            input: "Data",
            execution_start_to_close_timeout: "DurationInSecondsOptional",
            task_list: {
              name: "Name", # required
            },
            task_priority: "TaskPriority",
            task_start_to_close_timeout: "DurationInSecondsOptional",
            child_policy: "TERMINATE", # accepts TERMINATE, REQUEST_CANCEL, ABANDON
            tag_list: ["Tag"],
            workflow_type_version: "Version",
            lambda_role: "Arn",
          },
          record_marker_decision_attributes: {
            marker_name: "MarkerName", # required
            details: "Data",
          },
          start_timer_decision_attributes: {
            timer_id: "TimerId", # required
            control: "Data",
            start_to_fire_timeout: "DurationInSeconds", # required
          },
          cancel_timer_decision_attributes: {
            timer_id: "TimerId", # required
          },
          signal_external_workflow_execution_decision_attributes: {
            workflow_id: "WorkflowId", # required
            run_id: "WorkflowRunIdOptional",
            signal_name: "SignalName", # required
            input: "Data",
            control: "Data",
          },
          request_cancel_external_workflow_execution_decision_attributes: {
            workflow_id: "WorkflowId", # required
            run_id: "WorkflowRunIdOptional",
            control: "Data",
          },
          start_child_workflow_execution_decision_attributes: {
            workflow_type: { # required
              name: "Name", # required
              version: "Version", # required
            },
            workflow_id: "WorkflowId", # required
            control: "Data",
            input: "Data",
            execution_start_to_close_timeout: "DurationInSecondsOptional",
            task_list: {
              name: "Name", # required
            },
            task_priority: "TaskPriority",
            task_start_to_close_timeout: "DurationInSecondsOptional",
            child_policy: "TERMINATE", # accepts TERMINATE, REQUEST_CANCEL, ABANDON
            tag_list: ["Tag"],
            lambda_role: "Arn",
          },
          schedule_lambda_function_decision_attributes: {
            id: "FunctionId", # required
            name: "FunctionName", # required
            control: "Data",
            input: "FunctionInput",
            start_to_close_timeout: "DurationInSecondsOptional",
          },
        },
      ],
      execution_context: "Data",
    }

@!attribute [rw] task_token

The `taskToken` from the DecisionTask.

`taskToken` is generated by the service and should be treated as an
opaque value. If the task is passed to another process, its
`taskToken` must also be passed. This enables it to provide its
progress and respond with results.
@return [String]

@!attribute [rw] decisions

The list of decisions (possibly empty) made by the decider while
processing this decision task. See the docs for the Decision
structure for details.
@return [Array<Types::Decision>]

@!attribute [rw] execution_context

User defined context to add to workflow execution.
@return [String]

Constants

SENSITIVE