The Amazon Simple Workflow Service API contains several data types that various actions use. This section describes each data type in detail.
NoteThe order of each element in a data type structure is not guaranteed. Applications should not assume a particular order.
The following data types are supported:
• ActivityTask (p. 161)
• ActivityTaskCanceledEventAttributes (p. 163)
• ActivityTaskCancelRequestedEventAttributes (p. 164)
• ActivityTaskCompletedEventAttributes (p. 165)
• ActivityTaskFailedEventAttributes (p. 166)
• ActivityTaskScheduledEventAttributes (p. 167)
• ActivityTaskStartedEventAttributes (p. 170)
• ActivityTaskTimedOutEventAttributes (p. 171)
• ActivityType (p. 172)
• ActivityTypeConfiguration (p. 173)
• ActivityTypeInfo (p. 175)
• CancelTimerDecisionAttributes (p. 176)
• CancelTimerFailedEventAttributes (p. 177)
• CancelWorkflowExecutionDecisionAttributes (p. 178)
• CancelWorkflowExecutionFailedEventAttributes (p. 179)
• ChildWorkflowExecutionCanceledEventAttributes (p. 180)
• ChildWorkflowExecutionCompletedEventAttributes (p. 182)
• ChildWorkflowExecutionFailedEventAttributes (p. 184)
• ChildWorkflowExecutionStartedEventAttributes (p. 186)
• ChildWorkflowExecutionTerminatedEventAttributes (p. 187)
• ChildWorkflowExecutionTimedOutEventAttributes (p. 188)
• CloseStatusFilter (p. 190)
• CompleteWorkflowExecutionDecisionAttributes (p. 191)
• CompleteWorkflowExecutionFailedEventAttributes (p. 192)
• ContinueAsNewWorkflowExecutionDecisionAttributes (p. 193)
• ContinueAsNewWorkflowExecutionFailedEventAttributes (p. 196)
• Decision (p. 197)
• DecisionTask (p. 202)
• DecisionTaskCompletedEventAttributes (p. 204)
• DecisionTaskScheduledEventAttributes (p. 205)
• DecisionTaskStartedEventAttributes (p. 206)
• DecisionTaskTimedOutEventAttributes (p. 207)
• DomainConfiguration (p. 208)
• DomainInfo (p. 209)
• ExecutionTimeFilter (p. 211)
• ExternalWorkflowExecutionCancelRequestedEventAttributes (p. 212)
• ExternalWorkflowExecutionSignaledEventAttributes (p. 213)
• FailWorkflowExecutionDecisionAttributes (p. 214)
• FailWorkflowExecutionFailedEventAttributes (p. 215)
• HistoryEvent (p. 216)
• LambdaFunctionCompletedEventAttributes (p. 226)
• LambdaFunctionFailedEventAttributes (p. 227)
• LambdaFunctionScheduledEventAttributes (p. 228)
• LambdaFunctionStartedEventAttributes (p. 230)
• LambdaFunctionTimedOutEventAttributes (p. 231)
• MarkerRecordedEventAttributes (p. 232)
• RecordMarkerDecisionAttributes (p. 233)
• RecordMarkerFailedEventAttributes (p. 234)
• RequestCancelActivityTaskDecisionAttributes (p. 235)
• RequestCancelActivityTaskFailedEventAttributes (p. 236)
• RequestCancelExternalWorkflowExecutionDecisionAttributes (p. 237)
• RequestCancelExternalWorkflowExecutionFailedEventAttributes (p. 239)
• RequestCancelExternalWorkflowExecutionInitiatedEventAttributes (p. 241)
• ResourceTag (p. 242)
• ScheduleActivityTaskDecisionAttributes (p. 243)
• ScheduleActivityTaskFailedEventAttributes (p. 246)
• ScheduleLambdaFunctionDecisionAttributes (p. 248)
• ScheduleLambdaFunctionFailedEventAttributes (p. 250)
• SignalExternalWorkflowExecutionDecisionAttributes (p. 252)
• SignalExternalWorkflowExecutionFailedEventAttributes (p. 254)
• SignalExternalWorkflowExecutionInitiatedEventAttributes (p. 256)
• StartChildWorkflowExecutionDecisionAttributes (p. 258)
• StartChildWorkflowExecutionFailedEventAttributes (p. 262)
• StartChildWorkflowExecutionInitiatedEventAttributes (p. 264)
• StartLambdaFunctionFailedEventAttributes (p. 267)
• StartTimerDecisionAttributes (p. 268)
• StartTimerFailedEventAttributes (p. 270)
• TagFilter (p. 271)
• TaskList (p. 272)
• TimerCanceledEventAttributes (p. 273)
• TimerFiredEventAttributes (p. 274)
• TimerStartedEventAttributes (p. 275)
• WorkflowExecution (p. 276)
• WorkflowExecutionCanceledEventAttributes (p. 277)
• WorkflowExecutionCancelRequestedEventAttributes (p. 278)
• WorkflowExecutionCompletedEventAttributes (p. 279)
• WorkflowExecutionConfiguration (p. 280)
• WorkflowExecutionContinuedAsNewEventAttributes (p. 282)
• WorkflowExecutionFailedEventAttributes (p. 285)
• WorkflowExecutionFilter (p. 286)
• WorkflowExecutionInfo (p. 287)
• WorkflowExecutionOpenCounts (p. 289)
• WorkflowExecutionSignaledEventAttributes (p. 291)
• WorkflowExecutionStartedEventAttributes (p. 292)
• WorkflowExecutionTerminatedEventAttributes (p. 295)
• WorkflowExecutionTimedOutEventAttributes (p. 297)
• WorkflowType (p. 298)
• WorkflowTypeConfiguration (p. 299)
• WorkflowTypeFilter (p. 301)
• WorkflowTypeInfo (p. 302)
ActivityTask
ActivityTask
Unit of work sent to an activity worker.
Contents
activityId
The unique ID of the task.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes activityType
The type of this activity task.
Type: ActivityType (p. 172) object Required: Yes
input
The inputs provided when the activity task was scheduled. The form of the input is user defined and should be meaningful to the activity implementation.
Type: String
Length Constraints: Maximum length of 32768.
Required: No startedEventId
The ID of the ActivityTaskStarted event recorded in the history.
Type: Long Required: Yes taskToken
The opaque string used as a handle on the task. This token is used by workers to communicate progress and response information back to the system about the task.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 1024.
Required: Yes workflowExecution
The workflow execution that started this activity task.
Type: WorkflowExecution (p. 276) object Required: Yes
See Also
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskCanceledEventAttributes
ActivityTaskCanceledEventAttributes
Provides the details of the ActivityTaskCanceled event.
Contents
details
Details of the cancellation.
Type: String
Length Constraints: Maximum length of 32768.
Required: No
latestCancelRequestedEventId
If set, contains the ID of the last ActivityTaskCancelRequested event recorded for this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: No scheduledEventId
The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes startedEventId
The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskCancelRequestedEventAttributes
ActivityTaskCancelRequestedEventAttributes
Provides the details of the ActivityTaskCancelRequested event.
Contents
activityId
The unique ID of the task.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes
decisionTaskCompletedEventId
The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the RequestCancelActivityTask decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskCompletedEventAttributes
ActivityTaskCompletedEventAttributes
Provides the details of the ActivityTaskCompleted event.
Contents
result
The results of the activity task.
Type: String
Length Constraints: Maximum length of 32768.
Required: No scheduledEventId
The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes startedEventId
The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskFailedEventAttributes
ActivityTaskFailedEventAttributes
Provides the details of the ActivityTaskFailed event.
Contents
details
The details of the failure.
Type: String
Length Constraints: Maximum length of 32768.
Required: No reason
The reason provided for the failure.
Type: String
Length Constraints: Maximum length of 256.
Required: No scheduledEventId
The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes startedEventId
The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskScheduledEventAttributes
ActivityTaskScheduledEventAttributes
Provides the details of the ActivityTaskScheduled event.
Contents
activityId
The unique ID of the activity task.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes activityType
The type of the activity task.
Type: ActivityType (p. 172) object Required: Yes
control
Data attached to the event that can be used by the decider in subsequent workflow tasks. This data isn't sent to the activity.
Type: String
Length Constraints: Maximum length of 32768.
Required: No
decisionTaskCompletedEventId
The ID of the DecisionTaskCompleted event corresponding to the decision that resulted in the scheduling of this activity task. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes heartbeatTimeout
The maximum time before which the worker processing this task must report progress by calling RecordActivityTaskHeartbeat (p. 98). If the timeout is exceeded, the activity task is automatically timed out. If the worker subsequently attempts to record a heartbeat or return a result, it is ignored.
Type: String
Length Constraints: Maximum length of 8.
Required: No input
The input provided to the activity task.
Type: String
See Also
Length Constraints: Maximum length of 32768.
Required: No
scheduleToCloseTimeout
The maximum amount of time for this activity task.
Type: String
Length Constraints: Maximum length of 8.
Required: No
scheduleToStartTimeout
The maximum amount of time the activity task can wait to be assigned to a worker.
Type: String
Length Constraints: Maximum length of 8.
Required: No startToCloseTimeout
The maximum amount of time a worker may take to process the activity task.
Type: String
Length Constraints: Maximum length of 8.
Required: No taskList
The task list in which the activity task has been scheduled.
Type: TaskList (p. 272) object Required: Yes
taskPriority
The priority to assign to the scheduled activity task. If set, this overrides any default priority value that was assigned when the activity type was registered.
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 in the Amazon SWF Developer Guide.
Type: String Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
See Also
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskStartedEventAttributes
ActivityTaskStartedEventAttributes
Provides the details of the ActivityTaskStarted event.
Contents
identity
Identity of the worker that was assigned this task. This aids diagnostics when problems arise. The form of this identity is user defined.
Type: String
Length Constraints: Maximum length of 256.
Required: No scheduledEventId
The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTaskTimedOutEventAttributes
ActivityTaskTimedOutEventAttributes
Provides the details of the ActivityTaskTimedOut event.
Contents
details
Contains the content of the details parameter for the last call made by the activity to RecordActivityTaskHeartbeat.
Type: String
Length Constraints: Maximum length of 2048.
Required: No scheduledEventId
The ID of the ActivityTaskScheduled event that was recorded when this activity task was scheduled. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes startedEventId
The ID of the ActivityTaskStarted event recorded when this activity task was started. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes timeoutType
The type of the timeout that caused this event.
Type: String
Valid Values: START_TO_CLOSE | SCHEDULE_TO_START | SCHEDULE_TO_CLOSE | HEARTBEAT
Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityType
ActivityType
Represents an activity type.
Contents
name
The name of this activity.
NoteThe combination of activity type name and version must be unique within a domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes version
The version of this activity.
NoteThe combination of activity type name and version must be unique with in a domain.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTypeConfiguration
ActivityTypeConfiguration
Configuration settings registered with the activity type.
Contents
defaultTaskHeartbeatTimeout
The default maximum time, in seconds, before which a worker processing a task must report progress by calling RecordActivityTaskHeartbeat (p. 98).
You can specify this value only when registering an activity type. The registered default value can be overridden when you schedule a task through the ScheduleActivityTask Decision (p. 197).
If the activity worker subsequently attempts to record a heartbeat or returns a result, the activity worker receives an UnknownResource fault. In this case, Amazon SWF no longer considers the activity task to be valid; the activity worker should clean up the activity task.
The duration is specified in seconds, an integer greater than or equal to 0. You can use NONE to specify unlimited duration.
Type: String
Length Constraints: Maximum length of 8.
Required: No defaultTaskList
The default task list specified for this activity type at registration. This default is used if a task list isn't provided when a task is scheduled through the ScheduleActivityTask
Decision (p. 197). You can override the default registered task list when scheduling a task through the ScheduleActivityTask Decision (p. 197).
Type: TaskList (p. 272) object Required: No
defaultTaskPriority
The default task priority for tasks of this activity type, specified at registration. If not set, then 0 is used as the default priority. This default can be overridden when scheduling an activity task.
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 in the Amazon SWF Developer Guide.
Type: String Required: No
defaultTaskScheduleToCloseTimeout
The default maximum duration, specified when registering the activity type, for tasks of this activity type. You can override this default when scheduling a task through the ScheduleActivityTask Decision (p. 197).
The duration is specified in seconds, an integer greater than or equal to 0. You can use NONE to specify unlimited duration.
See Also
Type: String
Length Constraints: Maximum length of 8.
Required: No
defaultTaskScheduleToStartTimeout
The default maximum duration, specified when registering the activity type, that a task of an activity type can wait before being assigned to a worker. You can override this default when scheduling a task through the ScheduleActivityTask Decision (p. 197).
The duration is specified in seconds, an integer greater than or equal to 0. You can use NONE to specify unlimited duration.
Type: String
Length Constraints: Maximum length of 8.
Required: No
defaultTaskStartToCloseTimeout
The default maximum duration for tasks of an activity type specified when registering the activity type. You can override this default when scheduling a task through the ScheduleActivityTask Decision (p. 197).
The duration is specified in seconds, an integer greater than or equal to 0. You can use NONE to specify unlimited duration.
Type: String
Length Constraints: Maximum length of 8.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ActivityTypeInfo
ActivityTypeInfo
Detailed information about an activity type.
Contents
activityType
The ActivityType (p. 172) type structure representing the activity type.
Type: ActivityType (p. 172) object Required: Yes
creationDate
The date and time this activity type was created through RegisterActivityType (p. 102).
Type: Timestamp Required: Yes deprecationDate
If DEPRECATED, the date and time DeprecateActivityType (p. 18) was called.
Type: Timestamp Required: No description
The description of the activity type provided in RegisterActivityType (p. 102).
Type: String
Length Constraints: Maximum length of 1024.
Required: No status
The current status of the activity type.
Type: String
Valid Values: REGISTERED | DEPRECATED Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
CancelTimerDecisionAttributes
CancelTimerDecisionAttributes
Provides the details of the CancelTimer decision.
Access Control
You can use IAM policies to control this decision's access to Amazon SWF resources as follows:
• Use a Resource element with the domain name to limit the action to only specified domains.
• Use an Action element to allow or deny permission to call this action.
• You cannot use an IAM policy to constrain this action's parameters.
If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer Guide.
Contents
timerId
The unique ID of the timer to cancel.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
CancelTimerFailedEventAttributes
CancelTimerFailedEventAttributes
Provides the details of the CancelTimerFailed event.
Contents
cause
The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.
Note
If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer Guide.
Type: String
Valid Values: TIMER_ID_UNKNOWN | OPERATION_NOT_PERMITTED Required: Yes
decisionTaskCompletedEventId
The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelTimer decision to cancel this timer. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes timerId
The timerId provided in the CancelTimer decision that failed.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 256.
Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
CancelWorkflowExecutionDecisionAttributes
CancelWorkflowExecutionDecisionAttributes
Provides the details of the CancelWorkflowExecution decision.
Access Control
You can use IAM policies to control this decision's access to Amazon SWF resources as follows:
• Use a Resource element with the domain name to limit the action to only specified domains.
• Use an Action element to allow or deny permission to call this action.
• You cannot use an IAM policy to constrain this action's parameters.
If the caller doesn't have sufficient permissions to invoke the action, or the parameter values fall outside the specified constraints, the action fails. The associated event attribute's cause parameter is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer Guide.
Contents
details
Details of the cancellation.
Type: String
Length Constraints: Maximum length of 32768.
Required: No
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
CancelWorkflowExecutionFailedEventAttributes
CancelWorkflowExecutionFailedEventAttributes
Provides the details of the CancelWorkflowExecutionFailed event.
Contents
cause
The cause of the failure. This information is generated by the system and can be useful for diagnostic purposes.
Note
If cause is set to OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient permissions. For details and example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows in the Amazon SWF Developer Guide.
Type: String
Valid Values: UNHANDLED_DECISION | OPERATION_NOT_PERMITTED Required: Yes
decisionTaskCompletedEventId
The ID of the DecisionTaskCompleted event corresponding to the decision task that resulted in the CancelWorkflowExecution decision for this cancellation request. This information can be useful for diagnosing problems by tracing back the chain of events leading up to this event.
Type: Long Required: Yes
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following:
• AWS SDK for C++
• AWS SDK for Go
• AWS SDK for Java V2
• AWS SDK for Ruby V3
ChildWorkflowExecutionCanceledEventAttributes
ChildWorkflowExecutionCanceledEventAttributes
Provide details of the ChildWorkflowExecutionCanceled event.
Provide details of the ChildWorkflowExecutionCanceled event.