1// Code generated by smithy-go-codegen DO NOT EDIT. 2 3package types 4 5import ( 6 "time" 7) 8 9// Provides the details of the ActivityTaskCanceled event. 10type ActivityTaskCanceledEventAttributes struct { 11 12 // The ID of the ActivityTaskScheduled event that was recorded when this activity 13 // task was scheduled. This information can be useful for diagnosing problems by 14 // tracing back the chain of events leading up to this event. 15 // 16 // This member is required. 17 ScheduledEventId int64 18 19 // The ID of the ActivityTaskStarted event recorded when this activity task was 20 // started. This information can be useful for diagnosing problems by tracing back 21 // the chain of events leading up to this event. 22 // 23 // This member is required. 24 StartedEventId int64 25 26 // Details of the cancellation. 27 Details *string 28 29 // If set, contains the ID of the last ActivityTaskCancelRequested event recorded 30 // for this activity task. This information can be useful for diagnosing problems 31 // by tracing back the chain of events leading up to this event. 32 LatestCancelRequestedEventId int64 33} 34 35// Provides the details of the ActivityTaskCancelRequested event. 36type ActivityTaskCancelRequestedEventAttributes struct { 37 38 // The unique ID of the task. 39 // 40 // This member is required. 41 ActivityId *string 42 43 // The ID of the DecisionTaskCompleted event corresponding to the decision task 44 // that resulted in the RequestCancelActivityTask decision for this cancellation 45 // request. This information can be useful for diagnosing problems by tracing back 46 // the chain of events leading up to this event. 47 // 48 // This member is required. 49 DecisionTaskCompletedEventId int64 50} 51 52// Provides the details of the ActivityTaskCompleted event. 53type ActivityTaskCompletedEventAttributes struct { 54 55 // The ID of the ActivityTaskScheduled event that was recorded when this activity 56 // task was scheduled. This information can be useful for diagnosing problems by 57 // tracing back the chain of events leading up to this event. 58 // 59 // This member is required. 60 ScheduledEventId int64 61 62 // The ID of the ActivityTaskStarted event recorded when this activity task was 63 // started. This information can be useful for diagnosing problems by tracing back 64 // the chain of events leading up to this event. 65 // 66 // This member is required. 67 StartedEventId int64 68 69 // The results of the activity task. 70 Result *string 71} 72 73// Provides the details of the ActivityTaskFailed event. 74type ActivityTaskFailedEventAttributes struct { 75 76 // The ID of the ActivityTaskScheduled event that was recorded when this activity 77 // task was scheduled. This information can be useful for diagnosing problems by 78 // tracing back the chain of events leading up to this event. 79 // 80 // This member is required. 81 ScheduledEventId int64 82 83 // The ID of the ActivityTaskStarted event recorded when this activity task was 84 // started. This information can be useful for diagnosing problems by tracing back 85 // the chain of events leading up to this event. 86 // 87 // This member is required. 88 StartedEventId int64 89 90 // The details of the failure. 91 Details *string 92 93 // The reason provided for the failure. 94 Reason *string 95} 96 97// Provides the details of the ActivityTaskScheduled event. 98type ActivityTaskScheduledEventAttributes struct { 99 100 // The unique ID of the activity task. 101 // 102 // This member is required. 103 ActivityId *string 104 105 // The type of the activity task. 106 // 107 // This member is required. 108 ActivityType *ActivityType 109 110 // The ID of the DecisionTaskCompleted event corresponding to the decision that 111 // resulted in the scheduling of this activity task. This information can be useful 112 // for diagnosing problems by tracing back the chain of events leading up to this 113 // event. 114 // 115 // This member is required. 116 DecisionTaskCompletedEventId int64 117 118 // The task list in which the activity task has been scheduled. 119 // 120 // This member is required. 121 TaskList *TaskList 122 123 // Data attached to the event that can be used by the decider in subsequent 124 // workflow tasks. This data isn't sent to the activity. 125 Control *string 126 127 // The maximum time before which the worker processing this task must report 128 // progress by calling RecordActivityTaskHeartbeat. If the timeout is exceeded, the 129 // activity task is automatically timed out. If the worker subsequently attempts to 130 // record a heartbeat or return a result, it is ignored. 131 HeartbeatTimeout *string 132 133 // The input provided to the activity task. 134 Input *string 135 136 // The maximum amount of time for this activity task. 137 ScheduleToCloseTimeout *string 138 139 // The maximum amount of time the activity task can wait to be assigned to a 140 // worker. 141 ScheduleToStartTimeout *string 142 143 // The maximum amount of time a worker may take to process the activity task. 144 StartToCloseTimeout *string 145 146 // The priority to assign to the scheduled activity task. If set, this overrides 147 // any default priority value that was assigned when the activity type was 148 // registered. Valid values are integers that range from Java's Integer.MIN_VALUE 149 // (-2147483648) to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher 150 // priority. For more information about setting task priority, see Setting Task 151 // Priority 152 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 153 // in the Amazon SWF Developer Guide. 154 TaskPriority *string 155} 156 157// Provides the details of the ActivityTaskStarted event. 158type ActivityTaskStartedEventAttributes struct { 159 160 // The ID of the ActivityTaskScheduled event that was recorded when this activity 161 // task was scheduled. This information can be useful for diagnosing problems by 162 // tracing back the chain of events leading up to this event. 163 // 164 // This member is required. 165 ScheduledEventId int64 166 167 // Identity of the worker that was assigned this task. This aids diagnostics when 168 // problems arise. The form of this identity is user defined. 169 Identity *string 170} 171 172// Provides the details of the ActivityTaskTimedOut event. 173type ActivityTaskTimedOutEventAttributes struct { 174 175 // The ID of the ActivityTaskScheduled event that was recorded when this activity 176 // task was scheduled. This information can be useful for diagnosing problems by 177 // tracing back the chain of events leading up to this event. 178 // 179 // This member is required. 180 ScheduledEventId int64 181 182 // The ID of the ActivityTaskStarted event recorded when this activity task was 183 // started. This information can be useful for diagnosing problems by tracing back 184 // the chain of events leading up to this event. 185 // 186 // This member is required. 187 StartedEventId int64 188 189 // The type of the timeout that caused this event. 190 // 191 // This member is required. 192 TimeoutType ActivityTaskTimeoutType 193 194 // Contains the content of the details parameter for the last call made by the 195 // activity to RecordActivityTaskHeartbeat. 196 Details *string 197} 198 199// Represents an activity type. 200type ActivityType struct { 201 202 // The name of this activity. The combination of activity type name and version 203 // must be unique within a domain. 204 // 205 // This member is required. 206 Name *string 207 208 // The version of this activity. The combination of activity type name and version 209 // must be unique with in a domain. 210 // 211 // This member is required. 212 Version *string 213} 214 215// Configuration settings registered with the activity type. 216type ActivityTypeConfiguration struct { 217 218 // The default maximum time, in seconds, before which a worker processing a task 219 // must report progress by calling RecordActivityTaskHeartbeat. You can specify 220 // this value only when registering an activity type. The registered default value 221 // can be overridden when you schedule a task through the 222 // ScheduleActivityTaskDecision. If the activity worker subsequently attempts to 223 // record a heartbeat or returns a result, the activity worker receives an 224 // UnknownResource fault. In this case, Amazon SWF no longer considers the activity 225 // task to be valid; the activity worker should clean up the activity task. The 226 // duration is specified in seconds, an integer greater than or equal to 0. You can 227 // use NONE to specify unlimited duration. 228 DefaultTaskHeartbeatTimeout *string 229 230 // The default task list specified for this activity type at registration. This 231 // default is used if a task list isn't provided when a task is scheduled through 232 // the ScheduleActivityTaskDecision. You can override the default registered task 233 // list when scheduling a task through the ScheduleActivityTaskDecision. 234 DefaultTaskList *TaskList 235 236 // The default task priority for tasks of this activity type, specified at 237 // registration. If not set, then 0 is used as the default priority. This default 238 // can be overridden when scheduling an activity task. Valid values are integers 239 // that range from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE 240 // (2147483647). Higher numbers indicate higher priority. For more information 241 // about setting task priority, see Setting Task Priority 242 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 243 // in the Amazon SWF Developer Guide. 244 DefaultTaskPriority *string 245 246 // The default maximum duration, specified when registering the activity type, for 247 // tasks of this activity type. You can override this default when scheduling a 248 // task through the ScheduleActivityTaskDecision. The duration is specified in 249 // seconds, an integer greater than or equal to 0. You can use NONE to specify 250 // unlimited duration. 251 DefaultTaskScheduleToCloseTimeout *string 252 253 // The default maximum duration, specified when registering the activity type, that 254 // a task of an activity type can wait before being assigned to a worker. You can 255 // override this default when scheduling a task through the 256 // ScheduleActivityTaskDecision. The duration is specified in seconds, an integer 257 // greater than or equal to 0. You can use NONE to specify unlimited duration. 258 DefaultTaskScheduleToStartTimeout *string 259 260 // The default maximum duration for tasks of an activity type specified when 261 // registering the activity type. You can override this default when scheduling a 262 // task through the ScheduleActivityTaskDecision. The duration is specified in 263 // seconds, an integer greater than or equal to 0. You can use NONE to specify 264 // unlimited duration. 265 DefaultTaskStartToCloseTimeout *string 266} 267 268// Detailed information about an activity type. 269type ActivityTypeInfo struct { 270 271 // The ActivityType type structure representing the activity type. 272 // 273 // This member is required. 274 ActivityType *ActivityType 275 276 // The date and time this activity type was created through RegisterActivityType. 277 // 278 // This member is required. 279 CreationDate *time.Time 280 281 // The current status of the activity type. 282 // 283 // This member is required. 284 Status RegistrationStatus 285 286 // If DEPRECATED, the date and time DeprecateActivityType was called. 287 DeprecationDate *time.Time 288 289 // The description of the activity type provided in RegisterActivityType. 290 Description *string 291} 292 293// Provides the details of the CancelTimer decision. Access Control You can use IAM 294// policies to control this decision's access to Amazon SWF resources as 295// follows: 296// 297// * Use a Resource element with the domain name to limit the action to 298// only specified domains. 299// 300// * Use an Action element to allow or deny permission to 301// call this action. 302// 303// * You cannot use an IAM policy to constrain this action's 304// parameters. 305// 306// If the caller doesn't have sufficient permissions to invoke the 307// action, or the parameter values fall outside the specified constraints, the 308// action fails. The associated event attribute's cause parameter is set to 309// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 310// Manage Access to Amazon SWF Workflows 311// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 312// in the Amazon SWF Developer Guide. 313type CancelTimerDecisionAttributes struct { 314 315 // The unique ID of the timer to cancel. 316 // 317 // This member is required. 318 TimerId *string 319} 320 321// Provides the details of the CancelTimerFailed event. 322type CancelTimerFailedEventAttributes struct { 323 324 // The cause of the failure. This information is generated by the system and can be 325 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 326 // decision failed because it lacked sufficient permissions. For details and 327 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 328 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 329 // in the Amazon SWF Developer Guide. 330 // 331 // This member is required. 332 Cause CancelTimerFailedCause 333 334 // The ID of the DecisionTaskCompleted event corresponding to the decision task 335 // that resulted in the CancelTimer decision to cancel this timer. This information 336 // can be useful for diagnosing problems by tracing back the chain of events 337 // leading up to this event. 338 // 339 // This member is required. 340 DecisionTaskCompletedEventId int64 341 342 // The timerId provided in the CancelTimer decision that failed. 343 // 344 // This member is required. 345 TimerId *string 346} 347 348// Provides the details of the CancelWorkflowExecution decision. Access Control You 349// can use IAM policies to control this decision's access to Amazon SWF resources 350// as follows: 351// 352// * Use a Resource element with the domain name to limit the action 353// to only specified domains. 354// 355// * Use an Action element to allow or deny permission 356// to call this action. 357// 358// * You cannot use an IAM policy to constrain this action's 359// parameters. 360// 361// If the caller doesn't have sufficient permissions to invoke the 362// action, or the parameter values fall outside the specified constraints, the 363// action fails. The associated event attribute's cause parameter is set to 364// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 365// Manage Access to Amazon SWF Workflows 366// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 367// in the Amazon SWF Developer Guide. 368type CancelWorkflowExecutionDecisionAttributes struct { 369 370 // Details of the cancellation. 371 Details *string 372} 373 374// Provides the details of the CancelWorkflowExecutionFailed event. 375type CancelWorkflowExecutionFailedEventAttributes struct { 376 377 // The cause of the failure. This information is generated by the system and can be 378 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 379 // decision failed because it lacked sufficient permissions. For details and 380 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 381 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 382 // in the Amazon SWF Developer Guide. 383 // 384 // This member is required. 385 Cause CancelWorkflowExecutionFailedCause 386 387 // The ID of the DecisionTaskCompleted event corresponding to the decision task 388 // that resulted in the CancelWorkflowExecution decision for this cancellation 389 // request. This information can be useful for diagnosing problems by tracing back 390 // the chain of events leading up to this event. 391 // 392 // This member is required. 393 DecisionTaskCompletedEventId int64 394} 395 396// Provide details of the ChildWorkflowExecutionCanceled event. 397type ChildWorkflowExecutionCanceledEventAttributes struct { 398 399 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 400 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 401 // information can be useful for diagnosing problems by tracing back the chain of 402 // events leading up to this event. 403 // 404 // This member is required. 405 InitiatedEventId int64 406 407 // The ID of the ChildWorkflowExecutionStarted event recorded when this child 408 // workflow execution was started. This information can be useful for diagnosing 409 // problems by tracing back the chain of events leading up to this event. 410 // 411 // This member is required. 412 StartedEventId int64 413 414 // The child workflow execution that was canceled. 415 // 416 // This member is required. 417 WorkflowExecution *WorkflowExecution 418 419 // The type of the child workflow execution. 420 // 421 // This member is required. 422 WorkflowType *WorkflowType 423 424 // Details of the cancellation (if provided). 425 Details *string 426} 427 428// Provides the details of the ChildWorkflowExecutionCompleted event. 429type ChildWorkflowExecutionCompletedEventAttributes struct { 430 431 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 432 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 433 // information can be useful for diagnosing problems by tracing back the chain of 434 // events leading up to this event. 435 // 436 // This member is required. 437 InitiatedEventId int64 438 439 // The ID of the ChildWorkflowExecutionStarted event recorded when this child 440 // workflow execution was started. This information can be useful for diagnosing 441 // problems by tracing back the chain of events leading up to this event. 442 // 443 // This member is required. 444 StartedEventId int64 445 446 // The child workflow execution that was completed. 447 // 448 // This member is required. 449 WorkflowExecution *WorkflowExecution 450 451 // The type of the child workflow execution. 452 // 453 // This member is required. 454 WorkflowType *WorkflowType 455 456 // The result of the child workflow execution. 457 Result *string 458} 459 460// Provides the details of the ChildWorkflowExecutionFailed event. 461type ChildWorkflowExecutionFailedEventAttributes struct { 462 463 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 464 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 465 // information can be useful for diagnosing problems by tracing back the chain of 466 // events leading up to this event. 467 // 468 // This member is required. 469 InitiatedEventId int64 470 471 // The ID of the ChildWorkflowExecutionStarted event recorded when this child 472 // workflow execution was started. This information can be useful for diagnosing 473 // problems by tracing back the chain of events leading up to this event. 474 // 475 // This member is required. 476 StartedEventId int64 477 478 // The child workflow execution that failed. 479 // 480 // This member is required. 481 WorkflowExecution *WorkflowExecution 482 483 // The type of the child workflow execution. 484 // 485 // This member is required. 486 WorkflowType *WorkflowType 487 488 // The details of the failure (if provided). 489 Details *string 490 491 // The reason for the failure (if provided). 492 Reason *string 493} 494 495// Provides the details of the ChildWorkflowExecutionStarted event. 496type ChildWorkflowExecutionStartedEventAttributes struct { 497 498 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 499 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 500 // information can be useful for diagnosing problems by tracing back the chain of 501 // events leading up to this event. 502 // 503 // This member is required. 504 InitiatedEventId int64 505 506 // The child workflow execution that was started. 507 // 508 // This member is required. 509 WorkflowExecution *WorkflowExecution 510 511 // The type of the child workflow execution. 512 // 513 // This member is required. 514 WorkflowType *WorkflowType 515} 516 517// Provides the details of the ChildWorkflowExecutionTerminated event. 518type ChildWorkflowExecutionTerminatedEventAttributes struct { 519 520 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 521 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 522 // information can be useful for diagnosing problems by tracing back the chain of 523 // events leading up to this event. 524 // 525 // This member is required. 526 InitiatedEventId int64 527 528 // The ID of the ChildWorkflowExecutionStarted event recorded when this child 529 // workflow execution was started. This information can be useful for diagnosing 530 // problems by tracing back the chain of events leading up to this event. 531 // 532 // This member is required. 533 StartedEventId int64 534 535 // The child workflow execution that was terminated. 536 // 537 // This member is required. 538 WorkflowExecution *WorkflowExecution 539 540 // The type of the child workflow execution. 541 // 542 // This member is required. 543 WorkflowType *WorkflowType 544} 545 546// Provides the details of the ChildWorkflowExecutionTimedOut event. 547type ChildWorkflowExecutionTimedOutEventAttributes struct { 548 549 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 550 // StartChildWorkflowExecutionDecision to start this child workflow execution. This 551 // information can be useful for diagnosing problems by tracing back the chain of 552 // events leading up to this event. 553 // 554 // This member is required. 555 InitiatedEventId int64 556 557 // The ID of the ChildWorkflowExecutionStarted event recorded when this child 558 // workflow execution was started. This information can be useful for diagnosing 559 // problems by tracing back the chain of events leading up to this event. 560 // 561 // This member is required. 562 StartedEventId int64 563 564 // The type of the timeout that caused the child workflow execution to time out. 565 // 566 // This member is required. 567 TimeoutType WorkflowExecutionTimeoutType 568 569 // The child workflow execution that timed out. 570 // 571 // This member is required. 572 WorkflowExecution *WorkflowExecution 573 574 // The type of the child workflow execution. 575 // 576 // This member is required. 577 WorkflowType *WorkflowType 578} 579 580// Used to filter the closed workflow executions in visibility APIs by their close 581// status. 582type CloseStatusFilter struct { 583 584 // The close status that must match the close status of an execution for it to meet 585 // the criteria of this filter. 586 // 587 // This member is required. 588 Status CloseStatus 589} 590 591// Provides the details of the CompleteWorkflowExecution decision. Access Control 592// You can use IAM policies to control this decision's access to Amazon SWF 593// resources as follows: 594// 595// * Use a Resource element with the domain name to limit 596// the action to only specified domains. 597// 598// * Use an Action element to allow or deny 599// permission to call this action. 600// 601// * You cannot use an IAM policy to constrain 602// this action's parameters. 603// 604// If the caller doesn't have sufficient permissions to 605// invoke the action, or the parameter values fall outside the specified 606// constraints, the action fails. The associated event attribute's cause parameter 607// is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see 608// Using IAM to Manage Access to Amazon SWF Workflows 609// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 610// in the Amazon SWF Developer Guide. 611type CompleteWorkflowExecutionDecisionAttributes struct { 612 613 // The result of the workflow execution. The form of the result is implementation 614 // defined. 615 Result *string 616} 617 618// Provides the details of the CompleteWorkflowExecutionFailed event. 619type CompleteWorkflowExecutionFailedEventAttributes struct { 620 621 // The cause of the failure. This information is generated by the system and can be 622 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 623 // decision failed because it lacked sufficient permissions. For details and 624 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 625 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 626 // in the Amazon SWF Developer Guide. 627 // 628 // This member is required. 629 Cause CompleteWorkflowExecutionFailedCause 630 631 // The ID of the DecisionTaskCompleted event corresponding to the decision task 632 // that resulted in the CompleteWorkflowExecution decision to complete this 633 // execution. This information can be useful for diagnosing problems by tracing 634 // back the chain of events leading up to this event. 635 // 636 // This member is required. 637 DecisionTaskCompletedEventId int64 638} 639 640// Provides the details of the ContinueAsNewWorkflowExecution decision. Access 641// Control You can use IAM policies to control this decision's access to Amazon SWF 642// resources as follows: 643// 644// * Use a Resource element with the domain name to limit 645// the action to only specified domains. 646// 647// * Use an Action element to allow or deny 648// permission to call this action. 649// 650// * Constrain the following parameters by using a 651// Condition element with the appropriate keys. 652// 653// * tag – A tag used to identify the 654// workflow execution 655// 656// * taskList – String constraint. The key is 657// swf:taskList.name. 658// 659// * workflowType.version – String constraint. The key is 660// swf:workflowType.version. 661// 662// If the caller doesn't have sufficient permissions to 663// invoke the action, or the parameter values fall outside the specified 664// constraints, the action fails. The associated event attribute's cause parameter 665// is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see 666// Using IAM to Manage Access to Amazon SWF Workflows 667// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 668// in the Amazon SWF Developer Guide. 669type ContinueAsNewWorkflowExecutionDecisionAttributes struct { 670 671 // If set, specifies the policy to use for the child workflow executions of the new 672 // execution if it is terminated by calling the TerminateWorkflowExecution action 673 // explicitly or due to an expired timeout. This policy overrides the default child 674 // policy specified when registering the workflow type using RegisterWorkflowType. 675 // The supported child policies are: 676 // 677 // * TERMINATE – The child executions are 678 // terminated. 679 // 680 // * REQUEST_CANCEL – A request to cancel is attempted for each child 681 // execution by recording a WorkflowExecutionCancelRequested event in its history. 682 // It is up to the decider to take appropriate actions when it receives an 683 // execution history with this event. 684 // 685 // * ABANDON – No action is taken. The child 686 // executions continue to run. 687 // 688 // A child policy for this workflow execution must be 689 // specified either as a default for the workflow type or through this parameter. 690 // If neither this parameter is set nor a default child policy was specified at 691 // registration time then a fault is returned. 692 ChildPolicy ChildPolicy 693 694 // If set, specifies the total duration for this workflow execution. This overrides 695 // the defaultExecutionStartToCloseTimeout specified when registering the workflow 696 // type. The duration is specified in seconds, an integer greater than or equal to 697 // 0. You can use NONE to specify unlimited duration. An execution start-to-close 698 // timeout for this workflow execution must be specified either as a default for 699 // the workflow type or through this field. If neither this field is set nor a 700 // default execution start-to-close timeout was specified at registration time then 701 // a fault is returned. 702 ExecutionStartToCloseTimeout *string 703 704 // The input provided to the new workflow execution. 705 Input *string 706 707 // The IAM role to attach to the new (continued) execution. 708 LambdaRole *string 709 710 // The list of tags to associate with the new workflow execution. A maximum of 5 711 // tags can be specified. You can list workflow executions with a specific tag by 712 // calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and 713 // specifying a TagFilter. 714 TagList []string 715 716 // The task list to use for the decisions of the new (continued) workflow 717 // execution. 718 TaskList *TaskList 719 720 // The task priority that, if set, specifies the priority for the decision tasks 721 // for this workflow execution. This overrides the defaultTaskPriority specified 722 // when registering the workflow type. Valid values are integers that range from 723 // Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher 724 // numbers indicate higher priority. For more information about setting task 725 // priority, see Setting Task Priority 726 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 727 // in the Amazon SWF Developer Guide. 728 TaskPriority *string 729 730 // Specifies the maximum duration of decision tasks for the new workflow execution. 731 // This parameter overrides the defaultTaskStartToCloseTimout specified when 732 // registering the workflow type using RegisterWorkflowType. The duration is 733 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 734 // specify unlimited duration. A task start-to-close timeout for the new workflow 735 // execution must be specified either as a default for the workflow type or through 736 // this parameter. If neither this parameter is set nor a default task 737 // start-to-close timeout was specified at registration time then a fault is 738 // returned. 739 TaskStartToCloseTimeout *string 740 741 // The version of the workflow to start. 742 WorkflowTypeVersion *string 743} 744 745// Provides the details of the ContinueAsNewWorkflowExecutionFailed event. 746type ContinueAsNewWorkflowExecutionFailedEventAttributes struct { 747 748 // The cause of the failure. This information is generated by the system and can be 749 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 750 // decision failed because it lacked sufficient permissions. For details and 751 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 752 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 753 // in the Amazon SWF Developer Guide. 754 // 755 // This member is required. 756 Cause ContinueAsNewWorkflowExecutionFailedCause 757 758 // The ID of the DecisionTaskCompleted event corresponding to the decision task 759 // that resulted in the ContinueAsNewWorkflowExecution decision that started this 760 // execution. This information can be useful for diagnosing problems by tracing 761 // back the chain of events leading up to this event. 762 // 763 // This member is required. 764 DecisionTaskCompletedEventId int64 765} 766 767// Specifies a decision made by the decider. A decision can be one of these 768// types: 769// 770// * CancelTimer – Cancels a previously started timer and records a 771// TimerCanceled event in the history. 772// 773// * CancelWorkflowExecution – Closes the 774// workflow execution and records a WorkflowExecutionCanceled event in the 775// history. 776// 777// * CompleteWorkflowExecution – Closes the workflow execution and 778// records a WorkflowExecutionCompleted event in the history . 779// 780// * 781// ContinueAsNewWorkflowExecution – Closes the workflow execution and starts a new 782// workflow execution of the same type using the same workflow ID and a unique run 783// Id. A WorkflowExecutionContinuedAsNew event is recorded in the history. 784// 785// * 786// FailWorkflowExecution – Closes the workflow execution and records a 787// WorkflowExecutionFailed event in the history. 788// 789// * RecordMarker – Records a 790// MarkerRecorded event in the history. Markers can be used for adding custom 791// information in the history for instance to let deciders know that they don't 792// need to look at the history beyond the marker event. 793// 794// * 795// RequestCancelActivityTask – Attempts to cancel a previously scheduled activity 796// task. If the activity task was scheduled but has not been assigned to a worker, 797// then it is canceled. If the activity task was already assigned to a worker, then 798// the worker is informed that cancellation has been requested in the response to 799// RecordActivityTaskHeartbeat. 800// 801// * RequestCancelExternalWorkflowExecution – 802// Requests that a request be made to cancel the specified external workflow 803// execution and records a RequestCancelExternalWorkflowExecutionInitiated event in 804// the history. 805// 806// * ScheduleActivityTask – Schedules an activity task. 807// 808// * 809// SignalExternalWorkflowExecution – Requests a signal to be delivered to the 810// specified external workflow execution and records a 811// SignalExternalWorkflowExecutionInitiated event in the history. 812// 813// * 814// StartChildWorkflowExecution – Requests that a child workflow execution be 815// started and records a StartChildWorkflowExecutionInitiated event in the history. 816// The child workflow execution is a separate workflow execution with its own 817// history. 818// 819// * StartTimer – Starts a timer for this workflow execution and records 820// a TimerStarted event in the history. This timer fires after the specified delay 821// and record a TimerFired event. 822// 823// Access Control If you grant permission to use 824// RespondDecisionTaskCompleted, you can use IAM policies to express permissions 825// for the list of decisions returned by this action as if they were members of the 826// API. Treating decisions as a pseudo API maintains a uniform conceptual model and 827// helps keep policies readable. For details and example IAM policies, see Using 828// IAM to Manage Access to Amazon SWF Workflows 829// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 830// in the Amazon SWF Developer Guide. Decision Failure Decisions can fail for 831// several reasons 832// 833// * The ordering of decisions should follow a logical flow. Some 834// decisions might not make sense in the current context of the workflow execution 835// and therefore fails. 836// 837// * A limit on your account was reached. 838// 839// * The decision 840// lacks sufficient permissions. 841// 842// One of the following events might be added to the 843// history to indicate an error. The event attribute's cause parameter indicates 844// the cause. If cause is set to OPERATION_NOT_PERMITTED, the decision failed 845// because it lacked sufficient permissions. For details and example IAM policies, 846// see Using IAM to Manage Access to Amazon SWF Workflows 847// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 848// in the Amazon SWF Developer Guide. 849// 850// * ScheduleActivityTaskFailed – A 851// ScheduleActivityTask decision failed. This could happen if the activity type 852// specified in the decision isn't registered, is in a deprecated state, or the 853// decision isn't properly configured. 854// 855// * RequestCancelActivityTaskFailed – A 856// RequestCancelActivityTask decision failed. This could happen if there is no open 857// activity task with the specified activityId. 858// 859// * StartTimerFailed – A StartTimer 860// decision failed. This could happen if there is another open timer with the same 861// timerId. 862// 863// * CancelTimerFailed – A CancelTimer decision failed. This could happen 864// if there is no open timer with the specified timerId. 865// 866// * 867// StartChildWorkflowExecutionFailed – A StartChildWorkflowExecution decision 868// failed. This could happen if the workflow type specified isn't registered, is 869// deprecated, or the decision isn't properly configured. 870// 871// * 872// SignalExternalWorkflowExecutionFailed – A SignalExternalWorkflowExecution 873// decision failed. This could happen if the workflowID specified in the decision 874// was incorrect. 875// 876// * RequestCancelExternalWorkflowExecutionFailed – A 877// RequestCancelExternalWorkflowExecution decision failed. This could happen if the 878// workflowID specified in the decision was incorrect. 879// 880// * 881// CancelWorkflowExecutionFailed – A CancelWorkflowExecution decision failed. This 882// could happen if there is an unhandled decision task pending in the workflow 883// execution. 884// 885// * CompleteWorkflowExecutionFailed – A CompleteWorkflowExecution 886// decision failed. This could happen if there is an unhandled decision task 887// pending in the workflow execution. 888// 889// * ContinueAsNewWorkflowExecutionFailed – A 890// ContinueAsNewWorkflowExecution decision failed. This could happen if there is an 891// unhandled decision task pending in the workflow execution or the 892// ContinueAsNewWorkflowExecution decision was not configured correctly. 893// 894// * 895// FailWorkflowExecutionFailed – A FailWorkflowExecution decision failed. This 896// could happen if there is an unhandled decision task pending in the workflow 897// execution. 898// 899// The preceding error events might occur due to an error in the 900// decider logic, which might put the workflow execution in an unstable state The 901// cause field in the event structure for the error event indicates the cause of 902// the error. A workflow execution may be closed by the decider by returning one of 903// the following decisions when completing a decision task: 904// CompleteWorkflowExecution, FailWorkflowExecution, CancelWorkflowExecution and 905// ContinueAsNewWorkflowExecution. An UnhandledDecision fault is returned if a 906// workflow closing decision is specified and a signal or activity event had been 907// added to the history while the decision task was being performed by the decider. 908// Unlike the above situations which are logic issues, this fault is always 909// possible because of race conditions in a distributed system. The right action 910// here is to call RespondDecisionTaskCompleted without any decisions. This would 911// result in another decision task with these new events included in the history. 912// The decider should handle the new events and may decide to close the workflow 913// execution. How to Code a Decision You code a decision by first setting the 914// decision type field to one of the above decision values, and then set the 915// corresponding attributes field shown below: 916// 917// * 918// ScheduleActivityTaskDecisionAttributes 919// 920// * 921// RequestCancelActivityTaskDecisionAttributes 922// 923// * 924// CompleteWorkflowExecutionDecisionAttributes 925// 926// * 927// FailWorkflowExecutionDecisionAttributes 928// 929// * 930// CancelWorkflowExecutionDecisionAttributes 931// 932// * 933// ContinueAsNewWorkflowExecutionDecisionAttributes 934// 935// * 936// RecordMarkerDecisionAttributes 937// 938// * StartTimerDecisionAttributes 939// 940// * 941// CancelTimerDecisionAttributes 942// 943// * 944// SignalExternalWorkflowExecutionDecisionAttributes 945// 946// * 947// RequestCancelExternalWorkflowExecutionDecisionAttributes 948// 949// * 950// StartChildWorkflowExecutionDecisionAttributes 951type Decision struct { 952 953 // Specifies the type of the decision. 954 // 955 // This member is required. 956 DecisionType DecisionType 957 958 // Provides the details of the CancelTimer decision. It isn't set for other 959 // decision types. 960 CancelTimerDecisionAttributes *CancelTimerDecisionAttributes 961 962 // Provides the details of the CancelWorkflowExecution decision. It isn't set for 963 // other decision types. 964 CancelWorkflowExecutionDecisionAttributes *CancelWorkflowExecutionDecisionAttributes 965 966 // Provides the details of the CompleteWorkflowExecution decision. It isn't set for 967 // other decision types. 968 CompleteWorkflowExecutionDecisionAttributes *CompleteWorkflowExecutionDecisionAttributes 969 970 // Provides the details of the ContinueAsNewWorkflowExecution decision. It isn't 971 // set for other decision types. 972 ContinueAsNewWorkflowExecutionDecisionAttributes *ContinueAsNewWorkflowExecutionDecisionAttributes 973 974 // Provides the details of the FailWorkflowExecution decision. It isn't set for 975 // other decision types. 976 FailWorkflowExecutionDecisionAttributes *FailWorkflowExecutionDecisionAttributes 977 978 // Provides the details of the RecordMarker decision. It isn't set for other 979 // decision types. 980 RecordMarkerDecisionAttributes *RecordMarkerDecisionAttributes 981 982 // Provides the details of the RequestCancelActivityTask decision. It isn't set for 983 // other decision types. 984 RequestCancelActivityTaskDecisionAttributes *RequestCancelActivityTaskDecisionAttributes 985 986 // Provides the details of the RequestCancelExternalWorkflowExecution decision. It 987 // isn't set for other decision types. 988 RequestCancelExternalWorkflowExecutionDecisionAttributes *RequestCancelExternalWorkflowExecutionDecisionAttributes 989 990 // Provides the details of the ScheduleActivityTask decision. It isn't set for 991 // other decision types. 992 ScheduleActivityTaskDecisionAttributes *ScheduleActivityTaskDecisionAttributes 993 994 // Provides the details of the ScheduleLambdaFunction decision. It isn't set for 995 // other decision types. 996 ScheduleLambdaFunctionDecisionAttributes *ScheduleLambdaFunctionDecisionAttributes 997 998 // Provides the details of the SignalExternalWorkflowExecution decision. It isn't 999 // set for other decision types. 1000 SignalExternalWorkflowExecutionDecisionAttributes *SignalExternalWorkflowExecutionDecisionAttributes 1001 1002 // Provides the details of the StartChildWorkflowExecution decision. It isn't set 1003 // for other decision types. 1004 StartChildWorkflowExecutionDecisionAttributes *StartChildWorkflowExecutionDecisionAttributes 1005 1006 // Provides the details of the StartTimer decision. It isn't set for other decision 1007 // types. 1008 StartTimerDecisionAttributes *StartTimerDecisionAttributes 1009} 1010 1011// Provides the details of the DecisionTaskCompleted event. 1012type DecisionTaskCompletedEventAttributes struct { 1013 1014 // The ID of the DecisionTaskScheduled event that was recorded when this decision 1015 // task was scheduled. This information can be useful for diagnosing problems by 1016 // tracing back the chain of events leading up to this event. 1017 // 1018 // This member is required. 1019 ScheduledEventId int64 1020 1021 // The ID of the DecisionTaskStarted event recorded when this decision task was 1022 // started. This information can be useful for diagnosing problems by tracing back 1023 // the chain of events leading up to this event. 1024 // 1025 // This member is required. 1026 StartedEventId int64 1027 1028 // User defined context for the workflow execution. 1029 ExecutionContext *string 1030} 1031 1032// Provides details about the DecisionTaskScheduled event. 1033type DecisionTaskScheduledEventAttributes struct { 1034 1035 // The name of the task list in which the decision task was scheduled. 1036 // 1037 // This member is required. 1038 TaskList *TaskList 1039 1040 // The maximum duration for this decision task. The task is considered timed out if 1041 // it doesn't completed within this duration. The duration is specified in seconds, 1042 // an integer greater than or equal to 0. You can use NONE to specify unlimited 1043 // duration. 1044 StartToCloseTimeout *string 1045 1046 // A task priority that, if set, specifies the priority for this decision task. 1047 // Valid values are integers that range from Java's Integer.MIN_VALUE (-2147483648) 1048 // to Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. For 1049 // more information about setting task priority, see Setting Task Priority 1050 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 1051 // in the Amazon SWF Developer Guide. 1052 TaskPriority *string 1053} 1054 1055// Provides the details of the DecisionTaskStarted event. 1056type DecisionTaskStartedEventAttributes struct { 1057 1058 // The ID of the DecisionTaskScheduled event that was recorded when this decision 1059 // task was scheduled. This information can be useful for diagnosing problems by 1060 // tracing back the chain of events leading up to this event. 1061 // 1062 // This member is required. 1063 ScheduledEventId int64 1064 1065 // Identity of the decider making the request. This enables diagnostic tracing when 1066 // problems arise. The form of this identity is user defined. 1067 Identity *string 1068} 1069 1070// Provides the details of the DecisionTaskTimedOut event. 1071type DecisionTaskTimedOutEventAttributes struct { 1072 1073 // The ID of the DecisionTaskScheduled event that was recorded when this decision 1074 // task was scheduled. This information can be useful for diagnosing problems by 1075 // tracing back the chain of events leading up to this event. 1076 // 1077 // This member is required. 1078 ScheduledEventId int64 1079 1080 // The ID of the DecisionTaskStarted event recorded when this decision task was 1081 // started. This information can be useful for diagnosing problems by tracing back 1082 // the chain of events leading up to this event. 1083 // 1084 // This member is required. 1085 StartedEventId int64 1086 1087 // The type of timeout that expired before the decision task could be completed. 1088 // 1089 // This member is required. 1090 TimeoutType DecisionTaskTimeoutType 1091} 1092 1093// Contains the configuration settings of a domain. 1094type DomainConfiguration struct { 1095 1096 // The retention period for workflow executions in this domain. 1097 // 1098 // This member is required. 1099 WorkflowExecutionRetentionPeriodInDays *string 1100} 1101 1102// Contains general information about a domain. 1103type DomainInfo struct { 1104 1105 // The name of the domain. This name is unique within the account. 1106 // 1107 // This member is required. 1108 Name *string 1109 1110 // The status of the domain: 1111 // 1112 // * REGISTERED – The domain is properly registered and 1113 // available. You can use this domain for registering types and creating new 1114 // workflow executions. 1115 // 1116 // * DEPRECATED – The domain was deprecated using 1117 // DeprecateDomain, but is still in use. You should not create new workflow 1118 // executions in this domain. 1119 // 1120 // This member is required. 1121 Status RegistrationStatus 1122 1123 // The ARN of the domain. 1124 Arn *string 1125 1126 // The description of the domain provided through RegisterDomain. 1127 Description *string 1128} 1129 1130// Used to filter the workflow executions in visibility APIs by various time-based 1131// rules. Each parameter, if specified, defines a rule that must be satisfied by 1132// each returned query result. The parameter values are in the Unix Time format 1133// (https://en.wikipedia.org/wiki/Unix_time). For example: "oldestDate": 1134// 1325376070. 1135type ExecutionTimeFilter struct { 1136 1137 // Specifies the oldest start or close date and time to return. 1138 // 1139 // This member is required. 1140 OldestDate *time.Time 1141 1142 // Specifies the latest start or close date and time to return. 1143 LatestDate *time.Time 1144} 1145 1146// Provides the details of the ExternalWorkflowExecutionCancelRequested event. 1147type ExternalWorkflowExecutionCancelRequestedEventAttributes struct { 1148 1149 // The ID of the RequestCancelExternalWorkflowExecutionInitiated event 1150 // corresponding to the RequestCancelExternalWorkflowExecution decision to cancel 1151 // this external workflow execution. This information can be useful for diagnosing 1152 // problems by tracing back the chain of events leading up to this event. 1153 // 1154 // This member is required. 1155 InitiatedEventId int64 1156 1157 // The external workflow execution to which the cancellation request was delivered. 1158 // 1159 // This member is required. 1160 WorkflowExecution *WorkflowExecution 1161} 1162 1163// Provides the details of the ExternalWorkflowExecutionSignaled event. 1164type ExternalWorkflowExecutionSignaledEventAttributes struct { 1165 1166 // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to 1167 // the SignalExternalWorkflowExecution decision to request this signal. This 1168 // information can be useful for diagnosing problems by tracing back the chain of 1169 // events leading up to this event. 1170 // 1171 // This member is required. 1172 InitiatedEventId int64 1173 1174 // The external workflow execution that the signal was delivered to. 1175 // 1176 // This member is required. 1177 WorkflowExecution *WorkflowExecution 1178} 1179 1180// Provides the details of the FailWorkflowExecution decision. Access Control You 1181// can use IAM policies to control this decision's access to Amazon SWF resources 1182// as follows: 1183// 1184// * Use a Resource element with the domain name to limit the action 1185// to only specified domains. 1186// 1187// * Use an Action element to allow or deny permission 1188// to call this action. 1189// 1190// * You cannot use an IAM policy to constrain this action's 1191// parameters. 1192// 1193// If the caller doesn't have sufficient permissions to invoke the 1194// action, or the parameter values fall outside the specified constraints, the 1195// action fails. The associated event attribute's cause parameter is set to 1196// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 1197// Manage Access to Amazon SWF Workflows 1198// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1199// in the Amazon SWF Developer Guide. 1200type FailWorkflowExecutionDecisionAttributes struct { 1201 1202 // Details of the failure. 1203 Details *string 1204 1205 // A descriptive reason for the failure that may help in diagnostics. 1206 Reason *string 1207} 1208 1209// Provides the details of the FailWorkflowExecutionFailed event. 1210type FailWorkflowExecutionFailedEventAttributes struct { 1211 1212 // The cause of the failure. This information is generated by the system and can be 1213 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 1214 // decision failed because it lacked sufficient permissions. For details and 1215 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 1216 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1217 // in the Amazon SWF Developer Guide. 1218 // 1219 // This member is required. 1220 Cause FailWorkflowExecutionFailedCause 1221 1222 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1223 // that resulted in the FailWorkflowExecution decision to fail this execution. This 1224 // information can be useful for diagnosing problems by tracing back the chain of 1225 // events leading up to this event. 1226 // 1227 // This member is required. 1228 DecisionTaskCompletedEventId int64 1229} 1230 1231// Event within a workflow execution. A history event can be one of these types: 1232// 1233// * 1234// ActivityTaskCancelRequested – A RequestCancelActivityTask decision was received 1235// by the system. 1236// 1237// * ActivityTaskCanceled – The activity task was successfully 1238// canceled. 1239// 1240// * ActivityTaskCompleted – An activity worker successfully completed 1241// an activity task by calling RespondActivityTaskCompleted. 1242// 1243// * ActivityTaskFailed 1244// – An activity worker failed an activity task by calling 1245// RespondActivityTaskFailed. 1246// 1247// * ActivityTaskScheduled – An activity task was 1248// scheduled for execution. 1249// 1250// * ActivityTaskStarted – The scheduled activity task 1251// was dispatched to a worker. 1252// 1253// * ActivityTaskTimedOut – The activity task timed 1254// out. 1255// 1256// * CancelTimerFailed – Failed to process CancelTimer decision. This happens 1257// when the decision isn't configured properly, for example no timer exists with 1258// the specified timer Id. 1259// 1260// * CancelWorkflowExecutionFailed – A request to cancel a 1261// workflow execution failed. 1262// 1263// * ChildWorkflowExecutionCanceled – A child workflow 1264// execution, started by this workflow execution, was canceled and closed. 1265// 1266// * 1267// ChildWorkflowExecutionCompleted – A child workflow execution, started by this 1268// workflow execution, completed successfully and was closed. 1269// 1270// * 1271// ChildWorkflowExecutionFailed – A child workflow execution, started by this 1272// workflow execution, failed to complete successfully and was closed. 1273// 1274// * 1275// ChildWorkflowExecutionStarted – A child workflow execution was successfully 1276// started. 1277// 1278// * ChildWorkflowExecutionTerminated – A child workflow execution, 1279// started by this workflow execution, was terminated. 1280// 1281// * 1282// ChildWorkflowExecutionTimedOut – A child workflow execution, started by this 1283// workflow execution, timed out and was closed. 1284// 1285// * CompleteWorkflowExecutionFailed 1286// – The workflow execution failed to complete. 1287// 1288// * 1289// ContinueAsNewWorkflowExecutionFailed – The workflow execution failed to complete 1290// after being continued as a new workflow execution. 1291// 1292// * DecisionTaskCompleted – 1293// The decider successfully completed a decision task by calling 1294// RespondDecisionTaskCompleted. 1295// 1296// * DecisionTaskScheduled – A decision task was 1297// scheduled for the workflow execution. 1298// 1299// * DecisionTaskStarted – The decision task 1300// was dispatched to a decider. 1301// 1302// * DecisionTaskTimedOut – The decision task timed 1303// out. 1304// 1305// * ExternalWorkflowExecutionCancelRequested – Request to cancel an external 1306// workflow execution was successfully delivered to the target execution. 1307// 1308// * 1309// ExternalWorkflowExecutionSignaled – A signal, requested by this workflow 1310// execution, was successfully delivered to the target external workflow 1311// execution. 1312// 1313// * FailWorkflowExecutionFailed – A request to mark a workflow 1314// execution as failed, itself failed. 1315// 1316// * MarkerRecorded – A marker was recorded in 1317// the workflow history as the result of a RecordMarker decision. 1318// 1319// * 1320// RecordMarkerFailed – A RecordMarker decision was returned as failed. 1321// 1322// * 1323// RequestCancelActivityTaskFailed – Failed to process RequestCancelActivityTask 1324// decision. This happens when the decision isn't configured properly. 1325// 1326// * 1327// RequestCancelExternalWorkflowExecutionFailed – Request to cancel an external 1328// workflow execution failed. 1329// 1330// * RequestCancelExternalWorkflowExecutionInitiated – 1331// A request was made to request the cancellation of an external workflow 1332// execution. 1333// 1334// * ScheduleActivityTaskFailed – Failed to process 1335// ScheduleActivityTask decision. This happens when the decision isn't configured 1336// properly, for example the activity type specified isn't registered. 1337// 1338// * 1339// SignalExternalWorkflowExecutionFailed – The request to signal an external 1340// workflow execution failed. 1341// 1342// * SignalExternalWorkflowExecutionInitiated – A 1343// request to signal an external workflow was made. 1344// 1345// * StartActivityTaskFailed – A 1346// scheduled activity task failed to start. 1347// 1348// * StartChildWorkflowExecutionFailed – 1349// Failed to process StartChildWorkflowExecution decision. This happens when the 1350// decision isn't configured properly, for example the workflow type specified 1351// isn't registered. 1352// 1353// * StartChildWorkflowExecutionInitiated – A request was made 1354// to start a child workflow execution. 1355// 1356// * StartTimerFailed – Failed to process 1357// StartTimer decision. This happens when the decision isn't configured properly, 1358// for example a timer already exists with the specified timer Id. 1359// 1360// * TimerCanceled 1361// – A timer, previously started for this workflow execution, was successfully 1362// canceled. 1363// 1364// * TimerFired – A timer, previously started for this workflow 1365// execution, fired. 1366// 1367// * TimerStarted – A timer was started for the workflow 1368// execution due to a StartTimer decision. 1369// 1370// * WorkflowExecutionCancelRequested – A 1371// request to cancel this workflow execution was made. 1372// 1373// * WorkflowExecutionCanceled 1374// – The workflow execution was successfully canceled and closed. 1375// 1376// * 1377// WorkflowExecutionCompleted – The workflow execution was closed due to successful 1378// completion. 1379// 1380// * WorkflowExecutionContinuedAsNew – The workflow execution was 1381// closed and a new execution of the same type was created with the same 1382// workflowId. 1383// 1384// * WorkflowExecutionFailed – The workflow execution closed due to a 1385// failure. 1386// 1387// * WorkflowExecutionSignaled – An external signal was received for the 1388// workflow execution. 1389// 1390// * WorkflowExecutionStarted – The workflow execution was 1391// started. 1392// 1393// * WorkflowExecutionTerminated – The workflow execution was 1394// terminated. 1395// 1396// * WorkflowExecutionTimedOut – The workflow execution was closed 1397// because a time out was exceeded. 1398type HistoryEvent struct { 1399 1400 // The system generated ID of the event. This ID uniquely identifies the event with 1401 // in the workflow execution history. 1402 // 1403 // This member is required. 1404 EventId int64 1405 1406 // The date and time when the event occurred. 1407 // 1408 // This member is required. 1409 EventTimestamp *time.Time 1410 1411 // The type of the history event. 1412 // 1413 // This member is required. 1414 EventType EventType 1415 1416 // If the event is of type ActivityTaskcancelRequested then this member is set and 1417 // provides detailed information about the event. It isn't set for other event 1418 // types. 1419 ActivityTaskCancelRequestedEventAttributes *ActivityTaskCancelRequestedEventAttributes 1420 1421 // If the event is of type ActivityTaskCanceled then this member is set and 1422 // provides detailed information about the event. It isn't set for other event 1423 // types. 1424 ActivityTaskCanceledEventAttributes *ActivityTaskCanceledEventAttributes 1425 1426 // If the event is of type ActivityTaskCompleted then this member is set and 1427 // provides detailed information about the event. It isn't set for other event 1428 // types. 1429 ActivityTaskCompletedEventAttributes *ActivityTaskCompletedEventAttributes 1430 1431 // If the event is of type ActivityTaskFailed then this member is set and provides 1432 // detailed information about the event. It isn't set for other event types. 1433 ActivityTaskFailedEventAttributes *ActivityTaskFailedEventAttributes 1434 1435 // If the event is of type ActivityTaskScheduled then this member is set and 1436 // provides detailed information about the event. It isn't set for other event 1437 // types. 1438 ActivityTaskScheduledEventAttributes *ActivityTaskScheduledEventAttributes 1439 1440 // If the event is of type ActivityTaskStarted then this member is set and provides 1441 // detailed information about the event. It isn't set for other event types. 1442 ActivityTaskStartedEventAttributes *ActivityTaskStartedEventAttributes 1443 1444 // If the event is of type ActivityTaskTimedOut then this member is set and 1445 // provides detailed information about the event. It isn't set for other event 1446 // types. 1447 ActivityTaskTimedOutEventAttributes *ActivityTaskTimedOutEventAttributes 1448 1449 // If the event is of type CancelTimerFailed then this member is set and provides 1450 // detailed information about the event. It isn't set for other event types. 1451 CancelTimerFailedEventAttributes *CancelTimerFailedEventAttributes 1452 1453 // If the event is of type CancelWorkflowExecutionFailed then this member is set 1454 // and provides detailed information about the event. It isn't set for other event 1455 // types. 1456 CancelWorkflowExecutionFailedEventAttributes *CancelWorkflowExecutionFailedEventAttributes 1457 1458 // If the event is of type ChildWorkflowExecutionCanceled then this member is set 1459 // and provides detailed information about the event. It isn't set for other event 1460 // types. 1461 ChildWorkflowExecutionCanceledEventAttributes *ChildWorkflowExecutionCanceledEventAttributes 1462 1463 // If the event is of type ChildWorkflowExecutionCompleted then this member is set 1464 // and provides detailed information about the event. It isn't set for other event 1465 // types. 1466 ChildWorkflowExecutionCompletedEventAttributes *ChildWorkflowExecutionCompletedEventAttributes 1467 1468 // If the event is of type ChildWorkflowExecutionFailed then this member is set and 1469 // provides detailed information about the event. It isn't set for other event 1470 // types. 1471 ChildWorkflowExecutionFailedEventAttributes *ChildWorkflowExecutionFailedEventAttributes 1472 1473 // If the event is of type ChildWorkflowExecutionStarted then this member is set 1474 // and provides detailed information about the event. It isn't set for other event 1475 // types. 1476 ChildWorkflowExecutionStartedEventAttributes *ChildWorkflowExecutionStartedEventAttributes 1477 1478 // If the event is of type ChildWorkflowExecutionTerminated then this member is set 1479 // and provides detailed information about the event. It isn't set for other event 1480 // types. 1481 ChildWorkflowExecutionTerminatedEventAttributes *ChildWorkflowExecutionTerminatedEventAttributes 1482 1483 // If the event is of type ChildWorkflowExecutionTimedOut then this member is set 1484 // and provides detailed information about the event. It isn't set for other event 1485 // types. 1486 ChildWorkflowExecutionTimedOutEventAttributes *ChildWorkflowExecutionTimedOutEventAttributes 1487 1488 // If the event is of type CompleteWorkflowExecutionFailed then this member is set 1489 // and provides detailed information about the event. It isn't set for other event 1490 // types. 1491 CompleteWorkflowExecutionFailedEventAttributes *CompleteWorkflowExecutionFailedEventAttributes 1492 1493 // If the event is of type ContinueAsNewWorkflowExecutionFailed then this member is 1494 // set and provides detailed information about the event. It isn't set for other 1495 // event types. 1496 ContinueAsNewWorkflowExecutionFailedEventAttributes *ContinueAsNewWorkflowExecutionFailedEventAttributes 1497 1498 // If the event is of type DecisionTaskCompleted then this member is set and 1499 // provides detailed information about the event. It isn't set for other event 1500 // types. 1501 DecisionTaskCompletedEventAttributes *DecisionTaskCompletedEventAttributes 1502 1503 // If the event is of type DecisionTaskScheduled then this member is set and 1504 // provides detailed information about the event. It isn't set for other event 1505 // types. 1506 DecisionTaskScheduledEventAttributes *DecisionTaskScheduledEventAttributes 1507 1508 // If the event is of type DecisionTaskStarted then this member is set and provides 1509 // detailed information about the event. It isn't set for other event types. 1510 DecisionTaskStartedEventAttributes *DecisionTaskStartedEventAttributes 1511 1512 // If the event is of type DecisionTaskTimedOut then this member is set and 1513 // provides detailed information about the event. It isn't set for other event 1514 // types. 1515 DecisionTaskTimedOutEventAttributes *DecisionTaskTimedOutEventAttributes 1516 1517 // If the event is of type ExternalWorkflowExecutionCancelRequested then this 1518 // member is set and provides detailed information about the event. It isn't set 1519 // for other event types. 1520 ExternalWorkflowExecutionCancelRequestedEventAttributes *ExternalWorkflowExecutionCancelRequestedEventAttributes 1521 1522 // If the event is of type ExternalWorkflowExecutionSignaled then this member is 1523 // set and provides detailed information about the event. It isn't set for other 1524 // event types. 1525 ExternalWorkflowExecutionSignaledEventAttributes *ExternalWorkflowExecutionSignaledEventAttributes 1526 1527 // If the event is of type FailWorkflowExecutionFailed then this member is set and 1528 // provides detailed information about the event. It isn't set for other event 1529 // types. 1530 FailWorkflowExecutionFailedEventAttributes *FailWorkflowExecutionFailedEventAttributes 1531 1532 // Provides the details of the LambdaFunctionCompleted event. It isn't set for 1533 // other event types. 1534 LambdaFunctionCompletedEventAttributes *LambdaFunctionCompletedEventAttributes 1535 1536 // Provides the details of the LambdaFunctionFailed event. It isn't set for other 1537 // event types. 1538 LambdaFunctionFailedEventAttributes *LambdaFunctionFailedEventAttributes 1539 1540 // Provides the details of the LambdaFunctionScheduled event. It isn't set for 1541 // other event types. 1542 LambdaFunctionScheduledEventAttributes *LambdaFunctionScheduledEventAttributes 1543 1544 // Provides the details of the LambdaFunctionStarted event. It isn't set for other 1545 // event types. 1546 LambdaFunctionStartedEventAttributes *LambdaFunctionStartedEventAttributes 1547 1548 // Provides the details of the LambdaFunctionTimedOut event. It isn't set for other 1549 // event types. 1550 LambdaFunctionTimedOutEventAttributes *LambdaFunctionTimedOutEventAttributes 1551 1552 // If the event is of type MarkerRecorded then this member is set and provides 1553 // detailed information about the event. It isn't set for other event types. 1554 MarkerRecordedEventAttributes *MarkerRecordedEventAttributes 1555 1556 // If the event is of type DecisionTaskFailed then this member is set and provides 1557 // detailed information about the event. It isn't set for other event types. 1558 RecordMarkerFailedEventAttributes *RecordMarkerFailedEventAttributes 1559 1560 // If the event is of type RequestCancelActivityTaskFailed then this member is set 1561 // and provides detailed information about the event. It isn't set for other event 1562 // types. 1563 RequestCancelActivityTaskFailedEventAttributes *RequestCancelActivityTaskFailedEventAttributes 1564 1565 // If the event is of type RequestCancelExternalWorkflowExecutionFailed then this 1566 // member is set and provides detailed information about the event. It isn't set 1567 // for other event types. 1568 RequestCancelExternalWorkflowExecutionFailedEventAttributes *RequestCancelExternalWorkflowExecutionFailedEventAttributes 1569 1570 // If the event is of type RequestCancelExternalWorkflowExecutionInitiated then 1571 // this member is set and provides detailed information about the event. It isn't 1572 // set for other event types. 1573 RequestCancelExternalWorkflowExecutionInitiatedEventAttributes *RequestCancelExternalWorkflowExecutionInitiatedEventAttributes 1574 1575 // If the event is of type ScheduleActivityTaskFailed then this member is set and 1576 // provides detailed information about the event. It isn't set for other event 1577 // types. 1578 ScheduleActivityTaskFailedEventAttributes *ScheduleActivityTaskFailedEventAttributes 1579 1580 // Provides the details of the ScheduleLambdaFunctionFailed event. It isn't set for 1581 // other event types. 1582 ScheduleLambdaFunctionFailedEventAttributes *ScheduleLambdaFunctionFailedEventAttributes 1583 1584 // If the event is of type SignalExternalWorkflowExecutionFailed then this member 1585 // is set and provides detailed information about the event. It isn't set for other 1586 // event types. 1587 SignalExternalWorkflowExecutionFailedEventAttributes *SignalExternalWorkflowExecutionFailedEventAttributes 1588 1589 // If the event is of type SignalExternalWorkflowExecutionInitiated then this 1590 // member is set and provides detailed information about the event. It isn't set 1591 // for other event types. 1592 SignalExternalWorkflowExecutionInitiatedEventAttributes *SignalExternalWorkflowExecutionInitiatedEventAttributes 1593 1594 // If the event is of type StartChildWorkflowExecutionFailed then this member is 1595 // set and provides detailed information about the event. It isn't set for other 1596 // event types. 1597 StartChildWorkflowExecutionFailedEventAttributes *StartChildWorkflowExecutionFailedEventAttributes 1598 1599 // If the event is of type StartChildWorkflowExecutionInitiated then this member is 1600 // set and provides detailed information about the event. It isn't set for other 1601 // event types. 1602 StartChildWorkflowExecutionInitiatedEventAttributes *StartChildWorkflowExecutionInitiatedEventAttributes 1603 1604 // Provides the details of the StartLambdaFunctionFailed event. It isn't set for 1605 // other event types. 1606 StartLambdaFunctionFailedEventAttributes *StartLambdaFunctionFailedEventAttributes 1607 1608 // If the event is of type StartTimerFailed then this member is set and provides 1609 // detailed information about the event. It isn't set for other event types. 1610 StartTimerFailedEventAttributes *StartTimerFailedEventAttributes 1611 1612 // If the event is of type TimerCanceled then this member is set and provides 1613 // detailed information about the event. It isn't set for other event types. 1614 TimerCanceledEventAttributes *TimerCanceledEventAttributes 1615 1616 // If the event is of type TimerFired then this member is set and provides detailed 1617 // information about the event. It isn't set for other event types. 1618 TimerFiredEventAttributes *TimerFiredEventAttributes 1619 1620 // If the event is of type TimerStarted then this member is set and provides 1621 // detailed information about the event. It isn't set for other event types. 1622 TimerStartedEventAttributes *TimerStartedEventAttributes 1623 1624 // If the event is of type WorkflowExecutionCancelRequested then this member is set 1625 // and provides detailed information about the event. It isn't set for other event 1626 // types. 1627 WorkflowExecutionCancelRequestedEventAttributes *WorkflowExecutionCancelRequestedEventAttributes 1628 1629 // If the event is of type WorkflowExecutionCanceled then this member is set and 1630 // provides detailed information about the event. It isn't set for other event 1631 // types. 1632 WorkflowExecutionCanceledEventAttributes *WorkflowExecutionCanceledEventAttributes 1633 1634 // If the event is of type WorkflowExecutionCompleted then this member is set and 1635 // provides detailed information about the event. It isn't set for other event 1636 // types. 1637 WorkflowExecutionCompletedEventAttributes *WorkflowExecutionCompletedEventAttributes 1638 1639 // If the event is of type WorkflowExecutionContinuedAsNew then this member is set 1640 // and provides detailed information about the event. It isn't set for other event 1641 // types. 1642 WorkflowExecutionContinuedAsNewEventAttributes *WorkflowExecutionContinuedAsNewEventAttributes 1643 1644 // If the event is of type WorkflowExecutionFailed then this member is set and 1645 // provides detailed information about the event. It isn't set for other event 1646 // types. 1647 WorkflowExecutionFailedEventAttributes *WorkflowExecutionFailedEventAttributes 1648 1649 // If the event is of type WorkflowExecutionSignaled then this member is set and 1650 // provides detailed information about the event. It isn't set for other event 1651 // types. 1652 WorkflowExecutionSignaledEventAttributes *WorkflowExecutionSignaledEventAttributes 1653 1654 // If the event is of type WorkflowExecutionStarted then this member is set and 1655 // provides detailed information about the event. It isn't set for other event 1656 // types. 1657 WorkflowExecutionStartedEventAttributes *WorkflowExecutionStartedEventAttributes 1658 1659 // If the event is of type WorkflowExecutionTerminated then this member is set and 1660 // provides detailed information about the event. It isn't set for other event 1661 // types. 1662 WorkflowExecutionTerminatedEventAttributes *WorkflowExecutionTerminatedEventAttributes 1663 1664 // If the event is of type WorkflowExecutionTimedOut then this member is set and 1665 // provides detailed information about the event. It isn't set for other event 1666 // types. 1667 WorkflowExecutionTimedOutEventAttributes *WorkflowExecutionTimedOutEventAttributes 1668} 1669 1670// Provides the details of the LambdaFunctionCompleted event. It isn't set for 1671// other event types. 1672type LambdaFunctionCompletedEventAttributes struct { 1673 1674 // The ID of the LambdaFunctionScheduled event that was recorded when this Lambda 1675 // task was scheduled. To help diagnose issues, use this information to trace back 1676 // the chain of events leading up to this event. 1677 // 1678 // This member is required. 1679 ScheduledEventId int64 1680 1681 // The ID of the LambdaFunctionStarted event recorded when this activity task 1682 // started. To help diagnose issues, use this information to trace back the chain 1683 // of events leading up to this event. 1684 // 1685 // This member is required. 1686 StartedEventId int64 1687 1688 // The results of the Lambda task. 1689 Result *string 1690} 1691 1692// Provides the details of the LambdaFunctionFailed event. It isn't set for other 1693// event types. 1694type LambdaFunctionFailedEventAttributes struct { 1695 1696 // The ID of the LambdaFunctionScheduled event that was recorded when this activity 1697 // task was scheduled. To help diagnose issues, use this information to trace back 1698 // the chain of events leading up to this event. 1699 // 1700 // This member is required. 1701 ScheduledEventId int64 1702 1703 // The ID of the LambdaFunctionStarted event recorded when this activity task 1704 // started. To help diagnose issues, use this information to trace back the chain 1705 // of events leading up to this event. 1706 // 1707 // This member is required. 1708 StartedEventId int64 1709 1710 // The details of the failure. 1711 Details *string 1712 1713 // The reason provided for the failure. 1714 Reason *string 1715} 1716 1717// Provides the details of the LambdaFunctionScheduled event. It isn't set for 1718// other event types. 1719type LambdaFunctionScheduledEventAttributes struct { 1720 1721 // The ID of the LambdaFunctionCompleted event corresponding to the decision that 1722 // resulted in scheduling this activity task. To help diagnose issues, use this 1723 // information to trace back the chain of events leading up to this event. 1724 // 1725 // This member is required. 1726 DecisionTaskCompletedEventId int64 1727 1728 // The unique ID of the Lambda task. 1729 // 1730 // This member is required. 1731 Id *string 1732 1733 // The name of the Lambda function. 1734 // 1735 // This member is required. 1736 Name *string 1737 1738 // Data attached to the event that the decider can use in subsequent workflow 1739 // tasks. This data isn't sent to the Lambda task. 1740 Control *string 1741 1742 // The input provided to the Lambda task. 1743 Input *string 1744 1745 // The maximum amount of time a worker can take to process the Lambda task. 1746 StartToCloseTimeout *string 1747} 1748 1749// Provides the details of the LambdaFunctionStarted event. It isn't set for other 1750// event types. 1751type LambdaFunctionStartedEventAttributes struct { 1752 1753 // The ID of the LambdaFunctionScheduled event that was recorded when this activity 1754 // task was scheduled. To help diagnose issues, use this information to trace back 1755 // the chain of events leading up to this event. 1756 // 1757 // This member is required. 1758 ScheduledEventId int64 1759} 1760 1761// Provides details of the LambdaFunctionTimedOut event. 1762type LambdaFunctionTimedOutEventAttributes struct { 1763 1764 // The ID of the LambdaFunctionScheduled event that was recorded when this activity 1765 // task was scheduled. To help diagnose issues, use this information to trace back 1766 // the chain of events leading up to this event. 1767 // 1768 // This member is required. 1769 ScheduledEventId int64 1770 1771 // The ID of the ActivityTaskStarted event that was recorded when this activity 1772 // task started. To help diagnose issues, use this information to trace back the 1773 // chain of events leading up to this event. 1774 // 1775 // This member is required. 1776 StartedEventId int64 1777 1778 // The type of the timeout that caused this event. 1779 TimeoutType LambdaFunctionTimeoutType 1780} 1781 1782// Provides the details of the MarkerRecorded event. 1783type MarkerRecordedEventAttributes struct { 1784 1785 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1786 // that resulted in the RecordMarker decision that requested this marker. This 1787 // information can be useful for diagnosing problems by tracing back the chain of 1788 // events leading up to this event. 1789 // 1790 // This member is required. 1791 DecisionTaskCompletedEventId int64 1792 1793 // The name of the marker. 1794 // 1795 // This member is required. 1796 MarkerName *string 1797 1798 // The details of the marker. 1799 Details *string 1800} 1801 1802// Provides the details of the RecordMarker decision. Access Control You can use 1803// IAM policies to control this decision's access to Amazon SWF resources as 1804// follows: 1805// 1806// * Use a Resource element with the domain name to limit the action to 1807// only specified domains. 1808// 1809// * Use an Action element to allow or deny permission to 1810// call this action. 1811// 1812// * You cannot use an IAM policy to constrain this action's 1813// parameters. 1814// 1815// If the caller doesn't have sufficient permissions to invoke the 1816// action, or the parameter values fall outside the specified constraints, the 1817// action fails. The associated event attribute's cause parameter is set to 1818// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 1819// Manage Access to Amazon SWF Workflows 1820// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1821// in the Amazon SWF Developer Guide. 1822type RecordMarkerDecisionAttributes struct { 1823 1824 // The name of the marker. 1825 // 1826 // This member is required. 1827 MarkerName *string 1828 1829 // The details of the marker. 1830 Details *string 1831} 1832 1833// Provides the details of the RecordMarkerFailed event. 1834type RecordMarkerFailedEventAttributes struct { 1835 1836 // The cause of the failure. This information is generated by the system and can be 1837 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 1838 // decision failed because it lacked sufficient permissions. For details and 1839 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 1840 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1841 // in the Amazon SWF Developer Guide. 1842 // 1843 // This member is required. 1844 Cause RecordMarkerFailedCause 1845 1846 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1847 // that resulted in the RecordMarkerFailed decision for this cancellation request. 1848 // This information can be useful for diagnosing problems by tracing back the chain 1849 // of events leading up to this event. 1850 // 1851 // This member is required. 1852 DecisionTaskCompletedEventId int64 1853 1854 // The marker's name. 1855 // 1856 // This member is required. 1857 MarkerName *string 1858} 1859 1860// Provides the details of the RequestCancelActivityTask decision. Access Control 1861// You can use IAM policies to control this decision's access to Amazon SWF 1862// resources as follows: 1863// 1864// * Use a Resource element with the domain name to limit 1865// the action to only specified domains. 1866// 1867// * Use an Action element to allow or deny 1868// permission to call this action. 1869// 1870// * You cannot use an IAM policy to constrain 1871// this action's parameters. 1872// 1873// If the caller doesn't have sufficient permissions to 1874// invoke the action, or the parameter values fall outside the specified 1875// constraints, the action fails. The associated event attribute's cause parameter 1876// is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see 1877// Using IAM to Manage Access to Amazon SWF Workflows 1878// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1879// in the Amazon SWF Developer Guide. 1880type RequestCancelActivityTaskDecisionAttributes struct { 1881 1882 // The activityId of the activity task to be canceled. 1883 // 1884 // This member is required. 1885 ActivityId *string 1886} 1887 1888// Provides the details of the RequestCancelActivityTaskFailed event. 1889type RequestCancelActivityTaskFailedEventAttributes struct { 1890 1891 // The activityId provided in the RequestCancelActivityTask decision that failed. 1892 // 1893 // This member is required. 1894 ActivityId *string 1895 1896 // The cause of the failure. This information is generated by the system and can be 1897 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 1898 // decision failed because it lacked sufficient permissions. For details and 1899 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 1900 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1901 // in the Amazon SWF Developer Guide. 1902 // 1903 // This member is required. 1904 Cause RequestCancelActivityTaskFailedCause 1905 1906 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1907 // that resulted in the RequestCancelActivityTask decision for this cancellation 1908 // request. This information can be useful for diagnosing problems by tracing back 1909 // the chain of events leading up to this event. 1910 // 1911 // This member is required. 1912 DecisionTaskCompletedEventId int64 1913} 1914 1915// Provides the details of the RequestCancelExternalWorkflowExecution decision. 1916// Access Control You can use IAM policies to control this decision's access to 1917// Amazon SWF resources as follows: 1918// 1919// * Use a Resource element with the domain name 1920// to limit the action to only specified domains. 1921// 1922// * Use an Action element to allow 1923// or deny permission to call this action. 1924// 1925// * You cannot use an IAM policy to 1926// constrain this action's parameters. 1927// 1928// If the caller doesn't have sufficient 1929// permissions to invoke the action, or the parameter values fall outside the 1930// specified constraints, the action fails. The associated event attribute's cause 1931// parameter is set to OPERATION_NOT_PERMITTED. For details and example IAM 1932// policies, see Using IAM to Manage Access to Amazon SWF Workflows 1933// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1934// in the Amazon SWF Developer Guide. 1935type RequestCancelExternalWorkflowExecutionDecisionAttributes struct { 1936 1937 // The workflowId of the external workflow execution to cancel. 1938 // 1939 // This member is required. 1940 WorkflowId *string 1941 1942 // The data attached to the event that can be used by the decider in subsequent 1943 // workflow tasks. 1944 Control *string 1945 1946 // The runId of the external workflow execution to cancel. 1947 RunId *string 1948} 1949 1950// Provides the details of the RequestCancelExternalWorkflowExecutionFailed event. 1951type RequestCancelExternalWorkflowExecutionFailedEventAttributes struct { 1952 1953 // The cause of the failure. This information is generated by the system and can be 1954 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 1955 // decision failed because it lacked sufficient permissions. For details and 1956 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 1957 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 1958 // in the Amazon SWF Developer Guide. 1959 // 1960 // This member is required. 1961 Cause RequestCancelExternalWorkflowExecutionFailedCause 1962 1963 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1964 // that resulted in the RequestCancelExternalWorkflowExecution decision for this 1965 // cancellation request. This information can be useful for diagnosing problems by 1966 // tracing back the chain of events leading up to this event. 1967 // 1968 // This member is required. 1969 DecisionTaskCompletedEventId int64 1970 1971 // The ID of the RequestCancelExternalWorkflowExecutionInitiated event 1972 // corresponding to the RequestCancelExternalWorkflowExecution decision to cancel 1973 // this external workflow execution. This information can be useful for diagnosing 1974 // problems by tracing back the chain of events leading up to this event. 1975 // 1976 // This member is required. 1977 InitiatedEventId int64 1978 1979 // The workflowId of the external workflow to which the cancel request was to be 1980 // delivered. 1981 // 1982 // This member is required. 1983 WorkflowId *string 1984 1985 // The data attached to the event that the decider can use in subsequent workflow 1986 // tasks. This data isn't sent to the workflow execution. 1987 Control *string 1988 1989 // The runId of the external workflow execution. 1990 RunId *string 1991} 1992 1993// Provides the details of the RequestCancelExternalWorkflowExecutionInitiated 1994// event. 1995type RequestCancelExternalWorkflowExecutionInitiatedEventAttributes struct { 1996 1997 // The ID of the DecisionTaskCompleted event corresponding to the decision task 1998 // that resulted in the RequestCancelExternalWorkflowExecution decision for this 1999 // cancellation request. This information can be useful for diagnosing problems by 2000 // tracing back the chain of events leading up to this event. 2001 // 2002 // This member is required. 2003 DecisionTaskCompletedEventId int64 2004 2005 // The workflowId of the external workflow execution to be canceled. 2006 // 2007 // This member is required. 2008 WorkflowId *string 2009 2010 // Data attached to the event that can be used by the decider in subsequent 2011 // workflow tasks. 2012 Control *string 2013 2014 // The runId of the external workflow execution to be canceled. 2015 RunId *string 2016} 2017 2018// Tags are key-value pairs that can be associated with Amazon SWF state machines 2019// and activities. Tags may only contain unicode letters, digits, whitespace, or 2020// these symbols: _ . : / = + - @. 2021type ResourceTag struct { 2022 2023 // The key of a tag. 2024 // 2025 // This member is required. 2026 Key *string 2027 2028 // The value of a tag. 2029 Value *string 2030} 2031 2032// Provides the details of the ScheduleActivityTask decision. Access Control You 2033// can use IAM policies to control this decision's access to Amazon SWF resources 2034// as follows: 2035// 2036// * Use a Resource element with the domain name to limit the action 2037// to only specified domains. 2038// 2039// * Use an Action element to allow or deny permission 2040// to call this action. 2041// 2042// * Constrain the following parameters by using a Condition 2043// element with the appropriate keys. 2044// 2045// * activityType.name – String constraint. The 2046// key is swf:activityType.name. 2047// 2048// * activityType.version – String constraint. The 2049// key is swf:activityType.version. 2050// 2051// * taskList – String constraint. The key is 2052// swf:taskList.name. 2053// 2054// If the caller doesn't have sufficient permissions to invoke 2055// the action, or the parameter values fall outside the specified constraints, the 2056// action fails. The associated event attribute's cause parameter is set to 2057// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 2058// Manage Access to Amazon SWF Workflows 2059// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2060// in the Amazon SWF Developer Guide. 2061type ScheduleActivityTaskDecisionAttributes struct { 2062 2063 // The activityId of the activity task. The specified string must not start or end 2064 // with whitespace. It must not contain a : (colon), / (slash), | (vertical bar), 2065 // or any control characters (\u0000-\u001f | \u007f-\u009f). Also, it must not 2066 // contain the literal string arn. 2067 // 2068 // This member is required. 2069 ActivityId *string 2070 2071 // The type of the activity task to schedule. 2072 // 2073 // This member is required. 2074 ActivityType *ActivityType 2075 2076 // Data attached to the event that can be used by the decider in subsequent 2077 // workflow tasks. This data isn't sent to the activity. 2078 Control *string 2079 2080 // If set, specifies the maximum time before which a worker processing a task of 2081 // this type must report progress by calling RecordActivityTaskHeartbeat. If the 2082 // timeout is exceeded, the activity task is automatically timed out. If the worker 2083 // subsequently attempts to record a heartbeat or returns a result, it is ignored. 2084 // This overrides the default heartbeat timeout specified when registering the 2085 // activity type using RegisterActivityType. The duration is specified in seconds, 2086 // an integer greater than or equal to 0. You can use NONE to specify unlimited 2087 // duration. 2088 HeartbeatTimeout *string 2089 2090 // The input provided to the activity task. 2091 Input *string 2092 2093 // The maximum duration for this activity task. The duration is specified in 2094 // seconds, an integer greater than or equal to 0. You can use NONE to specify 2095 // unlimited duration. A schedule-to-close timeout for this activity task must be 2096 // specified either as a default for the activity type or through this field. If 2097 // neither this field is set nor a default schedule-to-close timeout was specified 2098 // at registration time then a fault is returned. 2099 ScheduleToCloseTimeout *string 2100 2101 // If set, specifies the maximum duration the activity task can wait to be assigned 2102 // to a worker. This overrides the default schedule-to-start timeout specified when 2103 // registering the activity type using RegisterActivityType. The duration is 2104 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 2105 // specify unlimited duration. A schedule-to-start timeout for this activity task 2106 // must be specified either as a default for the activity type or through this 2107 // field. If neither this field is set nor a default schedule-to-start timeout was 2108 // specified at registration time then a fault is returned. 2109 ScheduleToStartTimeout *string 2110 2111 // If set, specifies the maximum duration a worker may take to process this 2112 // activity task. This overrides the default start-to-close timeout specified when 2113 // registering the activity type using RegisterActivityType. The duration is 2114 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 2115 // specify unlimited duration. A start-to-close timeout for this activity task must 2116 // be specified either as a default for the activity type or through this field. If 2117 // neither this field is set nor a default start-to-close timeout was specified at 2118 // registration time then a fault is returned. 2119 StartToCloseTimeout *string 2120 2121 // If set, specifies the name of the task list in which to schedule the activity 2122 // task. If not specified, the defaultTaskList registered with the activity type is 2123 // used. A task list for this activity task must be specified either as a default 2124 // for the activity type or through this field. If neither this field is set nor a 2125 // default task list was specified at registration time then a fault is returned. 2126 // The specified string must not start or end with whitespace. It must not contain 2127 // a : (colon), / (slash), | (vertical bar), or any control characters 2128 // (\u0000-\u001f | \u007f-\u009f). Also, it must not contain the literal string 2129 // arn. 2130 TaskList *TaskList 2131 2132 // If set, specifies the priority with which the activity task is to be assigned to 2133 // a worker. This overrides the defaultTaskPriority specified when registering the 2134 // activity type using RegisterActivityType. Valid values are integers that range 2135 // from Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). 2136 // Higher numbers indicate higher priority. For more information about setting task 2137 // priority, see Setting Task Priority 2138 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 2139 // in the Amazon SWF Developer Guide. 2140 TaskPriority *string 2141} 2142 2143// Provides the details of the ScheduleActivityTaskFailed event. 2144type ScheduleActivityTaskFailedEventAttributes struct { 2145 2146 // The activityId provided in the ScheduleActivityTask decision that failed. 2147 // 2148 // This member is required. 2149 ActivityId *string 2150 2151 // The activity type provided in the ScheduleActivityTask decision that failed. 2152 // 2153 // This member is required. 2154 ActivityType *ActivityType 2155 2156 // The cause of the failure. This information is generated by the system and can be 2157 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 2158 // decision failed because it lacked sufficient permissions. For details and 2159 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 2160 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2161 // in the Amazon SWF Developer Guide. 2162 // 2163 // This member is required. 2164 Cause ScheduleActivityTaskFailedCause 2165 2166 // The ID of the DecisionTaskCompleted event corresponding to the decision that 2167 // resulted in the scheduling of this activity task. This information can be useful 2168 // for diagnosing problems by tracing back the chain of events leading up to this 2169 // event. 2170 // 2171 // This member is required. 2172 DecisionTaskCompletedEventId int64 2173} 2174 2175// Decision attributes specified in scheduleLambdaFunctionDecisionAttributes within 2176// the list of decisions decisions passed to RespondDecisionTaskCompleted. 2177type ScheduleLambdaFunctionDecisionAttributes struct { 2178 2179 // A string that identifies the Lambda function execution in the event history. 2180 // 2181 // This member is required. 2182 Id *string 2183 2184 // The name, or ARN, of the Lambda function to schedule. 2185 // 2186 // This member is required. 2187 Name *string 2188 2189 // The data attached to the event that the decider can use in subsequent workflow 2190 // tasks. This data isn't sent to the Lambda task. 2191 Control *string 2192 2193 // The optional input data to be supplied to the Lambda function. 2194 Input *string 2195 2196 // The timeout value, in seconds, after which the Lambda function is considered to 2197 // be failed once it has started. This can be any integer from 1-300 (1s-5m). If no 2198 // value is supplied, than a default value of 300s is assumed. 2199 StartToCloseTimeout *string 2200} 2201 2202// Provides the details of the ScheduleLambdaFunctionFailed event. It isn't set for 2203// other event types. 2204type ScheduleLambdaFunctionFailedEventAttributes struct { 2205 2206 // The cause of the failure. To help diagnose issues, use this information to trace 2207 // back the chain of events leading up to this event. If cause is set to 2208 // OPERATION_NOT_PERMITTED, the decision failed because it lacked sufficient 2209 // permissions. For details and example IAM policies, see Using IAM to Manage 2210 // Access to Amazon SWF Workflows 2211 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2212 // in the Amazon SWF Developer Guide. 2213 // 2214 // This member is required. 2215 Cause ScheduleLambdaFunctionFailedCause 2216 2217 // The ID of the LambdaFunctionCompleted event corresponding to the decision that 2218 // resulted in scheduling this Lambda task. To help diagnose issues, use this 2219 // information to trace back the chain of events leading up to this event. 2220 // 2221 // This member is required. 2222 DecisionTaskCompletedEventId int64 2223 2224 // The ID provided in the ScheduleLambdaFunction decision that failed. 2225 // 2226 // This member is required. 2227 Id *string 2228 2229 // The name of the Lambda function. 2230 // 2231 // This member is required. 2232 Name *string 2233} 2234 2235// Provides the details of the SignalExternalWorkflowExecution decision. Access 2236// Control You can use IAM policies to control this decision's access to Amazon SWF 2237// resources as follows: 2238// 2239// * Use a Resource element with the domain name to limit 2240// the action to only specified domains. 2241// 2242// * Use an Action element to allow or deny 2243// permission to call this action. 2244// 2245// * You cannot use an IAM policy to constrain 2246// this action's parameters. 2247// 2248// If the caller doesn't have sufficient permissions to 2249// invoke the action, or the parameter values fall outside the specified 2250// constraints, the action fails. The associated event attribute's cause parameter 2251// is set to OPERATION_NOT_PERMITTED. For details and example IAM policies, see 2252// Using IAM to Manage Access to Amazon SWF Workflows 2253// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2254// in the Amazon SWF Developer Guide. 2255type SignalExternalWorkflowExecutionDecisionAttributes struct { 2256 2257 // The name of the signal.The target workflow execution uses the signal name and 2258 // input to process the signal. 2259 // 2260 // This member is required. 2261 SignalName *string 2262 2263 // The workflowId of the workflow execution to be signaled. 2264 // 2265 // This member is required. 2266 WorkflowId *string 2267 2268 // The data attached to the event that can be used by the decider in subsequent 2269 // decision tasks. 2270 Control *string 2271 2272 // The input data to be provided with the signal. The target workflow execution 2273 // uses the signal name and input data to process the signal. 2274 Input *string 2275 2276 // The runId of the workflow execution to be signaled. 2277 RunId *string 2278} 2279 2280// Provides the details of the SignalExternalWorkflowExecutionFailed event. 2281type SignalExternalWorkflowExecutionFailedEventAttributes struct { 2282 2283 // The cause of the failure. This information is generated by the system and can be 2284 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 2285 // decision failed because it lacked sufficient permissions. For details and 2286 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 2287 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2288 // in the Amazon SWF Developer Guide. 2289 // 2290 // This member is required. 2291 Cause SignalExternalWorkflowExecutionFailedCause 2292 2293 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2294 // that resulted in the SignalExternalWorkflowExecution decision for this signal. 2295 // This information can be useful for diagnosing problems by tracing back the chain 2296 // of events leading up to this event. 2297 // 2298 // This member is required. 2299 DecisionTaskCompletedEventId int64 2300 2301 // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to 2302 // the SignalExternalWorkflowExecution decision to request this signal. This 2303 // information can be useful for diagnosing problems by tracing back the chain of 2304 // events leading up to this event. 2305 // 2306 // This member is required. 2307 InitiatedEventId int64 2308 2309 // The workflowId of the external workflow execution that the signal was being 2310 // delivered to. 2311 // 2312 // This member is required. 2313 WorkflowId *string 2314 2315 // The data attached to the event that the decider can use in subsequent workflow 2316 // tasks. This data isn't sent to the workflow execution. 2317 Control *string 2318 2319 // The runId of the external workflow execution that the signal was being delivered 2320 // to. 2321 RunId *string 2322} 2323 2324// Provides the details of the SignalExternalWorkflowExecutionInitiated event. 2325type SignalExternalWorkflowExecutionInitiatedEventAttributes struct { 2326 2327 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2328 // that resulted in the SignalExternalWorkflowExecution decision for this signal. 2329 // This information can be useful for diagnosing problems by tracing back the chain 2330 // of events leading up to this event. 2331 // 2332 // This member is required. 2333 DecisionTaskCompletedEventId int64 2334 2335 // The name of the signal. 2336 // 2337 // This member is required. 2338 SignalName *string 2339 2340 // The workflowId of the external workflow execution. 2341 // 2342 // This member is required. 2343 WorkflowId *string 2344 2345 // Data attached to the event that can be used by the decider in subsequent 2346 // decision tasks. 2347 Control *string 2348 2349 // The input provided to the signal. 2350 Input *string 2351 2352 // The runId of the external workflow execution to send the signal to. 2353 RunId *string 2354} 2355 2356// Provides the details of the StartChildWorkflowExecution decision. Access Control 2357// You can use IAM policies to control this decision's access to Amazon SWF 2358// resources as follows: 2359// 2360// * Use a Resource element with the domain name to limit 2361// the action to only specified domains. 2362// 2363// * Use an Action element to allow or deny 2364// permission to call this action. 2365// 2366// * Constrain the following parameters by using a 2367// Condition element with the appropriate keys. 2368// 2369// * tagList.member.N – The key is 2370// "swf:tagList.N" where N is the tag number from 0 to 4, inclusive. 2371// 2372// * taskList – 2373// String constraint. The key is swf:taskList.name. 2374// 2375// * workflowType.name – String 2376// constraint. The key is swf:workflowType.name. 2377// 2378// * workflowType.version – String 2379// constraint. The key is swf:workflowType.version. 2380// 2381// If the caller doesn't have 2382// sufficient permissions to invoke the action, or the parameter values fall 2383// outside the specified constraints, the action fails. The associated event 2384// attribute's cause parameter is set to OPERATION_NOT_PERMITTED. For details and 2385// example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 2386// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2387// in the Amazon SWF Developer Guide. 2388type StartChildWorkflowExecutionDecisionAttributes struct { 2389 2390 // The workflowId of the workflow execution. The specified string must not start or 2391 // end with whitespace. It must not contain a : (colon), / (slash), | (vertical 2392 // bar), or any control characters (\u0000-\u001f | \u007f-\u009f). Also, it must 2393 // not contain the literal string arn. 2394 // 2395 // This member is required. 2396 WorkflowId *string 2397 2398 // The type of the workflow execution to be started. 2399 // 2400 // This member is required. 2401 WorkflowType *WorkflowType 2402 2403 // If set, specifies the policy to use for the child workflow executions if the 2404 // workflow execution being started is terminated by calling the 2405 // TerminateWorkflowExecution action explicitly or due to an expired timeout. This 2406 // policy overrides the default child policy specified when registering the 2407 // workflow type using RegisterWorkflowType. The supported child policies are: 2408 // 2409 // * 2410 // TERMINATE – The child executions are terminated. 2411 // 2412 // * REQUEST_CANCEL – A request 2413 // to cancel is attempted for each child execution by recording a 2414 // WorkflowExecutionCancelRequested event in its history. It is up to the decider 2415 // to take appropriate actions when it receives an execution history with this 2416 // event. 2417 // 2418 // * ABANDON – No action is taken. The child executions continue to run. 2419 // 2420 // A 2421 // child policy for this workflow execution must be specified either as a default 2422 // for the workflow type or through this parameter. If neither this parameter is 2423 // set nor a default child policy was specified at registration time then a fault 2424 // is returned. 2425 ChildPolicy ChildPolicy 2426 2427 // The data attached to the event that can be used by the decider in subsequent 2428 // workflow tasks. This data isn't sent to the child workflow execution. 2429 Control *string 2430 2431 // The total duration for this workflow execution. This overrides the 2432 // defaultExecutionStartToCloseTimeout specified when registering the workflow 2433 // type. The duration is specified in seconds, an integer greater than or equal to 2434 // 0. You can use NONE to specify unlimited duration. An execution start-to-close 2435 // timeout for this workflow execution must be specified either as a default for 2436 // the workflow type or through this parameter. If neither this parameter is set 2437 // nor a default execution start-to-close timeout was specified at registration 2438 // time then a fault is returned. 2439 ExecutionStartToCloseTimeout *string 2440 2441 // The input to be provided to the workflow execution. 2442 Input *string 2443 2444 // The IAM role attached to the child workflow execution. 2445 LambdaRole *string 2446 2447 // The list of tags to associate with the child workflow execution. A maximum of 5 2448 // tags can be specified. You can list workflow executions with a specific tag by 2449 // calling ListOpenWorkflowExecutions or ListClosedWorkflowExecutions and 2450 // specifying a TagFilter. 2451 TagList []string 2452 2453 // The name of the task list to be used for decision tasks of the child workflow 2454 // execution. A task list for this workflow execution must be specified either as a 2455 // default for the workflow type or through this parameter. If neither this 2456 // parameter is set nor a default task list was specified at registration time then 2457 // a fault is returned. The specified string must not start or end with whitespace. 2458 // It must not contain a : (colon), / (slash), | (vertical bar), or any control 2459 // characters (\u0000-\u001f | \u007f-\u009f). Also, it must not contain the 2460 // literal string arn. 2461 TaskList *TaskList 2462 2463 // A task priority that, if set, specifies the priority for a decision task of this 2464 // workflow execution. This overrides the defaultTaskPriority specified when 2465 // registering the workflow type. Valid values are integers that range from Java's 2466 // Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher 2467 // numbers indicate higher priority. For more information about setting task 2468 // priority, see Setting Task Priority 2469 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 2470 // in the Amazon SWF Developer Guide. 2471 TaskPriority *string 2472 2473 // Specifies the maximum duration of decision tasks for this workflow execution. 2474 // This parameter overrides the defaultTaskStartToCloseTimout specified when 2475 // registering the workflow type using RegisterWorkflowType. The duration is 2476 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 2477 // specify unlimited duration. A task start-to-close timeout for this workflow 2478 // execution must be specified either as a default for the workflow type or through 2479 // this parameter. If neither this parameter is set nor a default task 2480 // start-to-close timeout was specified at registration time then a fault is 2481 // returned. 2482 TaskStartToCloseTimeout *string 2483} 2484 2485// Provides the details of the StartChildWorkflowExecutionFailed event. 2486type StartChildWorkflowExecutionFailedEventAttributes struct { 2487 2488 // The cause of the failure. This information is generated by the system and can be 2489 // useful for diagnostic purposes. When cause is set to OPERATION_NOT_PERMITTED, 2490 // the decision fails because it lacks sufficient permissions. For details and 2491 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 2492 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2493 // in the Amazon SWF Developer Guide. 2494 // 2495 // This member is required. 2496 Cause StartChildWorkflowExecutionFailedCause 2497 2498 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2499 // that resulted in the StartChildWorkflowExecutionDecision to request this child 2500 // workflow execution. This information can be useful for diagnosing problems by 2501 // tracing back the chain of events. 2502 // 2503 // This member is required. 2504 DecisionTaskCompletedEventId int64 2505 2506 // When the cause is WORKFLOW_ALREADY_RUNNING, initiatedEventId is the ID of the 2507 // StartChildWorkflowExecutionInitiated event that corresponds to the 2508 // StartChildWorkflowExecutionDecision to start the workflow execution. You can use 2509 // this information to diagnose problems by tracing back the chain of events 2510 // leading up to this event. When the cause isn't WORKFLOW_ALREADY_RUNNING, 2511 // initiatedEventId is set to 0 because the StartChildWorkflowExecutionInitiated 2512 // event doesn't exist. 2513 // 2514 // This member is required. 2515 InitiatedEventId int64 2516 2517 // The workflowId of the child workflow execution. 2518 // 2519 // This member is required. 2520 WorkflowId *string 2521 2522 // The workflow type provided in the StartChildWorkflowExecutionDecision that 2523 // failed. 2524 // 2525 // This member is required. 2526 WorkflowType *WorkflowType 2527 2528 // The data attached to the event that the decider can use in subsequent workflow 2529 // tasks. This data isn't sent to the child workflow execution. 2530 Control *string 2531} 2532 2533// Provides the details of the StartChildWorkflowExecutionInitiated event. 2534type StartChildWorkflowExecutionInitiatedEventAttributes struct { 2535 2536 // The policy to use for the child workflow executions if this execution gets 2537 // terminated by explicitly calling the TerminateWorkflowExecution action or due to 2538 // an expired timeout. The supported child policies are: 2539 // 2540 // * TERMINATE – The child 2541 // executions are terminated. 2542 // 2543 // * REQUEST_CANCEL – A request to cancel is attempted 2544 // for each child execution by recording a WorkflowExecutionCancelRequested event 2545 // in its history. It is up to the decider to take appropriate actions when it 2546 // receives an execution history with this event. 2547 // 2548 // * ABANDON – No action is taken. 2549 // The child executions continue to run. 2550 // 2551 // This member is required. 2552 ChildPolicy ChildPolicy 2553 2554 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2555 // that resulted in the StartChildWorkflowExecutionDecision to request this child 2556 // workflow execution. This information can be useful for diagnosing problems by 2557 // tracing back the cause of events. 2558 // 2559 // This member is required. 2560 DecisionTaskCompletedEventId int64 2561 2562 // The name of the task list used for the decision tasks of the child workflow 2563 // execution. 2564 // 2565 // This member is required. 2566 TaskList *TaskList 2567 2568 // The workflowId of the child workflow execution. 2569 // 2570 // This member is required. 2571 WorkflowId *string 2572 2573 // The type of the child workflow execution. 2574 // 2575 // This member is required. 2576 WorkflowType *WorkflowType 2577 2578 // Data attached to the event that can be used by the decider in subsequent 2579 // decision tasks. This data isn't sent to the activity. 2580 Control *string 2581 2582 // The maximum duration for the child workflow execution. If the workflow execution 2583 // isn't closed within this duration, it is timed out and force-terminated. The 2584 // duration is specified in seconds, an integer greater than or equal to 0. You can 2585 // use NONE to specify unlimited duration. 2586 ExecutionStartToCloseTimeout *string 2587 2588 // The inputs provided to the child workflow execution. 2589 Input *string 2590 2591 // The IAM role to attach to the child workflow execution. 2592 LambdaRole *string 2593 2594 // The list of tags to associated with the child workflow execution. 2595 TagList []string 2596 2597 // The priority assigned for the decision tasks for this workflow execution. Valid 2598 // values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to 2599 // Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. For 2600 // more information about setting task priority, see Setting Task Priority 2601 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 2602 // in the Amazon SWF Developer Guide. 2603 TaskPriority *string 2604 2605 // The maximum duration allowed for the decision tasks for this workflow execution. 2606 // The duration is specified in seconds, an integer greater than or equal to 0. You 2607 // can use NONE to specify unlimited duration. 2608 TaskStartToCloseTimeout *string 2609} 2610 2611// Provides the details of the StartLambdaFunctionFailed event. It isn't set for 2612// other event types. 2613type StartLambdaFunctionFailedEventAttributes struct { 2614 2615 // The cause of the failure. To help diagnose issues, use this information to trace 2616 // back the chain of events leading up to this event. If cause is set to 2617 // OPERATION_NOT_PERMITTED, the decision failed because the IAM role attached to 2618 // the execution lacked sufficient permissions. For details and example IAM 2619 // policies, see Lambda Tasks 2620 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/lambda-task.html) 2621 // in the Amazon SWF Developer Guide. 2622 Cause StartLambdaFunctionFailedCause 2623 2624 // A description that can help diagnose the cause of the fault. 2625 Message *string 2626 2627 // The ID of the ActivityTaskScheduled event that was recorded when this activity 2628 // task was scheduled. To help diagnose issues, use this information to trace back 2629 // the chain of events leading up to this event. 2630 ScheduledEventId int64 2631} 2632 2633// Provides the details of the StartTimer decision. Access Control You can use IAM 2634// policies to control this decision's access to Amazon SWF resources as 2635// follows: 2636// 2637// * Use a Resource element with the domain name to limit the action to 2638// only specified domains. 2639// 2640// * Use an Action element to allow or deny permission to 2641// call this action. 2642// 2643// * You cannot use an IAM policy to constrain this action's 2644// parameters. 2645// 2646// If the caller doesn't have sufficient permissions to invoke the 2647// action, or the parameter values fall outside the specified constraints, the 2648// action fails. The associated event attribute's cause parameter is set to 2649// OPERATION_NOT_PERMITTED. For details and example IAM policies, see Using IAM to 2650// Manage Access to Amazon SWF Workflows 2651// (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2652// in the Amazon SWF Developer Guide. 2653type StartTimerDecisionAttributes struct { 2654 2655 // The duration to wait before firing the timer. The duration is specified in 2656 // seconds, an integer greater than or equal to 0. 2657 // 2658 // This member is required. 2659 StartToFireTimeout *string 2660 2661 // The unique ID of the timer. The specified string must not start or end with 2662 // whitespace. It must not contain a : (colon), / (slash), | (vertical bar), or any 2663 // control characters (\u0000-\u001f | \u007f-\u009f). Also, it must not contain 2664 // the literal string arn. 2665 // 2666 // This member is required. 2667 TimerId *string 2668 2669 // The data attached to the event that can be used by the decider in subsequent 2670 // workflow tasks. 2671 Control *string 2672} 2673 2674// Provides the details of the StartTimerFailed event. 2675type StartTimerFailedEventAttributes struct { 2676 2677 // The cause of the failure. This information is generated by the system and can be 2678 // useful for diagnostic purposes. If cause is set to OPERATION_NOT_PERMITTED, the 2679 // decision failed because it lacked sufficient permissions. For details and 2680 // example IAM policies, see Using IAM to Manage Access to Amazon SWF Workflows 2681 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/swf-dev-iam.html) 2682 // in the Amazon SWF Developer Guide. 2683 // 2684 // This member is required. 2685 Cause StartTimerFailedCause 2686 2687 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2688 // that resulted in the StartTimer decision for this activity task. This 2689 // information can be useful for diagnosing problems by tracing back the chain of 2690 // events leading up to this event. 2691 // 2692 // This member is required. 2693 DecisionTaskCompletedEventId int64 2694 2695 // The timerId provided in the StartTimer decision that failed. 2696 // 2697 // This member is required. 2698 TimerId *string 2699} 2700 2701// Used to filter the workflow executions in visibility APIs based on a tag. 2702type TagFilter struct { 2703 2704 // Specifies the tag that must be associated with the execution for it to meet the 2705 // filter criteria. Tags may only contain unicode letters, digits, whitespace, or 2706 // these symbols: _ . : / = + - @. 2707 // 2708 // This member is required. 2709 Tag *string 2710} 2711 2712// Represents a task list. 2713type TaskList struct { 2714 2715 // The name of the task list. 2716 // 2717 // This member is required. 2718 Name *string 2719} 2720 2721// Provides the details of the TimerCanceled event. 2722type TimerCanceledEventAttributes struct { 2723 2724 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2725 // that resulted in the CancelTimer decision to cancel this timer. This information 2726 // can be useful for diagnosing problems by tracing back the chain of events 2727 // leading up to this event. 2728 // 2729 // This member is required. 2730 DecisionTaskCompletedEventId int64 2731 2732 // The ID of the TimerStarted event that was recorded when this timer was started. 2733 // This information can be useful for diagnosing problems by tracing back the chain 2734 // of events leading up to this event. 2735 // 2736 // This member is required. 2737 StartedEventId int64 2738 2739 // The unique ID of the timer that was canceled. 2740 // 2741 // This member is required. 2742 TimerId *string 2743} 2744 2745// Provides the details of the TimerFired event. 2746type TimerFiredEventAttributes struct { 2747 2748 // The ID of the TimerStarted event that was recorded when this timer was started. 2749 // This information can be useful for diagnosing problems by tracing back the chain 2750 // of events leading up to this event. 2751 // 2752 // This member is required. 2753 StartedEventId int64 2754 2755 // The unique ID of the timer that fired. 2756 // 2757 // This member is required. 2758 TimerId *string 2759} 2760 2761// Provides the details of the TimerStarted event. 2762type TimerStartedEventAttributes struct { 2763 2764 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2765 // that resulted in the StartTimer decision for this activity task. This 2766 // information can be useful for diagnosing problems by tracing back the chain of 2767 // events leading up to this event. 2768 // 2769 // This member is required. 2770 DecisionTaskCompletedEventId int64 2771 2772 // The duration of time after which the timer fires. The duration is specified in 2773 // seconds, an integer greater than or equal to 0. 2774 // 2775 // This member is required. 2776 StartToFireTimeout *string 2777 2778 // The unique ID of the timer that was started. 2779 // 2780 // This member is required. 2781 TimerId *string 2782 2783 // Data attached to the event that can be used by the decider in subsequent 2784 // workflow tasks. 2785 Control *string 2786} 2787 2788// Represents a workflow execution. 2789type WorkflowExecution struct { 2790 2791 // A system-generated unique identifier for the workflow execution. 2792 // 2793 // This member is required. 2794 RunId *string 2795 2796 // The user defined identifier associated with the workflow execution. 2797 // 2798 // This member is required. 2799 WorkflowId *string 2800} 2801 2802// Provides the details of the WorkflowExecutionCanceled event. 2803type WorkflowExecutionCanceledEventAttributes struct { 2804 2805 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2806 // that resulted in the CancelWorkflowExecution decision for this cancellation 2807 // request. This information can be useful for diagnosing problems by tracing back 2808 // the chain of events leading up to this event. 2809 // 2810 // This member is required. 2811 DecisionTaskCompletedEventId int64 2812 2813 // The details of the cancellation. 2814 Details *string 2815} 2816 2817// Provides the details of the WorkflowExecutionCancelRequested event. 2818type WorkflowExecutionCancelRequestedEventAttributes struct { 2819 2820 // If set, indicates that the request to cancel the workflow execution was 2821 // automatically generated, and specifies the cause. This happens if the parent 2822 // workflow execution times out or is terminated, and the child policy is set to 2823 // cancel child executions. 2824 Cause WorkflowExecutionCancelRequestedCause 2825 2826 // The ID of the RequestCancelExternalWorkflowExecutionInitiated event 2827 // corresponding to the RequestCancelExternalWorkflowExecution decision to cancel 2828 // this workflow execution.The source event with this ID can be found in the 2829 // history of the source workflow execution. This information can be useful for 2830 // diagnosing problems by tracing back the chain of events leading up to this 2831 // event. 2832 ExternalInitiatedEventId int64 2833 2834 // The external workflow execution for which the cancellation was requested. 2835 ExternalWorkflowExecution *WorkflowExecution 2836} 2837 2838// Provides the details of the WorkflowExecutionCompleted event. 2839type WorkflowExecutionCompletedEventAttributes struct { 2840 2841 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2842 // that resulted in the CompleteWorkflowExecution decision to complete this 2843 // execution. This information can be useful for diagnosing problems by tracing 2844 // back the chain of events leading up to this event. 2845 // 2846 // This member is required. 2847 DecisionTaskCompletedEventId int64 2848 2849 // The result produced by the workflow execution upon successful completion. 2850 Result *string 2851} 2852 2853// The configuration settings for a workflow execution including timeout values, 2854// tasklist etc. These configuration settings are determined from the defaults 2855// specified when registering the workflow type and those specified when starting 2856// the workflow execution. 2857type WorkflowExecutionConfiguration struct { 2858 2859 // The policy to use for the child workflow executions if this workflow execution 2860 // is terminated, by calling the TerminateWorkflowExecution action explicitly or 2861 // due to an expired timeout. The supported child policies are: 2862 // 2863 // * TERMINATE – The 2864 // child executions are terminated. 2865 // 2866 // * REQUEST_CANCEL – A request to cancel is 2867 // attempted for each child execution by recording a 2868 // WorkflowExecutionCancelRequested event in its history. It is up to the decider 2869 // to take appropriate actions when it receives an execution history with this 2870 // event. 2871 // 2872 // * ABANDON – No action is taken. The child executions continue to run. 2873 // 2874 // This member is required. 2875 ChildPolicy ChildPolicy 2876 2877 // The total duration for this workflow execution. The duration is specified in 2878 // seconds, an integer greater than or equal to 0. You can use NONE to specify 2879 // unlimited duration. 2880 // 2881 // This member is required. 2882 ExecutionStartToCloseTimeout *string 2883 2884 // The task list used for the decision tasks generated for this workflow execution. 2885 // 2886 // This member is required. 2887 TaskList *TaskList 2888 2889 // The maximum duration allowed for decision tasks for this workflow execution. The 2890 // duration is specified in seconds, an integer greater than or equal to 0. You can 2891 // use NONE to specify unlimited duration. 2892 // 2893 // This member is required. 2894 TaskStartToCloseTimeout *string 2895 2896 // The IAM role attached to the child workflow execution. 2897 LambdaRole *string 2898 2899 // The priority assigned to decision tasks for this workflow execution. Valid 2900 // values are integers that range from Java's Integer.MIN_VALUE (-2147483648) to 2901 // Integer.MAX_VALUE (2147483647). Higher numbers indicate higher priority. For 2902 // more information about setting task priority, see Setting Task Priority 2903 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 2904 // in the Amazon SWF Developer Guide. 2905 TaskPriority *string 2906} 2907 2908// Provides the details of the WorkflowExecutionContinuedAsNew event. 2909type WorkflowExecutionContinuedAsNewEventAttributes struct { 2910 2911 // The policy to use for the child workflow executions of the new execution if it 2912 // is terminated by calling the TerminateWorkflowExecution action explicitly or due 2913 // to an expired timeout. The supported child policies are: 2914 // 2915 // * TERMINATE – The 2916 // child executions are terminated. 2917 // 2918 // * REQUEST_CANCEL – A request to cancel is 2919 // attempted for each child execution by recording a 2920 // WorkflowExecutionCancelRequested event in its history. It is up to the decider 2921 // to take appropriate actions when it receives an execution history with this 2922 // event. 2923 // 2924 // * ABANDON – No action is taken. The child executions continue to run. 2925 // 2926 // This member is required. 2927 ChildPolicy ChildPolicy 2928 2929 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2930 // that resulted in the ContinueAsNewWorkflowExecution decision that started this 2931 // execution. This information can be useful for diagnosing problems by tracing 2932 // back the chain of events leading up to this event. 2933 // 2934 // This member is required. 2935 DecisionTaskCompletedEventId int64 2936 2937 // The runId of the new workflow execution. 2938 // 2939 // This member is required. 2940 NewExecutionRunId *string 2941 2942 // The task list to use for the decisions of the new (continued) workflow 2943 // execution. 2944 // 2945 // This member is required. 2946 TaskList *TaskList 2947 2948 // The workflow type of this execution. 2949 // 2950 // This member is required. 2951 WorkflowType *WorkflowType 2952 2953 // The total duration allowed for the new workflow execution. The duration is 2954 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 2955 // specify unlimited duration. 2956 ExecutionStartToCloseTimeout *string 2957 2958 // The input provided to the new workflow execution. 2959 Input *string 2960 2961 // The IAM role to attach to the new (continued) workflow execution. 2962 LambdaRole *string 2963 2964 // The list of tags associated with the new workflow execution. 2965 TagList []string 2966 2967 // The priority of the task to use for the decisions of the new (continued) 2968 // workflow execution. 2969 TaskPriority *string 2970 2971 // The maximum duration of decision tasks for the new workflow execution. The 2972 // duration is specified in seconds, an integer greater than or equal to 0. You can 2973 // use NONE to specify unlimited duration. 2974 TaskStartToCloseTimeout *string 2975} 2976 2977// Provides the details of the WorkflowExecutionFailed event. 2978type WorkflowExecutionFailedEventAttributes struct { 2979 2980 // The ID of the DecisionTaskCompleted event corresponding to the decision task 2981 // that resulted in the FailWorkflowExecution decision to fail this execution. This 2982 // information can be useful for diagnosing problems by tracing back the chain of 2983 // events leading up to this event. 2984 // 2985 // This member is required. 2986 DecisionTaskCompletedEventId int64 2987 2988 // The details of the failure. 2989 Details *string 2990 2991 // The descriptive reason provided for the failure. 2992 Reason *string 2993} 2994 2995// Used to filter the workflow executions in visibility APIs by their workflowId. 2996type WorkflowExecutionFilter struct { 2997 2998 // The workflowId to pass of match the criteria of this filter. 2999 // 3000 // This member is required. 3001 WorkflowId *string 3002} 3003 3004// Contains information about a workflow execution. 3005type WorkflowExecutionInfo struct { 3006 3007 // The workflow execution this information is about. 3008 // 3009 // This member is required. 3010 Execution *WorkflowExecution 3011 3012 // The current status of the execution. 3013 // 3014 // This member is required. 3015 ExecutionStatus ExecutionStatus 3016 3017 // The time when the execution was started. 3018 // 3019 // This member is required. 3020 StartTimestamp *time.Time 3021 3022 // The type of the workflow execution. 3023 // 3024 // This member is required. 3025 WorkflowType *WorkflowType 3026 3027 // Set to true if a cancellation is requested for this workflow execution. 3028 CancelRequested bool 3029 3030 // If the execution status is closed then this specifies how the execution was 3031 // closed: 3032 // 3033 // * COMPLETED – the execution was successfully completed. 3034 // 3035 // * CANCELED – 3036 // the execution was canceled.Cancellation allows the implementation to gracefully 3037 // clean up before the execution is closed. 3038 // 3039 // * TERMINATED – the execution was force 3040 // terminated. 3041 // 3042 // * FAILED – the execution failed to complete. 3043 // 3044 // * TIMED_OUT – the 3045 // execution did not complete in the alloted time and was automatically timed 3046 // out. 3047 // 3048 // * CONTINUED_AS_NEW – the execution is logically continued. This means the 3049 // current execution was completed and a new execution was started to carry on the 3050 // workflow. 3051 CloseStatus CloseStatus 3052 3053 // The time when the workflow execution was closed. Set only if the execution 3054 // status is CLOSED. 3055 CloseTimestamp *time.Time 3056 3057 // If this workflow execution is a child of another execution then contains the 3058 // workflow execution that started this execution. 3059 Parent *WorkflowExecution 3060 3061 // The list of tags associated with the workflow execution. Tags can be used to 3062 // identify and list workflow executions of interest through the visibility APIs. A 3063 // workflow execution can have a maximum of 5 tags. 3064 TagList []string 3065} 3066 3067// Contains the counts of open tasks, child workflow executions and timers for a 3068// workflow execution. 3069type WorkflowExecutionOpenCounts struct { 3070 3071 // The count of activity tasks whose status is OPEN. 3072 // 3073 // This member is required. 3074 OpenActivityTasks int32 3075 3076 // The count of child workflow executions whose status is OPEN. 3077 // 3078 // This member is required. 3079 OpenChildWorkflowExecutions int32 3080 3081 // The count of decision tasks whose status is OPEN. A workflow execution can have 3082 // at most one open decision task. 3083 // 3084 // This member is required. 3085 OpenDecisionTasks int32 3086 3087 // The count of timers started by this workflow execution that have not fired yet. 3088 // 3089 // This member is required. 3090 OpenTimers int32 3091 3092 // The count of Lambda tasks whose status is OPEN. 3093 OpenLambdaFunctions int32 3094} 3095 3096// Provides the details of the WorkflowExecutionSignaled event. 3097type WorkflowExecutionSignaledEventAttributes struct { 3098 3099 // The name of the signal received. The decider can use the signal name and inputs 3100 // to determine how to the process the signal. 3101 // 3102 // This member is required. 3103 SignalName *string 3104 3105 // The ID of the SignalExternalWorkflowExecutionInitiated event corresponding to 3106 // the SignalExternalWorkflow decision to signal this workflow execution.The source 3107 // event with this ID can be found in the history of the source workflow execution. 3108 // This information can be useful for diagnosing problems by tracing back the chain 3109 // of events leading up to this event. This field is set only if the signal was 3110 // initiated by another workflow execution. 3111 ExternalInitiatedEventId int64 3112 3113 // The workflow execution that sent the signal. This is set only of the signal was 3114 // sent by another workflow execution. 3115 ExternalWorkflowExecution *WorkflowExecution 3116 3117 // The inputs provided with the signal. The decider can use the signal name and 3118 // inputs to determine how to process the signal. 3119 Input *string 3120} 3121 3122// Provides details of WorkflowExecutionStarted event. 3123type WorkflowExecutionStartedEventAttributes struct { 3124 3125 // The policy to use for the child workflow executions if this workflow execution 3126 // is terminated, by calling the TerminateWorkflowExecution action explicitly or 3127 // due to an expired timeout. The supported child policies are: 3128 // 3129 // * TERMINATE – The 3130 // child executions are terminated. 3131 // 3132 // * REQUEST_CANCEL – A request to cancel is 3133 // attempted for each child execution by recording a 3134 // WorkflowExecutionCancelRequested event in its history. It is up to the decider 3135 // to take appropriate actions when it receives an execution history with this 3136 // event. 3137 // 3138 // * ABANDON – No action is taken. The child executions continue to run. 3139 // 3140 // This member is required. 3141 ChildPolicy ChildPolicy 3142 3143 // The name of the task list for scheduling the decision tasks for this workflow 3144 // execution. 3145 // 3146 // This member is required. 3147 TaskList *TaskList 3148 3149 // The workflow type of this execution. 3150 // 3151 // This member is required. 3152 WorkflowType *WorkflowType 3153 3154 // If this workflow execution was started due to a ContinueAsNewWorkflowExecution 3155 // decision, then it contains the runId of the previous workflow execution that was 3156 // closed and continued as this execution. 3157 ContinuedExecutionRunId *string 3158 3159 // The maximum duration for this workflow execution. The duration is specified in 3160 // seconds, an integer greater than or equal to 0. You can use NONE to specify 3161 // unlimited duration. 3162 ExecutionStartToCloseTimeout *string 3163 3164 // The input provided to the workflow execution. 3165 Input *string 3166 3167 // The IAM role attached to the workflow execution. 3168 LambdaRole *string 3169 3170 // The ID of the StartChildWorkflowExecutionInitiated event corresponding to the 3171 // StartChildWorkflowExecutionDecision to start this workflow execution. The source 3172 // event with this ID can be found in the history of the source workflow execution. 3173 // This information can be useful for diagnosing problems by tracing back the chain 3174 // of events leading up to this event. 3175 ParentInitiatedEventId int64 3176 3177 // The source workflow execution that started this workflow execution. The member 3178 // isn't set if the workflow execution was not started by a workflow. 3179 ParentWorkflowExecution *WorkflowExecution 3180 3181 // The list of tags associated with this workflow execution. An execution can have 3182 // up to 5 tags. 3183 TagList []string 3184 3185 // The priority of the decision tasks in the workflow execution. 3186 TaskPriority *string 3187 3188 // The maximum duration of decision tasks for this workflow type. The duration is 3189 // specified in seconds, an integer greater than or equal to 0. You can use NONE to 3190 // specify unlimited duration. 3191 TaskStartToCloseTimeout *string 3192} 3193 3194// Provides the details of the WorkflowExecutionTerminated event. 3195type WorkflowExecutionTerminatedEventAttributes struct { 3196 3197 // The policy used for the child workflow executions of this workflow execution. 3198 // The supported child policies are: 3199 // 3200 // * TERMINATE – The child executions are 3201 // terminated. 3202 // 3203 // * REQUEST_CANCEL – A request to cancel is attempted for each child 3204 // execution by recording a WorkflowExecutionCancelRequested event in its history. 3205 // It is up to the decider to take appropriate actions when it receives an 3206 // execution history with this event. 3207 // 3208 // * ABANDON – No action is taken. The child 3209 // executions continue to run. 3210 // 3211 // This member is required. 3212 ChildPolicy ChildPolicy 3213 3214 // If set, indicates that the workflow execution was automatically terminated, and 3215 // specifies the cause. This happens if the parent workflow execution times out or 3216 // is terminated and the child policy is set to terminate child executions. 3217 Cause WorkflowExecutionTerminatedCause 3218 3219 // The details provided for the termination. 3220 Details *string 3221 3222 // The reason provided for the termination. 3223 Reason *string 3224} 3225 3226// Provides the details of the WorkflowExecutionTimedOut event. 3227type WorkflowExecutionTimedOutEventAttributes struct { 3228 3229 // The policy used for the child workflow executions of this workflow execution. 3230 // The supported child policies are: 3231 // 3232 // * TERMINATE – The child executions are 3233 // terminated. 3234 // 3235 // * REQUEST_CANCEL – A request to cancel is attempted for each child 3236 // execution by recording a WorkflowExecutionCancelRequested event in its history. 3237 // It is up to the decider to take appropriate actions when it receives an 3238 // execution history with this event. 3239 // 3240 // * ABANDON – No action is taken. The child 3241 // executions continue to run. 3242 // 3243 // This member is required. 3244 ChildPolicy ChildPolicy 3245 3246 // The type of timeout that caused this event. 3247 // 3248 // This member is required. 3249 TimeoutType WorkflowExecutionTimeoutType 3250} 3251 3252// Represents a workflow type. 3253type WorkflowType struct { 3254 3255 // The name of the workflow type. The combination of workflow type name and version 3256 // must be unique with in a domain. 3257 // 3258 // This member is required. 3259 Name *string 3260 3261 // The version of the workflow type. The combination of workflow type name and 3262 // version must be unique with in a domain. 3263 // 3264 // This member is required. 3265 Version *string 3266} 3267 3268// The configuration settings of a workflow type. 3269type WorkflowTypeConfiguration struct { 3270 3271 // The default policy to use for the child workflow executions when a workflow 3272 // execution of this type is terminated, by calling the TerminateWorkflowExecution 3273 // action explicitly or due to an expired timeout. This default can be overridden 3274 // when starting a workflow execution using the StartWorkflowExecution action or 3275 // the StartChildWorkflowExecutionDecision. The supported child policies are: 3276 // 3277 // * 3278 // TERMINATE – The child executions are terminated. 3279 // 3280 // * REQUEST_CANCEL – A request 3281 // to cancel is attempted for each child execution by recording a 3282 // WorkflowExecutionCancelRequested event in its history. It is up to the decider 3283 // to take appropriate actions when it receives an execution history with this 3284 // event. 3285 // 3286 // * ABANDON – No action is taken. The child executions continue to run. 3287 DefaultChildPolicy ChildPolicy 3288 3289 // The default maximum duration, specified when registering the workflow type, for 3290 // executions of this workflow type. This default can be overridden when starting a 3291 // workflow execution using the StartWorkflowExecution action or the 3292 // StartChildWorkflowExecutionDecision. The duration is specified in seconds, an 3293 // integer greater than or equal to 0. You can use NONE to specify unlimited 3294 // duration. 3295 DefaultExecutionStartToCloseTimeout *string 3296 3297 // The default IAM role attached to this workflow type. Executions of this workflow 3298 // type need IAM roles to invoke Lambda functions. If you don't specify an IAM role 3299 // when starting this workflow type, the default Lambda role is attached to the 3300 // execution. For more information, see 3301 // https://docs.aws.amazon.com/amazonswf/latest/developerguide/lambda-task.html 3302 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/lambda-task.html) 3303 // in the Amazon SWF Developer Guide. 3304 DefaultLambdaRole *string 3305 3306 // The default task list, specified when registering the workflow type, for 3307 // decisions tasks scheduled for workflow executions of this type. This default can 3308 // be overridden when starting a workflow execution using the 3309 // StartWorkflowExecution action or the StartChildWorkflowExecutionDecision. 3310 DefaultTaskList *TaskList 3311 3312 // The default task priority, specified when registering the workflow type, for all 3313 // decision tasks of this workflow type. This default can be overridden when 3314 // starting a workflow execution using the StartWorkflowExecution action or the 3315 // StartChildWorkflowExecution decision. Valid values are integers that range from 3316 // Java's Integer.MIN_VALUE (-2147483648) to Integer.MAX_VALUE (2147483647). Higher 3317 // numbers indicate higher priority. For more information about setting task 3318 // priority, see Setting Task Priority 3319 // (https://docs.aws.amazon.com/amazonswf/latest/developerguide/programming-priority.html) 3320 // in the Amazon SWF Developer Guide. 3321 DefaultTaskPriority *string 3322 3323 // The default maximum duration, specified when registering the workflow type, that 3324 // a decision task for executions of this workflow type might take before returning 3325 // completion or failure. If the task doesn'tdo close in the specified time then 3326 // the task is automatically timed out and rescheduled. If the decider eventually 3327 // reports a completion or failure, it is ignored. This default can be overridden 3328 // when starting a workflow execution using the StartWorkflowExecution action or 3329 // the StartChildWorkflowExecutionDecision. The duration is specified in seconds, 3330 // an integer greater than or equal to 0. You can use NONE to specify unlimited 3331 // duration. 3332 DefaultTaskStartToCloseTimeout *string 3333} 3334 3335// Used to filter workflow execution query results by type. Each parameter, if 3336// specified, defines a rule that must be satisfied by each returned result. 3337type WorkflowTypeFilter struct { 3338 3339 // Name of the workflow type. 3340 // 3341 // This member is required. 3342 Name *string 3343 3344 // Version of the workflow type. 3345 Version *string 3346} 3347 3348// Contains information about a workflow type. 3349type WorkflowTypeInfo struct { 3350 3351 // The date when this type was registered. 3352 // 3353 // This member is required. 3354 CreationDate *time.Time 3355 3356 // The current status of the workflow type. 3357 // 3358 // This member is required. 3359 Status RegistrationStatus 3360 3361 // The workflow type this information is about. 3362 // 3363 // This member is required. 3364 WorkflowType *WorkflowType 3365 3366 // If the type is in deprecated state, then it is set to the date when the type was 3367 // deprecated. 3368 DeprecationDate *time.Time 3369 3370 // The description of the type registered through RegisterWorkflowType. 3371 Description *string 3372} 3373