aws-sdk-states 1.54.0 → 1.55.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -268,6 +268,24 @@ module Aws::States
268
268
  include Aws::Structure
269
269
  end
270
270
 
271
+ # Updating or deleting a resource can cause an inconsistent state. This
272
+ # error occurs when there're concurrent requests for
273
+ # DeleteStateMachineVersion, PublishStateMachineVersion, or
274
+ # UpdateStateMachine with the `publish` parameter set to `true`.
275
+ #
276
+ # HTTP Status Code: 409
277
+ #
278
+ # @!attribute [rw] message
279
+ # @return [String]
280
+ #
281
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ConflictException AWS API Documentation
282
+ #
283
+ class ConflictException < Struct.new(
284
+ :message)
285
+ SENSITIVE = []
286
+ include Aws::Structure
287
+ end
288
+
271
289
  # @!attribute [rw] name
272
290
  # The name of the activity to create. This name must be unique for
273
291
  # your Amazon Web Services account and region for 90 days. For more
@@ -336,6 +354,55 @@ module Aws::States
336
354
  include Aws::Structure
337
355
  end
338
356
 
357
+ # @!attribute [rw] description
358
+ # A description for the state machine alias.
359
+ # @return [String]
360
+ #
361
+ # @!attribute [rw] name
362
+ # The name of the state machine alias.
363
+ #
364
+ # To avoid conflict with version ARNs, don't use an integer in the
365
+ # name of the alias.
366
+ # @return [String]
367
+ #
368
+ # @!attribute [rw] routing_configuration
369
+ # The routing configuration of a state machine alias. The routing
370
+ # configuration shifts execution traffic between two state machine
371
+ # versions. `routingConfiguration` contains an array of
372
+ # `RoutingConfig` objects that specify up to two state machine
373
+ # versions. Step Functions then randomly choses which version to run
374
+ # an execution with based on the weight assigned to each
375
+ # `RoutingConfig`.
376
+ # @return [Array<Types::RoutingConfigurationListItem>]
377
+ #
378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachineAliasInput AWS API Documentation
379
+ #
380
+ class CreateStateMachineAliasInput < Struct.new(
381
+ :description,
382
+ :name,
383
+ :routing_configuration)
384
+ SENSITIVE = [:description]
385
+ include Aws::Structure
386
+ end
387
+
388
+ # @!attribute [rw] state_machine_alias_arn
389
+ # The Amazon Resource Name (ARN) that identifies the created state
390
+ # machine alias.
391
+ # @return [String]
392
+ #
393
+ # @!attribute [rw] creation_date
394
+ # The date the state machine alias was created.
395
+ # @return [Time]
396
+ #
397
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachineAliasOutput AWS API Documentation
398
+ #
399
+ class CreateStateMachineAliasOutput < Struct.new(
400
+ :state_machine_alias_arn,
401
+ :creation_date)
402
+ SENSITIVE = []
403
+ include Aws::Structure
404
+ end
405
+
339
406
  # @!attribute [rw] name
340
407
  # The name of the state machine.
341
408
  #
@@ -409,6 +476,18 @@ module Aws::States
409
476
  # Selects whether X-Ray tracing is enabled.
410
477
  # @return [Types::TracingConfiguration]
411
478
  #
479
+ # @!attribute [rw] publish
480
+ # Set to `true` to publish the first version of the state machine
481
+ # during creation. The default is `false`.
482
+ # @return [Boolean]
483
+ #
484
+ # @!attribute [rw] version_description
485
+ # Sets description about the state machine version. You can only set
486
+ # the description if the `publish` parameter is set to `true`.
487
+ # Otherwise, if you set `versionDescription`, but `publish` to
488
+ # `false`, this API action throws `ValidationException`.
489
+ # @return [String]
490
+ #
412
491
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachineInput AWS API Documentation
413
492
  #
414
493
  class CreateStateMachineInput < Struct.new(
@@ -418,8 +497,10 @@ module Aws::States
418
497
  :type,
419
498
  :logging_configuration,
420
499
  :tags,
421
- :tracing_configuration)
422
- SENSITIVE = [:definition]
500
+ :tracing_configuration,
501
+ :publish,
502
+ :version_description)
503
+ SENSITIVE = [:definition, :version_description]
423
504
  include Aws::Structure
424
505
  end
425
506
 
@@ -432,11 +513,18 @@ module Aws::States
432
513
  # The date the state machine is created.
433
514
  # @return [Time]
434
515
  #
516
+ # @!attribute [rw] state_machine_version_arn
517
+ # The Amazon Resource Name (ARN) that identifies the created state
518
+ # machine version. If you do not set the `publish` parameter to
519
+ # `true`, this field returns null value.
520
+ # @return [String]
521
+ #
435
522
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/CreateStateMachineOutput AWS API Documentation
436
523
  #
