aws-sdk-states 1.53.0 → 1.55.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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