437
524
  class CreateStateMachineOutput < Struct.new(
438
525
  :state_machine_arn,
439
- :creation_date)
526
+ :creation_date,
527
+ :state_machine_version_arn)
440
528
  SENSITIVE = []
441
529
  include Aws::Structure
442
530
  end
@@ -457,6 +545,22 @@ module Aws::States
457
545
  #
458
546
  class DeleteActivityOutput < Aws::EmptyStructure; end
459
547
 
548
+ # @!attribute [rw] state_machine_alias_arn
549
+ # The Amazon Resource Name (ARN) of the state machine alias to delete.
550
+ # @return [String]
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachineAliasInput AWS API Documentation
553
+ #
554
+ class DeleteStateMachineAliasInput < Struct.new(
555
+ :state_machine_alias_arn)
556
+ SENSITIVE = []
557
+ include Aws::Structure
558
+ end
559
+
560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachineAliasOutput AWS API Documentation
561
+ #
562
+ class DeleteStateMachineAliasOutput < Aws::EmptyStructure; end
563
+
460
564
  # @!attribute [rw] state_machine_arn
461
565
  # The Amazon Resource Name (ARN) of the state machine to delete.
462
566
  # @return [String]
@@ -473,6 +577,23 @@ module Aws::States
473
577
  #
474
578
  class DeleteStateMachineOutput < Aws::EmptyStructure; end
475
579
 
580
+ # @!attribute [rw] state_machine_version_arn
581
+ # The Amazon Resource Name (ARN) of the state machine version to
582
+ # delete.
583
+ # @return [String]
584
+ #
585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachineVersionInput AWS API Documentation
586
+ #
587
+ class DeleteStateMachineVersionInput < Struct.new(
588
+ :state_machine_version_arn)
589
+ SENSITIVE = []
590
+ include Aws::Structure
591
+ end
592
+
593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DeleteStateMachineVersionOutput AWS API Documentation
594
+ #
595
+ class DeleteStateMachineVersionOutput < Aws::EmptyStructure; end
596
+
476
597
  # @!attribute [rw] activity_arn
477
598
  # The Amazon Resource Name (ARN) of the activity to describe.
478
599
  # @return [String]
@@ -570,7 +691,7 @@ module Aws::States
570
691
  # @return [Time]
571
692
  #
572
693
  # @!attribute [rw] stop_date
573
- # If the execution has already ended, the date the execution stopped.
694
+ # If the execution ended, the date the execution stopped.
574
695
  # @return [Time]
575
696
  #
576
697
  # @!attribute [rw] input
@@ -614,6 +735,27 @@ module Aws::States
614
735
  # The cause string if the state machine execution failed.
615
736
  # @return [String]
616
737
  #
738
+ # @!attribute [rw] state_machine_version_arn
739
+ # The Amazon Resource Name (ARN) of the state machine version
740
+ # associated with the execution. The version ARN is a combination of
741
+ # state machine ARN and the version number separated by a colon (:).
742
+ # For example, `stateMachineARN:1`.
743
+ #
744
+ # If you start an execution from a `StartExecution` request without
745
+ # specifying a state machine version or alias ARN, Step Functions
746
+ # returns a null value.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] state_machine_alias_arn
750
+ # The Amazon Resource Name (ARN) of the state machine alias associated
751
+ # with the execution. The alias ARN is a combination of state machine
752
+ # ARN and the alias name separated by a colon (:). For example,
753
+ # `stateMachineARN:PROD`.
754
+ #
755
+ # If you start an execution from a `StartExecution` request with a
756
+ # state machine version ARN, this field will be null.
757
+ # @return [String]
758
+ #
617
759
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeExecutionOutput AWS API Documentation
618
760
  #
619
761
  class DescribeExecutionOutput < Struct.new(
@@ -630,7 +772,9 @@ module Aws::States
630
772
  :trace_header,
631
773
  :map_run_arn,
632
774
  :error,
633
- :cause)
775
+ :cause,
776
+ :state_machine_version_arn,
777
+ :state_machine_alias_arn)
634
778
  SENSITIVE = [:input, :output, :error, :cause]
635
779
  include Aws::Structure
636
780
  end
@@ -713,6 +857,58 @@ module Aws::States
713
857
  include Aws::Structure
714
858
  end
715
859
 
860
+ # @!attribute [rw] state_machine_alias_arn
861
+ # The Amazon Resource Name (ARN) of the state machine alias.
862
+ # @return [String]
863
+ #
864
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineAliasInput AWS API Documentation
865
+ #
866
+ class DescribeStateMachineAliasInput < Struct.new(
867
+ :state_machine_alias_arn)
868
+ SENSITIVE = []
869
+ include Aws::Structure
870
+ end
871
+
872
+ # @!attribute [rw] state_machine_alias_arn
873
+ # The Amazon Resource Name (ARN) of the state machine alias.
874
+ # @return [String]
875
+ #
876
+ # @!attribute [rw] name
877
+ # The name of the state machine alias.
878
+ # @return [String]
879
+ #
880
+ # @!attribute [rw] description
881
+ # A description of the alias.
882
+ # @return [String]
883
+ #
884
+ # @!attribute [rw] routing_configuration
885
+ # The routing configuration of the alias.
886
+ # @return [Array<Types::RoutingConfigurationListItem>]
887
+ #
888
+ # @!attribute [rw] creation_date
889
+ # The date the state machine alias was created.
890
+ # @return [Time]
891
+ #
892
+ # @!attribute [rw] update_date
893
+ # The date the state machine alias was last updated.
894
+ #
895
+ # For a newly created state machine, this is the same as the creation
896
+ # date.
897
+ # @return [Time]
898
+ #
899
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineAliasOutput AWS API Documentation
900
+ #
901
+ class DescribeStateMachineAliasOutput < Struct.new(
902
+ :state_machine_alias_arn,
903
+ :name,
904
+ :description,
905
+ :routing_configuration,
906
+ :creation_date,
907
+ :update_date)
908
+ SENSITIVE = [:description]
909
+ include Aws::Structure
910
+ end
911
+
716
912
  # @!attribute [rw] execution_arn
717
913
  # The Amazon Resource Name (ARN) of the execution you want state
718
914
  # machine information for.
@@ -777,6 +973,16 @@ module Aws::States
777
973
  # workflow execution that was started by a Distributed Map state.
778
974
  # @return [String]
779
975
  #
976
+ # @!attribute [rw] revision_id
977
+ # The revision identifier for the state machine. The first revision ID
978
+ # when you create the state machine is null.
979
+ #
980
+ # Use the state machine `revisionId` parameter to compare the revision
981
+ # of a state machine with the configuration of the state machine used
982
+ # for executions without performing a diff of the properties, such as
983
+ # `definition` and `roleArn`.
984
+ # @return [String]
985
+ #
780
986
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineForExecutionOutput AWS API Documentation
781
987
  #
782
988
  class DescribeStateMachineForExecutionOutput < Struct.new(
@@ -788,13 +994,20 @@ module Aws::States
788
994
  :logging_configuration,
789
995
  :tracing_configuration,
790
996
  :map_run_arn,
791
- :label)
997
+ :label,
998
+ :revision_id)
792
999
  SENSITIVE = [:definition]
793
1000
  include Aws::Structure
794
1001
  end
795
1002
 
796
1003
  # @!attribute [rw] state_machine_arn
797
- # The Amazon Resource Name (ARN) of the state machine to describe.
1004
+ # The Amazon Resource Name (ARN) of the state machine for which you
1005
+ # want the information.
1006
+ #
1007
+ # If you specify a state machine version ARN, this API returns details
1008
+ # about that version. The version ARN is a combination of state
1009
+ # machine ARN and the version number separated by a colon (:). For
1010
+ # example, `stateMachineARN:1`.
798
1011
  # @return [String]
799
1012
  #
800
1013
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineInput AWS API Documentation
@@ -807,6 +1020,11 @@ module Aws::States
807
1020
 
808
1021
  # @!attribute [rw] state_machine_arn
809
1022
  # The Amazon Resource Name (ARN) that identifies the state machine.
1023
+ #
1024
+ # If you specified a state machine version ARN in your request, the
1025
+ # API returns the version ARN. The version ARN is a combination of
1026
+ # state machine ARN and the version number separated by a colon (:).
1027
+ # For example, `stateMachineARN:1`.
810
1028
  # @return [String]
811
1029
  #
812
1030
  # @!attribute [rw] name
@@ -853,6 +1071,9 @@ module Aws::States
853
1071
  #
854
1072
  # @!attribute [rw] creation_date
855
1073
  # The date the state machine is created.
1074
+ #
1075
+ # For a state machine version, `creationDate` is the date the version
1076
+ # was created.
856
1077
  # @return [Time]
857
1078
  #
858
1079
  # @!attribute [rw] logging_configuration
@@ -870,6 +1091,18 @@ module Aws::States
870
1091
  # specified in input is a qualified state machine ARN.
871
1092
  # @return [String]
872
1093
  #
1094
+ # @!attribute [rw] revision_id
1095
+ # The revision identifier for the state machine.
1096
+ #
1097
+ # Use the `revisionId` parameter to compare between versions of a
1098
+ # state machine configuration used for executions without performing a
1099
+ # diff of the properties, such as `definition` and `roleArn`.
1100
+ # @return [String]
1101
+ #
1102
+ # @!attribute [rw] description
1103
+ # The description of the state machine version.
1104
+ # @return [String]
1105
+ #
873
1106
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/DescribeStateMachineOutput AWS API Documentation
874
1107
  #
875
1108
  class DescribeStateMachineOutput < Struct.new(
@@ -882,8 +1115,10 @@ module Aws::States
882
1115
  :creation_date,
883
1116
  :logging_configuration,
884
1117
  :tracing_configuration,
885
- :label)
886
- SENSITIVE = [:definition]
1118
+ :label,
1119
+ :revision_id,
1120
+ :description)
1121
+ SENSITIVE = [:definition, :description]
887
1122
  include Aws::Structure
888
1123
  end
889
1124
 
@@ -978,7 +1213,8 @@ module Aws::States
978
1213
  # @return [String]
979
1214
  #
980
1215
  # @!attribute [rw] state_machine_arn
981
- # The Amazon Resource Name (ARN) of the executed state machine.
1216
+ # The Amazon Resource Name (ARN) of the state machine that ran the
1217
+ # execution.
982
1218
  # @return [String]
983
1219
  #
984
1220
  # @!attribute [rw] name
@@ -1026,6 +1262,26 @@ module Aws::States
1026
1262
  # `ListExecutions`, the `itemCount` field isn't returned.
1027
1263
  # @return [Integer]
1028
1264
  #
1265
+ # @!attribute [rw] state_machine_version_arn
1266
+ # The Amazon Resource Name (ARN) of the state machine version
1267
+ # associated with the execution.
1268
+ #
1269
+ # If the state machine execution was started with an unqualified ARN,
1270
+ # it returns null.
1271
+ #
1272
+ # If the execution was started using a `stateMachineAliasArn`, both
1273
+ # the `stateMachineAliasArn` and `stateMachineVersionArn` parameters
1274
+ # contain the respective values.
1275
+ # @return [String]
1276
+ #
1277
+ # @!attribute [rw] state_machine_alias_arn
1278
+ # The Amazon Resource Name (ARN) of the state machine alias used to
1279
+ # start an execution.
1280
+ #
1281
+ # If the state machine execution was started with an unqualified ARN
1282
+ # or a version ARN, it returns null.
1283
+ # @return [String]
1284
+ #
1029
1285
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ExecutionListItem AWS API Documentation
1030
1286
  #
1031
1287
  class ExecutionListItem < Struct.new(
@@ -1036,7 +1292,9 @@ module Aws::States
1036
1292
  :start_date,
1037
1293
  :stop_date,
1038
1294
  :map_run_arn,
1039
- :item_count)
1295
+ :item_count,
1296
+ :state_machine_version_arn,
1297
+ :state_machine_alias_arn)
1040
1298
  SENSITIVE = []
1041
1299
  include Aws::Structure
1042
1300
  end
@@ -1057,12 +1315,24 @@ module Aws::States
1057
1315
  # Lambda tasks.
1058
1316
  # @return [String]
1059
1317
  #
1318
+ # @!attribute [rw] state_machine_alias_arn
1319
+ # The Amazon Resource Name (ARN) that identifies a state machine alias
1320
+ # used for starting the state machine execution.
1321
+ # @return [String]
1322
+ #
1323
+ # @!attribute [rw] state_machine_version_arn
1324
+ # The Amazon Resource Name (ARN) that identifies a state machine
1325
+ # version used for starting the state machine execution.
1326
+ # @return [String]
1327
+ #
1060
1328
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ExecutionStartedEventDetails AWS API Documentation
1061
1329
  #
1062
1330
  class ExecutionStartedEventDetails < Struct.new(
1063
1331
  :input,
1064
1332
  :input_details,
1065
- :role_arn)
1333
+ :role_arn,
1334
+ :state_machine_alias_arn,
1335
+ :state_machine_version_arn)
1066
1336
  SENSITIVE = [:input]
1067
1337
  include Aws::Structure
1068
1338
  end
@@ -1739,6 +2009,15 @@ module Aws::States
1739
2009
  #
1740
2010
  # You can specify either a `mapRunArn` or a `stateMachineArn`, but not
1741
2011
  # both.
2012
+ #
2013
+ # You can also return a list of executions associated with a specific
2014
+ # [alias][1] or [version][2], by specifying an alias ARN or a version
2015
+ # ARN in the `stateMachineArn` parameter.
2016
+ #
2017
+ #
2018
+ #
2019
+ # [1]: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-alias.html
2020
+ # [2]: https://docs.aws.amazon.com/step-functions/latest/dg/concepts-state-machine-version.html
1742
2021
  # @return [String]
1743
2022
  #
1744
2023
  # @!attribute [rw] status_filter
@@ -1872,6 +2151,120 @@ module Aws::States
1872
2151
  include Aws::Structure
1873
2152
  end
1874
2153
 
2154
+ # @!attribute [rw] state_machine_arn
2155
+ # The Amazon Resource Name (ARN) of the state machine for which you
2156
+ # want to list aliases.
2157
+ #
2158
+ # If you specify a state machine version ARN, this API returns a list
2159
+ # of aliases for that version.
2160
+ # @return [String]
2161
+ #
2162
+ # @!attribute [rw] next_token
2163
+ # If `nextToken` is returned, there are more results available. The
2164
+ # value of `nextToken` is a unique pagination token for each page.
2165
+ # Make the call again using the returned token to retrieve the next
2166
+ # page. Keep all other arguments unchanged. Each pagination token
2167
+ # expires after 24 hours. Using an expired pagination token will
2168
+ # return an *HTTP 400 InvalidToken* error.
2169
+ # @return [String]
2170
+ #
2171
+ # @!attribute [rw] max_results
2172
+ # The maximum number of results that are returned per call. You can
2173
+ # use `nextToken` to obtain further pages of results. The default is
2174
+ # 100 and the maximum allowed page size is 1000. A value of 0 uses the
2175
+ # default.
2176
+ #
2177
+ # This is only an upper limit. The actual number of results returned
2178
+ # per call might be fewer than the specified maximum.
2179
+ # @return [Integer]
2180
+ #
2181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachineAliasesInput AWS API Documentation
2182
+ #
2183
+ class ListStateMachineAliasesInput < Struct.new(
2184
+ :state_machine_arn,
2185
+ :next_token,
2186
+ :max_results)
2187
+ SENSITIVE = []
2188
+ include Aws::Structure
2189
+ end
2190
+
2191
+ # @!attribute [rw] state_machine_aliases
2192
+ # Aliases for the state machine.
2193
+ # @return [Array<Types::StateMachineAliasListItem>]
2194
+ #
2195
+ # @!attribute [rw] next_token
2196
+ # If `nextToken` is returned, there are more results available. The
2197
+ # value of `nextToken` is a unique pagination token for each page.
2198
+ # Make the call again using the returned token to retrieve the next
2199
+ # page. Keep all other arguments unchanged. Each pagination token
2200
+ # expires after 24 hours. Using an expired pagination token will
2201
+ # return an *HTTP 400 InvalidToken* error.
2202
+ # @return [String]
2203
+ #
2204
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachineAliasesOutput AWS API Documentation
2205
+ #
2206
+ class ListStateMachineAliasesOutput < Struct.new(
2207
+ :state_machine_aliases,
2208
+ :next_token)
2209
+ SENSITIVE = []
2210
+ include Aws::Structure
2211
+ end
2212
+
2213
+ # @!attribute [rw] state_machine_arn
2214
+ # The Amazon Resource Name (ARN) of the state machine.
2215
+ # @return [String]
2216
+ #
2217
+ # @!attribute [rw] next_token
2218
+ # If `nextToken` is returned, there are more results available. The
2219
+ # value of `nextToken` is a unique pagination token for each page.
2220
+ # Make the call again using the returned token to retrieve the next
2221
+ # page. Keep all other arguments unchanged. Each pagination token
2222
+ # expires after 24 hours. Using an expired pagination token will
2223
+ # return an *HTTP 400 InvalidToken* error.
2224
+ # @return [String]
2225
+ #
2226
+ # @!attribute [rw] max_results
2227
+ # The maximum number of results that are returned per call. You can
2228
+ # use `nextToken` to obtain further pages of results. The default is
2229
+ # 100 and the maximum allowed page size is 1000. A value of 0 uses the
2230
+ # default.
2231
+ #
2232
+ # This is only an upper limit. The actual number of results returned
2233
+ # per call might be fewer than the specified maximum.
2234
+ # @return [Integer]
2235
+ #
2236
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachineVersionsInput AWS API Documentation
2237
+ #
2238
+ class ListStateMachineVersionsInput < Struct.new(
2239
+ :state_machine_arn,
2240
+ :next_token,
2241
+ :max_results)
2242
+ SENSITIVE = []
2243
+ include Aws::Structure
2244
+ end
2245
+
2246
+ # @!attribute [rw] state_machine_versions
2247
+ # Versions for the state machine.
2248
+ # @return [Array<Types::StateMachineVersionListItem>]
2249
+ #
2250
+ # @!attribute [rw] next_token
2251
+ # If `nextToken` is returned, there are more results available. The
2252
+ # value of `nextToken` is a unique pagination token for each page.
2253
+ # Make the call again using the returned token to retrieve the next
2254
+ # page. Keep all other arguments unchanged. Each pagination token
2255
+ # expires after 24 hours. Using an expired pagination token will
2256
+ # return an *HTTP 400 InvalidToken* error.
2257
+ # @return [String]
2258
+ #
2259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ListStateMachineVersionsOutput AWS API Documentation
2260
+ #
2261
+ class ListStateMachineVersionsOutput < Struct.new(
2262
+ :state_machine_versions,
2263
+ :next_token)
2264
+ SENSITIVE = []
2265
+ include Aws::Structure
2266
+ end
2267
+
1875
2268
  # @!attribute [rw] max_results
1876
2269
  # The maximum number of results that are returned per call. You can
1877
2270
  # use `nextToken` to obtain further pages of results. The default is
@@ -2236,8 +2629,61 @@ module Aws::States
2236
2629
  include Aws::Structure
2237
2630
  end
2238
2631
 
2239
- # Could not find the referenced resource. Only state machine and
2240
- # activity ARNs are supported.
2632
+ # @!attribute [rw] state_machine_arn
2633
+ # The Amazon Resource Name (ARN) of the state machine.
2634
+ # @return [String]
2635
+ #
2636
+ # @!attribute [rw] revision_id
2637
+ # Only publish the state machine version if the current state
2638
+ # machine's revision ID matches the specified ID.
2639
+ #
2640
+ # Use this option to avoid publishing a version if the state machine
2641
+ # changed since you last updated it. If the specified revision ID
2642
+ # doesn't match the state machine's current revision ID, the API
2643
+ # returns `ConflictException`.
2644
+ #
2645
+ # <note markdown="1"> To specify an initial revision ID for a state machine with no
2646
+ # revision ID assigned, specify the string `INITIAL` for the
2647
+ # `revisionId` parameter. For example, you can specify a `revisionID`
2648
+ # of `INITIAL` when you create a state machine using the
2649
+ # CreateStateMachine API action.
2650
+ #
2651
+ # </note>
2652
+ # @return [String]
2653
+ #
2654
+ # @!attribute [rw] description
2655
+ # An optional description of the state machine version.
2656
+ # @return [String]
2657
+ #
2658
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/PublishStateMachineVersionInput AWS API Documentation
2659
+ #
2660
+ class PublishStateMachineVersionInput < Struct.new(
2661
+ :state_machine_arn,
2662
+ :revision_id,
2663
+ :description)
2664
+ SENSITIVE = [:description]
2665
+ include Aws::Structure
2666
+ end
2667
+
2668
+ # @!attribute [rw] creation_date
2669
+ # The date the version was created.
2670
+ # @return [Time]
2671
+ #
2672
+ # @!attribute [rw] state_machine_version_arn
2673
+ # The Amazon Resource Name (ARN) (ARN) that identifies the state
2674
+ # machine version.
2675
+ # @return [String]
2676
+ #
2677
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/PublishStateMachineVersionOutput AWS API Documentation
2678
+ #
2679
+ class PublishStateMachineVersionOutput < Struct.new(
2680
+ :creation_date,
2681
+ :state_machine_version_arn)
2682
+ SENSITIVE = []
2683
+ include Aws::Structure
2684
+ end
2685
+
2686
+ # Could not find the referenced resource.
2241
2687
  #
2242
2688
  # @!attribute [rw] message
2243
2689
  # @return [String]
@@ -2254,6 +2700,34 @@ module Aws::States
2254
2700
  include Aws::Structure
2255
2701
  end
2256
2702
 
2703
+ # Contains details about the routing configuration of a state machine
2704
+ # alias. In a routing configuration, you define an array of objects that
2705
+ # specify up to two state machine versions. You also specify the
2706
+ # percentage of traffic to be routed to each version.
2707
+ #
2708
+ # @!attribute [rw] state_machine_version_arn
2709
+ # The Amazon Resource Name (ARN) that identifies one or two state
2710
+ # machine versions defined in the routing configuration.
2711
+ #
2712
+ # If you specify the ARN of a second version, it must belong to the
2713
+ # same state machine as the first version.
2714
+ # @return [String]
2715
+ #
2716
+ # @!attribute [rw] weight
2717
+ # The percentage of traffic you want to route to the second state
2718
+ # machine version. The sum of the weights in the routing configuration
2719
+ # must be equal to 100.
2720
+ # @return [Integer]
2721
+ #
2722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/RoutingConfigurationListItem AWS API Documentation
2723
+ #
2724
+ class RoutingConfigurationListItem < Struct.new(
2725
+ :state_machine_version_arn,
2726
+ :weight)
2727
+ SENSITIVE = []
2728
+ include Aws::Structure
2729
+ end
2730
+
2257
2731
  # @!attribute [rw] task_token
2258
2732
  # The token that represents this task. Task tokens are generated by
2259
2733
  # Step Functions when tasks are assigned to a worker, or in the
@@ -2339,14 +2813,63 @@ module Aws::States
2339
2813
  #
2340
2814
  class SendTaskSuccessOutput < Aws::EmptyStructure; end
2341
2815
 
2816
+ # The request would cause a service quota to be exceeded.
2817
+ #
2818
+ # HTTP Status Code: 402
2819
+ #
2820
+ # @!attribute [rw] message
2821
+ # @return [String]
2822
+ #
2823
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/ServiceQuotaExceededException AWS API Documentation
2824
+ #
2825
+ class ServiceQuotaExceededException < Struct.new(
2826
+ :message)
2827
+ SENSITIVE = []
2828
+ include Aws::Structure
2829
+ end
2830
+
2342
2831
  # @!attribute [rw] state_machine_arn
2343
2832
  # The Amazon Resource Name (ARN) of the state machine to execute.
2833
+ #
2834
+ # The `stateMachineArn` parameter accepts one of the following inputs:
2835
+ #
2836
+ # * **An unqualified state machine ARN** – Refers to a state machine
2837
+ # ARN that isn't qualified with a version or alias ARN. The
2838
+ # following is an example of an unqualified state machine ARN.
2839
+ #
2840
+ # `arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>`
2841
+ #
2842
+ # Step Functions doesn't associate state machine executions that
2843
+ # you start with an unqualified ARN with a version. This is true
2844
+ # even if that version uses the same revision that the execution
2845
+ # used.
2846
+ #
2847
+ # * **A state machine version ARN** – Refers to a version ARN, which
2848
+ # is a combination of state machine ARN and the version number
2849
+ # separated by a colon (:). The following is an example of the ARN
2850
+ # for version 10.
2851
+ #
2852
+ # `arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine>:10`
2853
+ #
2854
+ # Step Functions doesn't associate executions that you start with a
2855
+ # version ARN with any aliases that point to that version.
2856
+ #
2857
+ # * **A state machine alias ARN** – Refers to an alias ARN, which is a
2858
+ # combination of state machine ARN and the alias name separated by a
2859
+ # colon (:). The following is an example of the ARN for an alias
2860
+ # named `PROD`.
2861
+ #
2862
+ # `arn:<partition>:states:<region>:<account-id>:stateMachine:<myStateMachine:PROD>`
2863
+ #
2864
+ # Step Functions associates executions that you start with an alias
2865
+ # ARN with that alias and the state machine version used for that
2866
+ # execution.
2344
2867
  # @return [String]
2345
2868
  #
2346
2869
  # @!attribute [rw] name
2347
- # The name of the execution. This name must be unique for your Amazon
2348
- # Web Services account, region, and state machine for 90 days. For
2349
- # more information, see [ Limits Related to State Machine
2870
+ # Optional name of the execution. This name must be unique for your
2871
+ # Amazon Web Services account, Region, and state machine for 90 days.
2872
+ # For more information, see [ Limits Related to State Machine
2350
2873
  # Executions][1] in the *Step Functions Developer Guide*.
2351
2874
  #
2352
2875
  # A name must *not* contain:
@@ -2608,6 +3131,28 @@ module Aws::States
2608
3131
  include Aws::Structure
2609
3132
  end
2610
3133
 
3134
+ # Contains details about a specific state machine alias.
3135
+ #
3136
+ # @!attribute [rw] state_machine_alias_arn
3137
+ # The Amazon Resource Name (ARN) that identifies a state machine
3138
+ # alias. The alias ARN is a combination of state machine ARN and the
3139
+ # alias name separated by a colon (:). For example,
3140
+ # `stateMachineARN:PROD`.
3141
+ # @return [String]
3142
+ #
3143
+ # @!attribute [rw] creation_date
3144
+ # The creation date of a state machine alias.
3145
+ # @return [Time]
3146
+ #
3147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/StateMachineAliasListItem AWS API Documentation
3148
+ #
3149
+ class StateMachineAliasListItem < Struct.new(
3150
+ :state_machine_alias_arn,
3151
+ :creation_date)
3152
+ SENSITIVE = []
3153
+ include Aws::Structure
3154
+ end
3155
+
2611
3156
  # A state machine with the same name but a different definition or role
2612
3157
  # ARN already exists.
2613
3158
  #
@@ -2716,6 +3261,28 @@ module Aws::States
2716
3261
  include Aws::Structure
2717
3262
  end
2718
3263
 
3264
+ # Contains details about a specific state machine version.
3265
+ #
3266
+ # @!attribute [rw] state_machine_version_arn
3267
+ # The Amazon Resource Name (ARN) that identifies a state machine
3268
+ # version. The version ARN is a combination of state machine ARN and
3269
+ # the version number separated by a colon (:). For example,
3270
+ # `stateMachineARN:1`.
3271
+ # @return [String]
3272
+ #
3273
+ # @!attribute [rw] creation_date
3274
+ # The creation date of a state machine version.
3275
+ # @return [Time]
3276
+ #
3277
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/StateMachineVersionListItem AWS API Documentation
3278
+ #
3279
+ class StateMachineVersionListItem < Struct.new(
3280
+ :state_machine_version_arn,
3281
+ :creation_date)
3282
+ SENSITIVE = []
3283
+ include Aws::Structure
3284
+ end
3285
+
2719
3286
  # @!attribute [rw] execution_arn
2720
3287
  # The Amazon Resource Name (ARN) of the execution to stop.
2721
3288
  # @return [String]
@@ -3183,6 +3750,43 @@ module Aws::States
3183
3750
  #
3184
3751
  class UpdateMapRunOutput < Aws::EmptyStructure; end
3185
3752
 
3753
+ # @!attribute [rw] state_machine_alias_arn
3754
+ # The Amazon Resource Name (ARN) of the state machine alias.
3755
+ # @return [String]
3756
+ #
3757
+ # @!attribute [rw] description
3758
+ # A description of the state machine alias.
3759
+ # @return [String]
3760
+ #
3761
+ # @!attribute [rw] routing_configuration
3762
+ # The routing configuration of the state machine alias.
3763
+ #
3764
+ # An array of `RoutingConfig` objects that specifies up to two state
3765
+ # machine versions that the alias starts executions for.
3766
+ # @return [Array<Types::RoutingConfigurationListItem>]
3767
+ #
3768
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachineAliasInput AWS API Documentation
3769
+ #
3770
+ class UpdateStateMachineAliasInput < Struct.new(
3771
+ :state_machine_alias_arn,
3772
+ :description,
3773
+ :routing_configuration)
3774
+ SENSITIVE = [:description]
3775
+ include Aws::Structure
3776
+ end
3777
+
3778
+ # @!attribute [rw] update_date
3779
+ # The date and time the state machine alias was updated.
3780
+ # @return [Time]
3781
+ #
3782
+ # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachineAliasOutput AWS API Documentation
3783
+ #
3784
+ class UpdateStateMachineAliasOutput < Struct.new(
3785
+ :update_date)
3786
+ SENSITIVE = []
3787
+ include Aws::Structure
3788
+ end
3789
+
3186
3790
  # @!attribute [rw] state_machine_arn
3187
3791
  # The Amazon Resource Name (ARN) of the state machine.
3188
3792
  # @return [String]
@@ -3201,7 +3805,7 @@ module Aws::States
3201
3805
  # @return [String]
3202
3806
  #
3203
3807
  # @!attribute [rw] logging_configuration
3204
- # The `LoggingConfiguration` data type is used to set CloudWatch Logs
3808
+ # Use the `LoggingConfiguration` data type to set CloudWatch Logs
3205
3809
  # options.
3206
3810
  # @return [Types::LoggingConfiguration]
3207
3811
  #
@@ -3209,6 +3813,19 @@ module Aws::States
3209
3813
  # Selects whether X-Ray tracing is enabled.
3210
3814
  # @return [Types::TracingConfiguration]
3211
3815
  #
3816
+ # @!attribute [rw] publish
3817
+ # Specifies whether the state machine version is published. The
3818
+ # default is `false`. To publish a version after updating the state
3819
+ # machine, set `publish` to `true`.
3820
+ # @return [Boolean]
3821
+ #
3822
+ # @!attribute [rw] version_description
3823
+ # An optional description of the state machine version to publish.
3824
+ #
3825
+ # You can only specify the `versionDescription` parameter if you've
3826
+ # set `publish` to `true`.
3827
+ # @return [String]
3828
+ #
3212
3829
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachineInput AWS API Documentation
3213
3830
  #
3214
3831
  class UpdateStateMachineInput < Struct.new(
@@ -3216,8 +3833,10 @@ module Aws::States
3216
3833
  :definition,
3217
3834
  :role_arn,
3218
3835
  :logging_configuration,
3219
- :tracing_configuration)
3220
- SENSITIVE = [:definition]
3836
+ :tracing_configuration,
3837
+ :publish,
3838
+ :version_description)
3839
+ SENSITIVE = [:definition, :version_description]
3221
3840
  include Aws::Structure
3222
3841
  end
3223
3842
 
@@ -3225,10 +3844,24 @@ module Aws::States
3225
3844
  # The date and time the state machine was updated.
3226
3845
  # @return [Time]
3227
3846
  #
3847
+ # @!attribute [rw] revision_id
3848
+ # The revision identifier for the updated state machine.
3849
+ # @return [String]
3850
+ #
3851
+ # @!attribute [rw] state_machine_version_arn
3852
+ # The Amazon Resource Name (ARN) of the published state machine
3853
+ # version.
3854
+ #
3855
+ # If the `publish` parameter isn't set to `true`, this field returns
3856
+ # null.
3857
+ # @return [String]
3858
+ #
3228
3859
  # @see http://docs.aws.amazon.com/goto/WebAPI/states-2016-11-23/UpdateStateMachineOutput AWS API Documentation
3229
3860
  #
3230
3861
  class UpdateStateMachineOutput < Struct.new(
3231
- :update_date)
3862
+ :update_date,
3863
+ :revision_id,
3864
+ :state_machine_version_arn)
3232
3865
  SENSITIVE = []
3233
3866
  include Aws::Structure
3234
3867
  end