aws-sdk-dynamodb 1.84.0 → 1.118.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.
@@ -45,8 +45,8 @@ module Aws::DynamoDB
45
45
  include Aws::Structure
46
46
  end
47
47
 
48
- # Represents an attribute for describing the key schema for the table
49
- # and indexes.
48
+ # Represents an attribute for describing the schema for the table and
49
+ # indexes.
50
50
  #
51
51
  # @!attribute [rw] attribute_name
52
52
  # A name for the attribute.
@@ -715,7 +715,9 @@ module Aws::DynamoDB
715
715
  end
716
716
 
717
717
  # @!attribute [rw] responses
718
- # The response to each PartiQL statement in the batch.
718
+ # The response to each PartiQL statement in the batch. The values of
719
+ # the list are ordered according to the ordering of the request
720
+ # statements.
719
721
  # @return [Array<Types::BatchStatementResponse>]
720
722
  #
721
723
  # @!attribute [rw] consumed_capacity
@@ -735,9 +737,10 @@ module Aws::DynamoDB
735
737
  # Represents the input of a `BatchGetItem` operation.
736
738
  #
737
739
  # @!attribute [rw] request_items
738
- # A map of one or more table names and, for each table, a map that
739
- # describes one or more items to retrieve from that table. Each table
740
- # name can be used only once per `BatchGetItem` request.
740
+ # A map of one or more table names or table ARNs and, for each table,
741
+ # a map that describes one or more items to retrieve from that table.
742
+ # Each table name or ARN can be used only once per `BatchGetItem`
743
+ # request.
741
744
  #
742
745
  # Each element in the map of items to retrieve consists of the
743
746
  # following:
@@ -855,9 +858,9 @@ module Aws::DynamoDB
855
858
  # Represents the output of a `BatchGetItem` operation.
856
859
  #
857
860
  # @!attribute [rw] responses
858
- # A map of table name to a list of items. Each object in `Responses`
859
- # consists of a table name, along with a map of attribute data
860
- # consisting of the data type and attribute value.
861
+ # A map of table name or table ARN to a list of items. Each object in
862
+ # `Responses` consists of a table name or ARN, along with a map of
863
+ # attribute data consisting of the data type and attribute value.
861
864
  # @return [Hash<String,Array<Hash<String,Types::AttributeValue>>>]
862
865
  #
863
866
  # @!attribute [rw] unprocessed_keys
@@ -916,11 +919,17 @@ module Aws::DynamoDB
916
919
  # The error message associated with the PartiQL batch response.
917
920
  # @return [String]
918
921
  #
922
+ # @!attribute [rw] item
923
+ # The item which caused the condition check to fail. This will be set
924
+ # if ReturnValuesOnConditionCheckFailure is specified as `ALL_OLD`.
925
+ # @return [Hash<String,Types::AttributeValue>]
926
+ #
919
927
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/BatchStatementError AWS API Documentation
920
928
  #
921
929
  class BatchStatementError < Struct.new(
922
930
  :code,
923
- :message)
931
+ :message,
932
+ :item)
924
933
  SENSITIVE = []
925
934
  include Aws::Structure
926
935
  end
@@ -940,12 +949,22 @@ module Aws::DynamoDB
940
949
  # The read consistency of the PartiQL batch request.
941
950
  # @return [Boolean]
942
951
  #
952
+ # @!attribute [rw] return_values_on_condition_check_failure
953
+ # An optional parameter that returns the item attributes for a PartiQL
954
+ # batch request operation that failed a condition check.
955
+ #
956
+ # There is no additional cost associated with requesting a return
957
+ # value aside from the small network and processing overhead of
958
+ # receiving a larger response. No read capacity units are consumed.
959
+ # @return [String]
960
+ #
943
961
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/BatchStatementRequest AWS API Documentation
944
962
  #
945
963
  class BatchStatementRequest < Struct.new(
946
964
  :statement,
947
965
  :parameters,
948
- :consistent_read)
966
+ :consistent_read,
967
+ :return_values_on_condition_check_failure)
949
968
  SENSITIVE = []
950
969
  include Aws::Structure
951
970
  end
@@ -977,9 +996,9 @@ module Aws::DynamoDB
977
996
  # Represents the input of a `BatchWriteItem` operation.
978
997
  #
979
998
  # @!attribute [rw] request_items
980
- # A map of one or more table names and, for each table, a list of
981
- # operations to be performed (`DeleteRequest` or `PutRequest`). Each
982
- # element in the map consists of the following:
999
+ # A map of one or more table names or table ARNs and, for each table,
1000
+ # a list of operations to be performed (`DeleteRequest` or
1001
+ # `PutRequest`). Each element in the map consists of the following:
983
1002
  #
984
1003
  # * `DeleteRequest` - Perform a `DeleteItem` operation on the
985
1004
  # specified item. The item to be deleted is identified by a `Key`
@@ -1057,9 +1076,9 @@ module Aws::DynamoDB
1057
1076
  # subsequent `BatchWriteItem` operation. For more information, see
1058
1077
  # `RequestItems` in the Request Parameters section.
1059
1078
  #
1060
- # Each `UnprocessedItems` entry consists of a table name and, for that
1061
- # table, a list of operations to perform (`DeleteRequest` or
1062
- # `PutRequest`).
1079
+ # Each `UnprocessedItems` entry consists of a table name or table ARN
1080
+ # and, for that table, a list of operations to perform
1081
+ # (`DeleteRequest` or `PutRequest`).
1063
1082
  #
1064
1083
  # * `DeleteRequest` - Perform a `DeleteItem` operation on the
1065
1084
  # specified item. The item to be deleted is identified by a `Key`
@@ -1456,7 +1475,8 @@ module Aws::DynamoDB
1456
1475
  # @return [Hash<String,Types::AttributeValue>]
1457
1476
  #
1458
1477
  # @!attribute [rw] table_name
1459
- # Name of the table for the check item request.
1478
+ # Name of the table for the check item request. You can also provide
1479
+ # the Amazon Resource Name (ARN) of the table in this parameter.
1460
1480
  # @return [String]
1461
1481
  #
1462
1482
  # @!attribute [rw] condition_expression
@@ -1515,10 +1535,15 @@ module Aws::DynamoDB
1515
1535
  # The conditional request failed.
1516
1536
  # @return [String]
1517
1537
  #
1538
+ # @!attribute [rw] item
1539
+ # Item which caused the `ConditionalCheckFailedException`.
1540
+ # @return [Hash<String,Types::AttributeValue>]
1541
+ #
1518
1542
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ConditionalCheckFailedException AWS API Documentation
1519
1543
  #
1520
1544
  class ConditionalCheckFailedException < Struct.new(
1521
- :message)
1545
+ :message,
1546
+ :item)
1522
1547
  SENSITIVE = []
1523
1548
  include Aws::Structure
1524
1549
  end
@@ -1527,15 +1552,17 @@ module Aws::DynamoDB
1527
1552
  # includes the total provisioned throughput consumed, along with
1528
1553
  # statistics for the table and any indexes involved in the operation.
1529
1554
  # `ConsumedCapacity` is only returned if the request asked for it. For
1530
- # more information, see [Provisioned Throughput][1] in the *Amazon
1555
+ # more information, see [Provisioned capacity mode][1] in the *Amazon
1531
1556
  # DynamoDB Developer Guide*.
1532
1557
  #
1533
1558
  #
1534
1559
  #
1535
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
1560
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
1536
1561
  #
1537
1562
  # @!attribute [rw] table_name
1538
- # The name of the table that was affected by the operation.
1563
+ # The name of the table that was affected by the operation. If you had
1564
+ # specified the Amazon Resource Name (ARN) of a table in the input,
1565
+ # you'll see the table ARN in the response.
1539
1566
  # @return [String]
1540
1567
  #
1541
1568
  # @!attribute [rw] capacity_units
@@ -1640,7 +1667,8 @@ module Aws::DynamoDB
1640
1667
  end
1641
1668
 
1642
1669
  # @!attribute [rw] table_name
1643
- # The name of the table.
1670
+ # The name of the table. You can also provide the Amazon Resource Name
1671
+ # (ARN) of the table in this parameter.
1644
1672
  # @return [String]
1645
1673
  #
1646
1674
  # @!attribute [rw] backup_name
@@ -1698,13 +1726,20 @@ module Aws::DynamoDB
1698
1726
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html
1699
1727
  # @return [Types::ProvisionedThroughput]
1700
1728
  #
1729
+ # @!attribute [rw] on_demand_throughput
1730
+ # The maximum number of read and write units for the global secondary
1731
+ # index being created. If you use this parameter, you must specify
1732
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
1733
+ # @return [Types::OnDemandThroughput]
1734
+ #
1701
1735
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/CreateGlobalSecondaryIndexAction AWS API Documentation
1702
1736
  #
1703
1737
  class CreateGlobalSecondaryIndexAction < Struct.new(
1704
1738
  :index_name,
1705
1739
  :key_schema,
1706
1740
  :projection,
1707
- :provisioned_throughput)
1741
+ :provisioned_throughput,
1742
+ :on_demand_throughput)
1708
1743
  SENSITIVE = []
1709
1744
  include Aws::Structure
1710
1745
  end
@@ -1771,6 +1806,13 @@ module Aws::DynamoDB
1771
1806
  # source table's provisioned throughput settings.
1772
1807
  # @return [Types::ProvisionedThroughputOverride]
1773
1808
  #
1809
+ # @!attribute [rw] on_demand_throughput_override
1810
+ # The maximum on-demand throughput settings for the specified replica
1811
+ # table being created. You can only modify `MaxReadRequestUnits`,
1812
+ # because you can't modify `MaxWriteRequestUnits` for individual
1813
+ # replica tables.
1814
+ # @return [Types::OnDemandThroughputOverride]
1815
+ #
1774
1816
  # @!attribute [rw] global_secondary_indexes
1775
1817
  # Replica-specific global secondary index settings.
1776
1818
  # @return [Array<Types::ReplicaGlobalSecondaryIndex>]
@@ -1786,6 +1828,7 @@ module Aws::DynamoDB
1786
1828
  :region_name,
1787
1829
  :kms_master_key_id,
1788
1830
  :provisioned_throughput_override,
1831
+ :on_demand_throughput_override,
1789
1832
  :global_secondary_indexes,
1790
1833
  :table_class_override)
1791
1834
  SENSITIVE = []
@@ -1800,7 +1843,8 @@ module Aws::DynamoDB
1800
1843
  # @return [Array<Types::AttributeDefinition>]
1801
1844
  #
1802
1845
  # @!attribute [rw] table_name
1803
- # The name of the table to create.
1846
+ # The name of the table to create. You can also provide the Amazon
1847
+ # Resource Name (ARN) of the table in this parameter.
1804
1848
  # @return [String]
1805
1849
  #
1806
1850
  # @!attribute [rw] key_schema
@@ -1940,16 +1984,16 @@ module Aws::DynamoDB
1940
1984
  #
1941
1985
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
1942
1986
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
1943
- # Mode][1].
1987
+ # capacity mode][1].
1944
1988
  #
1945
1989
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
1946
1990
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode
1947
- # to [On-Demand Mode][2].
1991
+ # to [On-demand capacity mode][2].
1948
1992
  #
1949
1993
  #
1950
1994
  #
1951
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
1952
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
1995
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
1996
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
1953
1997
  # @return [String]
1954
1998
  #
1955
1999
  # @!attribute [rw] provisioned_throughput
@@ -2017,6 +2061,36 @@ module Aws::DynamoDB
2017
2061
  # disabled (false) on the table.
2018
2062
  # @return [Boolean]
2019
2063
  #
2064
+ # @!attribute [rw] resource_policy
2065
+ # An Amazon Web Services resource-based policy document in JSON format
2066
+ # that will be attached to the table.
2067
+ #
2068
+ # When you attach a resource-based policy while creating a table, the
2069
+ # policy application is *strongly consistent*.
2070
+ #
2071
+ # The maximum size supported for a resource-based policy document is
2072
+ # 20 KB. DynamoDB counts whitespaces when calculating the size of a
2073
+ # policy against this limit. For a full list of all considerations
2074
+ # that apply for resource-based policies, see [Resource-based policy
2075
+ # considerations][1].
2076
+ #
2077
+ # <note markdown="1"> You need to specify the `CreateTable` and `PutResourcePolicy` IAM
2078
+ # actions for authorizing a user to create a table with a
2079
+ # resource-based policy.
2080
+ #
2081
+ # </note>
2082
+ #
2083
+ #
2084
+ #
2085
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html
2086
+ # @return [String]
2087
+ #
2088
+ # @!attribute [rw] on_demand_throughput
2089
+ # Sets the maximum number of read and write units for the specified
2090
+ # table in on-demand capacity mode. If you use this parameter, you
2091
+ # must specify `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
2092
+ # @return [Types::OnDemandThroughput]
2093
+ #
2020
2094
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/CreateTableInput AWS API Documentation
2021
2095
  #
2022
2096
  class CreateTableInput < Struct.new(
@@ -2031,7 +2105,9 @@ module Aws::DynamoDB
2031
2105
  :sse_specification,
2032
2106
  :tags,
2033
2107
  :table_class,
2034
- :deletion_protection_enabled)
2108
+ :deletion_protection_enabled,
2109
+ :resource_policy,
2110
+ :on_demand_throughput)
2035
2111
  SENSITIVE = []
2036
2112
  include Aws::Structure
2037
2113
  end
@@ -2082,7 +2158,9 @@ module Aws::DynamoDB
2082
2158
  # @return [Hash<String,Types::AttributeValue>]
2083
2159
  #
2084
2160
  # @!attribute [rw] table_name
2085
- # Name of the table in which the item to be deleted resides.
2161
+ # Name of the table in which the item to be deleted resides. You can
2162
+ # also provide the Amazon Resource Name (ARN) of the table in this
2163
+ # parameter.
2086
2164
  # @return [String]
2087
2165
  #
2088
2166
  # @!attribute [rw] condition_expression
@@ -2161,7 +2239,9 @@ module Aws::DynamoDB
2161
2239
  # Represents the input of a `DeleteItem` operation.
2162
2240
  #
2163
2241
  # @!attribute [rw] table_name
2164
- # The name of the table from which to delete the item.
2242
+ # The name of the table from which to delete the item. You can also
2243
+ # provide the Amazon Resource Name (ARN) of the table in this
2244
+ # parameter.
2165
2245
  # @return [String]
2166
2246
  #
2167
2247
  # @!attribute [rw] key
@@ -2348,6 +2428,15 @@ module Aws::DynamoDB
2348
2428
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html
2349
2429
  # @return [Hash<String,Types::AttributeValue>]
2350
2430
  #
2431
+ # @!attribute [rw] return_values_on_condition_check_failure
2432
+ # An optional parameter that returns the item attributes for a
2433
+ # `DeleteItem` operation that failed a condition check.
2434
+ #
2435
+ # There is no additional cost associated with requesting a return
2436
+ # value aside from the small network and processing overhead of
2437
+ # receiving a larger response. No read capacity units are consumed.
2438
+ # @return [String]
2439
+ #
2351
2440
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteItemInput AWS API Documentation
2352
2441
  #
2353
2442
  class DeleteItemInput < Struct.new(
@@ -2360,7 +2449,8 @@ module Aws::DynamoDB
2360
2449
  :return_item_collection_metrics,
2361
2450
  :condition_expression,
2362
2451
  :expression_attribute_names,
2363
- :expression_attribute_values)
2452
+ :expression_attribute_values,
2453
+ :return_values_on_condition_check_failure)
2364
2454
  SENSITIVE = []
2365
2455
  include Aws::Structure
2366
2456
  end
@@ -2380,12 +2470,12 @@ module Aws::DynamoDB
2380
2470
  # with statistics for the table and any indexes involved in the
2381
2471
  # operation. `ConsumedCapacity` is only returned if the
2382
2472
  # `ReturnConsumedCapacity` parameter was specified. For more
2383
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
2384
- # Developer Guide*.
2473
+ # information, see [Provisioned capacity mode][1] in the *Amazon
2474
+ # DynamoDB Developer Guide*.
2385
2475
  #
2386
2476
  #
2387
2477
  #
2388
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
2478
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
2389
2479
  # @return [Types::ConsumedCapacity]
2390
2480
  #
2391
2481
  # @!attribute [rw] item_collection_metrics
@@ -2468,10 +2558,54 @@ module Aws::DynamoDB
2468
2558
  include Aws::Structure
2469
2559
  end
2470
2560
 
2561
+ # @!attribute [rw] resource_arn
2562
+ # The Amazon Resource Name (ARN) of the DynamoDB resource from which
2563
+ # the policy will be removed. The resources you can specify include
2564
+ # tables and streams. If you remove the policy of a table, it will
2565
+ # also remove the permissions for the table's indexes defined in that
2566
+ # policy document. This is because index permissions are defined in
2567
+ # the table's policy.
2568
+ # @return [String]
2569
+ #
2570
+ # @!attribute [rw] expected_revision_id
2571
+ # A string value that you can use to conditionally delete your policy.
2572
+ # When you provide an expected revision ID, if the revision ID of the
2573
+ # existing policy on the resource doesn't match or if there's no
2574
+ # policy attached to the resource, the request will fail and return a
2575
+ # `PolicyNotFoundException`.
2576
+ # @return [String]
2577
+ #
2578
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteResourcePolicyInput AWS API Documentation
2579
+ #
2580
+ class DeleteResourcePolicyInput < Struct.new(
2581
+ :resource_arn,
2582
+ :expected_revision_id)
2583
+ SENSITIVE = []
2584
+ include Aws::Structure
2585
+ end
2586
+
2587
+ # @!attribute [rw] revision_id
2588
+ # A unique string that represents the revision ID of the policy. If
2589
+ # you're comparing revision IDs, make sure to always use string
2590
+ # comparison logic.
2591
+ #
2592
+ # This value will be empty if you make a request against a resource
2593
+ # without a policy.
2594
+ # @return [String]
2595
+ #
2596
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteResourcePolicyOutput AWS API Documentation
2597
+ #
2598
+ class DeleteResourcePolicyOutput < Struct.new(
2599
+ :revision_id)
2600
+ SENSITIVE = []
2601
+ include Aws::Structure
2602
+ end
2603
+
2471
2604
  # Represents the input of a `DeleteTable` operation.
2472
2605
  #
2473
2606
  # @!attribute [rw] table_name
2474
- # The name of the table to delete.
2607
+ # The name of the table to delete. You can also provide the Amazon
2608
+ # Resource Name (ARN) of the table in this parameter.
2475
2609
  # @return [String]
2476
2610
  #
2477
2611
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteTableInput AWS API Documentation
@@ -2523,6 +2657,9 @@ module Aws::DynamoDB
2523
2657
  # @!attribute [rw] table_name
2524
2658
  # Name of the table for which the customer wants to check the
2525
2659
  # continuous backups and point in time recovery settings.
2660
+ #
2661
+ # You can also provide the Amazon Resource Name (ARN) of the table in
2662
+ # this parameter.
2526
2663
  # @return [String]
2527
2664
  #
2528
2665
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeContinuousBackupsInput AWS API Documentation
@@ -2547,7 +2684,8 @@ module Aws::DynamoDB
2547
2684
  end
2548
2685
 
2549
2686
  # @!attribute [rw] table_name
2550
- # The name of the table to describe.
2687
+ # The name of the table to describe. You can also provide the Amazon
2688
+ # Resource Name (ARN) of the table in this parameter.
2551
2689
  # @return [String]
2552
2690
  #
2553
2691
  # @!attribute [rw] index_name
@@ -2740,7 +2878,8 @@ module Aws::DynamoDB
2740
2878
  end
2741
2879
 
2742
2880
  # @!attribute [rw] table_name
2743
- # The name of the table being described.
2881
+ # The name of the table being described. You can also provide the
2882
+ # Amazon Resource Name (ARN) of the table in this parameter.
2744
2883
  # @return [String]
2745
2884
  #
2746
2885
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeKinesisStreamingDestinationInput AWS API Documentation
@@ -2816,7 +2955,8 @@ module Aws::DynamoDB
2816
2955
  # Represents the input of a `DescribeTable` operation.
2817
2956
  #
2818
2957
  # @!attribute [rw] table_name
2819
- # The name of the table to describe.
2958
+ # The name of the table to describe. You can also provide the Amazon
2959
+ # Resource Name (ARN) of the table in this parameter.
2820
2960
  # @return [String]
2821
2961
  #
2822
2962
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeTableInput AWS API Documentation
@@ -2842,7 +2982,8 @@ module Aws::DynamoDB
2842
2982
  end
2843
2983
 
2844
2984
  # @!attribute [rw] table_name
2845
- # The name of the table.
2985
+ # The name of the table. You can also provide the Amazon Resource Name
2986
+ # (ARN) of the table in this parameter.
2846
2987
  # @return [String]
2847
2988
  #
2848
2989
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeTableReplicaAutoScalingInput AWS API Documentation
@@ -2866,7 +3007,8 @@ module Aws::DynamoDB
2866
3007
  end
2867
3008
 
2868
3009
  # @!attribute [rw] table_name
2869
- # The name of the table to be described.
3010
+ # The name of the table to be described. You can also provide the
3011
+ # Amazon Resource Name (ARN) of the table in this parameter.
2870
3012
  # @return [String]
2871
3013
  #
2872
3014
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeTimeToLiveInput AWS API Documentation
@@ -2902,6 +3044,21 @@ module Aws::DynamoDB
2902
3044
  include Aws::Structure
2903
3045
  end
2904
3046
 
3047
+ # Enables setting the configuration for Kinesis Streaming.
3048
+ #
3049
+ # @!attribute [rw] approximate_creation_date_time_precision
3050
+ # Toggle for the precision of Kinesis data stream timestamp. The
3051
+ # values are either `MILLISECOND` or `MICROSECOND`.
3052
+ # @return [String]
3053
+ #
3054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/EnableKinesisStreamingConfiguration AWS API Documentation
3055
+ #
3056
+ class EnableKinesisStreamingConfiguration < Struct.new(
3057
+ :approximate_creation_date_time_precision)
3058
+ SENSITIVE = []
3059
+ include Aws::Structure
3060
+ end
3061
+
2905
3062
  # An endpoint information details.
2906
3063
  #
2907
3064
  # @!attribute [rw] address
@@ -2973,6 +3130,15 @@ module Aws::DynamoDB
2973
3130
  # the operation.
2974
3131
  # @return [Integer]
2975
3132
  #
3133
+ # @!attribute [rw] return_values_on_condition_check_failure
3134
+ # An optional parameter that returns the item attributes for an
3135
+ # `ExecuteStatement` operation that failed a condition check.
3136
+ #
3137
+ # There is no additional cost associated with requesting a return
3138
+ # value aside from the small network and processing overhead of
3139
+ # receiving a larger response. No read capacity units are consumed.
3140
+ # @return [String]
3141
+ #
2976
3142
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ExecuteStatementInput AWS API Documentation
2977
3143
  #
2978
3144
  class ExecuteStatementInput < Struct.new(
@@ -2981,7 +3147,8 @@ module Aws::DynamoDB
2981
3147
  :consistent_read,
2982
3148
  :next_token,
2983
3149
  :return_consumed_capacity,
2984
- :limit)
3150
+ :limit,
3151
+ :return_values_on_condition_check_failure)
2985
3152
  SENSITIVE = []
2986
3153
  include Aws::Structure
2987
3154
  end
@@ -3004,12 +3171,12 @@ module Aws::DynamoDB
3004
3171
  # includes the total provisioned throughput consumed, along with
3005
3172
  # statistics for the table and any indexes involved in the operation.
3006
3173
  # `ConsumedCapacity` is only returned if the request asked for it. For
3007
- # more information, see [Provisioned Throughput][1] in the *Amazon
3174
+ # more information, see [Provisioned capacity mode][1] in the *Amazon
3008
3175
  # DynamoDB Developer Guide*.
3009
3176
  #
3010
3177
  #
3011
3178
  #
3012
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
3179
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
3013
3180
  # @return [Types::ConsumedCapacity]
3014
3181
  #
3015
3182
  # @!attribute [rw] last_evaluated_key
@@ -3457,6 +3624,16 @@ module Aws::DynamoDB
3457
3624
  # The number of items exported.
3458
3625
  # @return [Integer]
3459
3626
  #
3627
+ # @!attribute [rw] export_type
3628
+ # The type of export that was performed. Valid values are
3629
+ # `FULL_EXPORT` or `INCREMENTAL_EXPORT`.
3630
+ # @return [String]
3631
+ #
3632
+ # @!attribute [rw] incremental_export_specification
3633
+ # Optional object containing the parameters specific to an incremental
3634
+ # export.
3635
+ # @return [Types::IncrementalExportSpecification]
3636
+ #
3460
3637
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ExportDescription AWS API Documentation
3461
3638
  #
3462
3639
  class ExportDescription < Struct.new(
@@ -3478,7 +3655,9 @@ module Aws::DynamoDB
3478
3655
  :failure_message,
3479
3656
  :export_format,
3480
3657
  :billed_size_bytes,
3481
- :item_count)
3658
+ :item_count,
3659
+ :export_type,
3660
+ :incremental_export_specification)
3482
3661
  SENSITIVE = []
3483
3662
  include Aws::Structure
3484
3663
  end
@@ -3507,11 +3686,17 @@ module Aws::DynamoDB
3507
3686
  # COMPLETED, or FAILED.
3508
3687
  # @return [String]
3509
3688
  #
3689
+ # @!attribute [rw] export_type
3690
+ # The type of export that was performed. Valid values are
3691
+ # `FULL_EXPORT` or `INCREMENTAL_EXPORT`.
3692
+ # @return [String]
3693
+ #
3510
3694
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ExportSummary AWS API Documentation
3511
3695
  #
3512
3696
  class ExportSummary < Struct.new(
3513
3697
  :export_arn,
3514
- :export_status)
3698
+ :export_status,
3699
+ :export_type)
3515
3700
  SENSITIVE = []
3516
3701
  include Aws::Structure
3517
3702
  end
@@ -3552,6 +3737,11 @@ module Aws::DynamoDB
3552
3737
  # @!attribute [rw] s3_bucket_owner
3553
3738
  # The ID of the Amazon Web Services account that owns the bucket the
3554
3739
  # export will be stored in.
3740
+ #
3741
+ # <note markdown="1"> S3BucketOwner is a required parameter when exporting to a S3 bucket
3742
+ # in another account.
3743
+ #
3744
+ # </note>
3555
3745
  # @return [String]
3556
3746
  #
3557
3747
  # @!attribute [rw] s3_prefix
@@ -3578,6 +3768,18 @@ module Aws::DynamoDB
3578
3768
  # are `DYNAMODB_JSON` or `ION`.
3579
3769
  # @return [String]
3580
3770
  #
3771
+ # @!attribute [rw] export_type
3772
+ # Choice of whether to execute as a full export or incremental export.
3773
+ # Valid values are FULL\_EXPORT or INCREMENTAL\_EXPORT. The default
3774
+ # value is FULL\_EXPORT. If INCREMENTAL\_EXPORT is provided, the
3775
+ # IncrementalExportSpecification must also be used.
3776
+ # @return [String]
3777
+ #
3778
+ # @!attribute [rw] incremental_export_specification
3779
+ # Optional object containing the parameters specific to an incremental
3780
+ # export.
3781
+ # @return [Types::IncrementalExportSpecification]
3782
+ #
3581
3783
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ExportTableToPointInTimeInput AWS API Documentation
3582
3784
  #
3583
3785
  class ExportTableToPointInTimeInput < Struct.new(
@@ -3589,7 +3791,9 @@ module Aws::DynamoDB
3589
3791
  :s3_prefix,
3590
3792
  :s3_sse_algorithm,
3591
3793
  :s3_sse_kms_key_id,
3592
- :export_format)
3794
+ :export_format,
3795
+ :export_type,
3796
+ :incremental_export_specification)
3593
3797
  SENSITIVE = []
3594
3798
  include Aws::Structure
3595
3799
  end
@@ -3634,7 +3838,9 @@ module Aws::DynamoDB
3634
3838
  # @return [Hash<String,Types::AttributeValue>]
3635
3839
  #
3636
3840
  # @!attribute [rw] table_name
3637
- # The name of the table from which to retrieve the specified item.
3841
+ # The name of the table from which to retrieve the specified item. You
3842
+ # can also provide the Amazon Resource Name (ARN) of the table in this
3843
+ # parameter.
3638
3844
  # @return [String]
3639
3845
  #
3640
3846
  # @!attribute [rw] projection_expression
@@ -3665,7 +3871,9 @@ module Aws::DynamoDB
3665
3871
  # Represents the input of a `GetItem` operation.
3666
3872
  #
3667
3873
  # @!attribute [rw] table_name
3668
- # The name of the table containing the requested item.
3874
+ # The name of the table containing the requested item. You can also
3875
+ # provide the Amazon Resource Name (ARN) of the table in this
3876
+ # parameter.
3669
3877
  # @return [String]
3670
3878
  #
3671
3879
  # @!attribute [rw] key
@@ -3812,12 +4020,12 @@ module Aws::DynamoDB
3812
4020
  # with statistics for the table and any indexes involved in the
3813
4021
  # operation. `ConsumedCapacity` is only returned if the
3814
4022
  # `ReturnConsumedCapacity` parameter was specified. For more
3815
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
3816
- # Developer Guide*.
4023
+ # information, see [Capacity unit consumption for read operations][1]
4024
+ # in the *Amazon DynamoDB Developer Guide*.
3817
4025
  #
3818
4026
  #
3819
4027
  #
3820
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
4028
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/read-write-operations.html#read-operation-consumption
3821
4029
  # @return [Types::ConsumedCapacity]
3822
4030
  #
3823
4031
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GetItemOutput AWS API Documentation
@@ -3829,6 +4037,40 @@ module Aws::DynamoDB
3829
4037
  include Aws::Structure
3830
4038
  end
3831
4039
 
4040
+ # @!attribute [rw] resource_arn
4041
+ # The Amazon Resource Name (ARN) of the DynamoDB resource to which the
4042
+ # policy is attached. The resources you can specify include tables and
4043
+ # streams.
4044
+ # @return [String]
4045
+ #
4046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GetResourcePolicyInput AWS API Documentation
4047
+ #
4048
+ class GetResourcePolicyInput < Struct.new(
4049
+ :resource_arn)
4050
+ SENSITIVE = []
4051
+ include Aws::Structure
4052
+ end
4053
+
4054
+ # @!attribute [rw] policy
4055
+ # The resource-based policy document attached to the resource, which
4056
+ # can be a table or stream, in JSON format.
4057
+ # @return [String]
4058
+ #
4059
+ # @!attribute [rw] revision_id
4060
+ # A unique string that represents the revision ID of the policy. If
4061
+ # you're comparing revision IDs, make sure to always use string
4062
+ # comparison logic.
4063
+ # @return [String]
4064
+ #
4065
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GetResourcePolicyOutput AWS API Documentation
4066
+ #
4067
+ class GetResourcePolicyOutput < Struct.new(
4068
+ :policy,
4069
+ :revision_id)
4070
+ SENSITIVE = []
4071
+ include Aws::Structure
4072
+ end
4073
+
3832
4074
  # Represents the properties of a global secondary index.
3833
4075
  #
3834
4076
  # @!attribute [rw] index_name
@@ -3877,13 +4119,20 @@ module Aws::DynamoDB
3877
4119
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html
3878
4120
  # @return [Types::ProvisionedThroughput]
3879
4121
  #
4122
+ # @!attribute [rw] on_demand_throughput
4123
+ # The maximum number of read and write units for the specified global
4124
+ # secondary index. If you use this parameter, you must specify
4125
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
4126
+ # @return [Types::OnDemandThroughput]
4127
+ #
3880
4128
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GlobalSecondaryIndex AWS API Documentation
3881
4129
  #
3882
4130
  class GlobalSecondaryIndex < Struct.new(
3883
4131
  :index_name,
3884
4132
  :key_schema,
3885
4133
  :projection,
3886
- :provisioned_throughput)
4134
+ :provisioned_throughput,
4135
+ :on_demand_throughput)
3887
4136
  SENSITIVE = []
3888
4137
  include Aws::Structure
3889
4138
  end
@@ -4006,6 +4255,12 @@ module Aws::DynamoDB
4006
4255
  # The Amazon Resource Name (ARN) that uniquely identifies the index.
4007
4256
  # @return [String]
4008
4257
  #
4258
+ # @!attribute [rw] on_demand_throughput
4259
+ # The maximum number of read and write units for the specified global
4260
+ # secondary index. If you use this parameter, you must specify
4261
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
4262
+ # @return [Types::OnDemandThroughput]
4263
+ #
4009
4264
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GlobalSecondaryIndexDescription AWS API Documentation
4010
4265
  #
4011
4266
  class GlobalSecondaryIndexDescription < Struct.new(
@@ -4017,7 +4272,8 @@ module Aws::DynamoDB
4017
4272
  :provisioned_throughput,
4018
4273
  :index_size_bytes,
4019
4274
  :item_count,
4020
- :index_arn)
4275
+ :index_arn,
4276
+ :on_demand_throughput)
4021
4277
  SENSITIVE = []
4022
4278
  include Aws::Structure
4023
4279
  end
@@ -4062,13 +4318,20 @@ module Aws::DynamoDB
4062
4318
  # global secondary index.
4063
4319
  # @return [Types::ProvisionedThroughput]
4064
4320
  #
4321
+ # @!attribute [rw] on_demand_throughput
4322
+ # Sets the maximum number of read and write units for the specified
4323
+ # on-demand table. If you use this parameter, you must specify
4324
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
4325
+ # @return [Types::OnDemandThroughput]
4326
+ #
4065
4327
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GlobalSecondaryIndexInfo AWS API Documentation
4066
4328
  #
4067
4329
  class GlobalSecondaryIndexInfo < Struct.new(
4068
4330
  :index_name,
4069
4331
  :key_schema,
4070
4332
  :projection,
4071
- :provisioned_throughput)
4333
+ :provisioned_throughput,
4334
+ :on_demand_throughput)
4072
4335
  SENSITIVE = []
4073
4336
  include Aws::Structure
4074
4337
  end
@@ -4514,6 +4777,40 @@ module Aws::DynamoDB
4514
4777
  include Aws::Structure
4515
4778
  end
4516
4779
 
4780
+ # Optional object containing the parameters specific to an incremental
4781
+ # export.
4782
+ #
4783
+ # @!attribute [rw] export_from_time
4784
+ # Time in the past which provides the inclusive start range for the
4785
+ # export table's data, counted in seconds from the start of the Unix
4786
+ # epoch. The incremental export will reflect the table's state
4787
+ # including and after this point in time.
4788
+ # @return [Time]
4789
+ #
4790
+ # @!attribute [rw] export_to_time
4791
+ # Time in the past which provides the exclusive end range for the
4792
+ # export table's data, counted in seconds from the start of the Unix
4793
+ # epoch. The incremental export will reflect the table's state just
4794
+ # prior to this point in time. If this is not provided, the latest
4795
+ # time with data available will be used.
4796
+ # @return [Time]
4797
+ #
4798
+ # @!attribute [rw] export_view_type
4799
+ # The view type that was chosen for the export. Valid values are
4800
+ # `NEW_AND_OLD_IMAGES` and `NEW_IMAGES`. The default value is
4801
+ # `NEW_AND_OLD_IMAGES`.
4802
+ # @return [String]
4803
+ #
4804
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/IncrementalExportSpecification AWS API Documentation
4805
+ #
4806
+ class IncrementalExportSpecification < Struct.new(
4807
+ :export_from_time,
4808
+ :export_to_time,
4809
+ :export_view_type)
4810
+ SENSITIVE = []
4811
+ include Aws::Structure
4812
+ end
4813
+
4517
4814
  # The operation tried to access a nonexistent index.
4518
4815
  #
4519
4816
  # @!attribute [rw] message
@@ -4821,29 +5118,42 @@ module Aws::DynamoDB
4821
5118
  # The human-readable string that corresponds to the replica status.
4822
5119
  # @return [String]
4823
5120
  #
5121
+ # @!attribute [rw] approximate_creation_date_time_precision
5122
+ # The precision of the Kinesis data stream timestamp. The values are
5123
+ # either `MILLISECOND` or `MICROSECOND`.
5124
+ # @return [String]
5125
+ #
4824
5126
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/KinesisDataStreamDestination AWS API Documentation
4825
5127
  #
4826
5128
  class KinesisDataStreamDestination < Struct.new(
4827
5129
  :stream_arn,
4828
5130
  :destination_status,
4829
- :destination_status_description)
5131
+ :destination_status_description,
5132
+ :approximate_creation_date_time_precision)
4830
5133
  SENSITIVE = []
4831
5134
  include Aws::Structure
4832
5135
  end
4833
5136
 
4834
5137
  # @!attribute [rw] table_name
4835
- # The name of the DynamoDB table.
5138
+ # The name of the DynamoDB table. You can also provide the Amazon
5139
+ # Resource Name (ARN) of the table in this parameter.
4836
5140
  # @return [String]
4837
5141
  #
4838
5142
  # @!attribute [rw] stream_arn
4839
5143
  # The ARN for a Kinesis data stream.
4840
5144
  # @return [String]
4841
5145
  #
5146
+ # @!attribute [rw] enable_kinesis_streaming_configuration
5147
+ # The source for the Kinesis streaming information that is being
5148
+ # enabled.
5149
+ # @return [Types::EnableKinesisStreamingConfiguration]
5150
+ #
4842
5151
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/KinesisStreamingDestinationInput AWS API Documentation
4843
5152
  #
4844
5153
  class KinesisStreamingDestinationInput < Struct.new(
4845
5154
  :table_name,
4846
- :stream_arn)
5155
+ :stream_arn,
5156
+ :enable_kinesis_streaming_configuration)
4847
5157
  SENSITIVE = []
4848
5158
  include Aws::Structure
4849
5159
  end
@@ -4860,12 +5170,18 @@ module Aws::DynamoDB
4860
5170
  # The current status of the replication.
4861
5171
  # @return [String]
4862
5172
  #
5173
+ # @!attribute [rw] enable_kinesis_streaming_configuration
5174
+ # The destination for the Kinesis streaming information that is being
5175
+ # enabled.
5176
+ # @return [Types::EnableKinesisStreamingConfiguration]
5177
+ #
4863
5178
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/KinesisStreamingDestinationOutput AWS API Documentation
4864
5179
  #
4865
5180
  class KinesisStreamingDestinationOutput < Struct.new(
4866
5181
  :table_name,
4867
5182
  :stream_arn,
4868
- :destination_status)
5183
+ :destination_status,
5184
+ :enable_kinesis_streaming_configuration)
4869
5185
  SENSITIVE = []
4870
5186
  include Aws::Structure
4871
5187
  end
@@ -4888,6 +5204,12 @@ module Aws::DynamoDB
4888
5204
  #
4889
5205
  # There is a soft account quota of 2,500 tables.
4890
5206
  #
5207
+ # GetRecords was called with a value of more than 1000 for the limit
5208
+ # request parameter.
5209
+ #
5210
+ # More than 2 processes are reading from the same streams shard at the
5211
+ # same time. Exceeding this limit may result in request throttling.
5212
+ #
4891
5213
  # @!attribute [rw] message
4892
5214
  # Too many operations for a given subscriber.
4893
5215
  # @return [String]
@@ -4901,7 +5223,9 @@ module Aws::DynamoDB
4901
5223
  end
4902
5224
 
4903
5225
  # @!attribute [rw] table_name
4904
- # The backups from the table specified by `TableName` are listed.
5226
+ # Lists the backups from the table specified in `TableName`. You can
5227
+ # also provide the Amazon Resource Name (ARN) of the table in this
5228
+ # parameter.
4905
5229
  # @return [String]
4906
5230
  #
4907
5231
  # @!attribute [rw] limit
@@ -4981,7 +5305,8 @@ module Aws::DynamoDB
4981
5305
  end
4982
5306
 
4983
5307
  # @!attribute [rw] table_name
4984
- # The name of the table.
5308
+ # The name of the table. You can also provide the Amazon Resource Name
5309
+ # (ARN) of the table in this parameter.
4985
5310
  # @return [String]
4986
5311
  #
4987
5312
  # @!attribute [rw] next_token
@@ -5396,21 +5721,79 @@ module Aws::DynamoDB
5396
5721
  include Aws::Structure
5397
5722
  end
5398
5723
 
5399
- # Represents a PartiQL statment that uses parameters.
5724
+ # Sets the maximum number of read and write units for the specified
5725
+ # on-demand table. If you use this parameter, you must specify
5726
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
5727
+ #
5728
+ # @!attribute [rw] max_read_request_units
5729
+ # Maximum number of read request units for the specified table.
5730
+ #
5731
+ # To specify a maximum `OnDemandThroughput` on your table, set the
5732
+ # value of `MaxReadRequestUnits` as greater than or equal to 1. To
5733
+ # remove the maximum `OnDemandThroughput` that is currently set on
5734
+ # your table, set the value of `MaxReadRequestUnits` to -1.
5735
+ # @return [Integer]
5736
+ #
5737
+ # @!attribute [rw] max_write_request_units
5738
+ # Maximum number of write request units for the specified table.
5739
+ #
5740
+ # To specify a maximum `OnDemandThroughput` on your table, set the
5741
+ # value of `MaxWriteRequestUnits` as greater than or equal to 1. To
5742
+ # remove the maximum `OnDemandThroughput` that is currently set on
5743
+ # your table, set the value of `MaxWriteRequestUnits` to -1.
5744
+ # @return [Integer]
5745
+ #
5746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/OnDemandThroughput AWS API Documentation
5747
+ #
5748
+ class OnDemandThroughput < Struct.new(
5749
+ :max_read_request_units,
5750
+ :max_write_request_units)
5751
+ SENSITIVE = []
5752
+ include Aws::Structure
5753
+ end
5754
+
5755
+ # Overrides the on-demand throughput settings for this replica table. If
5756
+ # you don't specify a value for this parameter, it uses the source
5757
+ # table's on-demand throughput settings.
5758
+ #
5759
+ # @!attribute [rw] max_read_request_units
5760
+ # Maximum number of read request units for the specified replica
5761
+ # table.
5762
+ # @return [Integer]
5763
+ #
5764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/OnDemandThroughputOverride AWS API Documentation
5765
+ #
5766
+ class OnDemandThroughputOverride < Struct.new(
5767
+ :max_read_request_units)
5768
+ SENSITIVE = []
5769
+ include Aws::Structure
5770
+ end
5771
+
5772
+ # Represents a PartiQL statement that uses parameters.
5400
5773
  #
5401
5774
  # @!attribute [rw] statement
5402
- # A PartiQL statment that uses parameters.
5775
+ # A PartiQL statement that uses parameters.
5403
5776
  # @return [String]
5404
5777
  #
5405
5778
  # @!attribute [rw] parameters
5406
5779
  # The parameter values.
5407
5780
  # @return [Array<Types::AttributeValue>]
5408
5781
  #
5782
+ # @!attribute [rw] return_values_on_condition_check_failure
5783
+ # An optional parameter that returns the item attributes for a PartiQL
5784
+ # `ParameterizedStatement` operation that failed a condition check.
5785
+ #
5786
+ # There is no additional cost associated with requesting a return
5787
+ # value aside from the small network and processing overhead of
5788
+ # receiving a larger response. No read capacity units are consumed.
5789
+ # @return [String]
5790
+ #
5409
5791
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ParameterizedStatement AWS API Documentation
5410
5792
  #
5411
5793
  class ParameterizedStatement < Struct.new(
5412
5794
  :statement,
5413
- :parameters)
5795
+ :parameters,
5796
+ :return_values_on_condition_check_failure)
5414
5797
  SENSITIVE = []
5415
5798
  include Aws::Structure
5416
5799
  end
@@ -5474,6 +5857,23 @@ module Aws::DynamoDB
5474
5857
  include Aws::Structure
5475
5858
  end
5476
5859
 
5860
+ # The operation tried to access a nonexistent resource-based policy.
5861
+ #
5862
+ # If you specified an `ExpectedRevisionId`, it's possible that a policy
5863
+ # is present for the resource but its revision ID didn't match the
5864
+ # expected value.
5865
+ #
5866
+ # @!attribute [rw] message
5867
+ # @return [String]
5868
+ #
5869
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/PolicyNotFoundException AWS API Documentation
5870
+ #
5871
+ class PolicyNotFoundException < Struct.new(
5872
+ :message)
5873
+ SENSITIVE = []
5874
+ include Aws::Structure
5875
+ end
5876
+
5477
5877
  # Represents attributes that are copied (projected) from the table into
5478
5878
  # an index. These are in addition to the primary key attributes and
5479
5879
  # index key attributes, which are automatically projected.
@@ -5489,6 +5889,8 @@ module Aws::DynamoDB
5489
5889
  # attributes that you specify.
5490
5890
  #
5491
5891
  # * `ALL` - All of the table attributes are projected into the index.
5892
+ #
5893
+ # When using the DynamoDB console, `ALL` is selected by default.
5492
5894
  # @return [String]
5493
5895
  #
5494
5896
  # @!attribute [rw] non_key_attributes
@@ -5533,7 +5935,7 @@ module Aws::DynamoDB
5533
5935
  #
5534
5936
  #
5535
5937
  #
5536
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#ProvisionedThroughput
5938
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html
5537
5939
  # @return [Integer]
5538
5940
  #
5539
5941
  # @!attribute [rw] write_capacity_units
@@ -5547,7 +5949,7 @@ module Aws::DynamoDB
5547
5949
  #
5548
5950
  #
5549
5951
  #
5550
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#ProvisionedThroughput
5952
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html
5551
5953
  # @return [Integer]
5552
5954
  #
5553
5955
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ProvisionedThroughput AWS API Documentation
@@ -5660,7 +6062,8 @@ module Aws::DynamoDB
5660
6062
  # @return [Hash<String,Types::AttributeValue>]
5661
6063
  #
5662
6064
  # @!attribute [rw] table_name
5663
- # Name of the table in which to write the item.
6065
+ # Name of the table in which to write the item. You can also provide
6066
+ # the Amazon Resource Name (ARN) of the table in this parameter.
5664
6067
  # @return [String]
5665
6068
  #
5666
6069
  # @!attribute [rw] condition_expression
@@ -5700,7 +6103,8 @@ module Aws::DynamoDB
5700
6103
  # Represents the input of a `PutItem` operation.
5701
6104
  #
5702
6105
  # @!attribute [rw] table_name
5703
- # The name of the table to contain the item.
6106
+ # The name of the table to contain the item. You can also provide the
6107
+ # Amazon Resource Name (ARN) of the table in this parameter.
5704
6108
  # @return [String]
5705
6109
  #
5706
6110
  # @!attribute [rw] item
@@ -5909,6 +6313,15 @@ module Aws::DynamoDB
5909
6313
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html
5910
6314
  # @return [Hash<String,Types::AttributeValue>]
5911
6315
  #
6316
+ # @!attribute [rw] return_values_on_condition_check_failure
6317
+ # An optional parameter that returns the item attributes for a
6318
+ # `PutItem` operation that failed a condition check.
6319
+ #
6320
+ # There is no additional cost associated with requesting a return
6321
+ # value aside from the small network and processing overhead of
6322
+ # receiving a larger response. No read capacity units are consumed.
6323
+ # @return [String]
6324
+ #
5912
6325
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/PutItemInput AWS API Documentation
5913
6326
  #
5914
6327
  class PutItemInput < Struct.new(
@@ -5921,7 +6334,8 @@ module Aws::DynamoDB
5921
6334
  :conditional_operator,
5922
6335
  :condition_expression,
5923
6336
  :expression_attribute_names,
5924
- :expression_attribute_values)
6337
+ :expression_attribute_values,
6338
+ :return_values_on_condition_check_failure)
5925
6339
  SENSITIVE = []
5926
6340
  include Aws::Structure
5927
6341
  end
@@ -5941,12 +6355,12 @@ module Aws::DynamoDB
5941
6355
  # with statistics for the table and any indexes involved in the
5942
6356
  # operation. `ConsumedCapacity` is only returned if the
5943
6357
  # `ReturnConsumedCapacity` parameter was specified. For more
5944
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
5945
- # Developer Guide*.
6358
+ # information, see [Capacity unity consumption for write
6359
+ # operations][1] in the *Amazon DynamoDB Developer Guide*.
5946
6360
  #
5947
6361
  #
5948
6362
  #
5949
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
6363
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/read-write-operations.html#write-operation-consumption
5950
6364
  # @return [Types::ConsumedCapacity]
5951
6365
  #
5952
6366
  # @!attribute [rw] item_collection_metrics
@@ -6003,10 +6417,93 @@ module Aws::DynamoDB
6003
6417
  include Aws::Structure
6004
6418
  end
6005
6419
 
6420
+ # @!attribute [rw] resource_arn
6421
+ # The Amazon Resource Name (ARN) of the DynamoDB resource to which the
6422
+ # policy will be attached. The resources you can specify include
6423
+ # tables and streams.
6424
+ #
6425
+ # You can control index permissions using the base table's policy. To
6426
+ # specify the same permission level for your table and its indexes,
6427
+ # you can provide both the table and index Amazon Resource Name (ARN)s
6428
+ # in the `Resource` field of a given `Statement` in your policy
6429
+ # document. Alternatively, to specify different permissions for your
6430
+ # table, indexes, or both, you can define multiple `Statement` fields
6431
+ # in your policy document.
6432
+ # @return [String]
6433
+ #
6434
+ # @!attribute [rw] policy
6435
+ # An Amazon Web Services resource-based policy document in JSON
6436
+ # format.
6437
+ #
6438
+ # * The maximum size supported for a resource-based policy document is
6439
+ # 20 KB. DynamoDB counts whitespaces when calculating the size of a
6440
+ # policy against this limit.
6441
+ #
6442
+ # * Within a resource-based policy, if the action for a DynamoDB
6443
+ # service-linked role (SLR) to replicate data for a global table is
6444
+ # denied, adding or deleting a replica will fail with an error.
6445
+ #
6446
+ # For a full list of all considerations that apply while attaching a
6447
+ # resource-based policy, see [Resource-based policy
6448
+ # considerations][1].
6449
+ #
6450
+ #
6451
+ #
6452
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html
6453
+ # @return [String]
6454
+ #
6455
+ # @!attribute [rw] expected_revision_id
6456
+ # A string value that you can use to conditionally update your policy.
6457
+ # You can provide the revision ID of your existing policy to make
6458
+ # mutating requests against that policy.
6459
+ #
6460
+ # <note markdown="1"> When you provide an expected revision ID, if the revision ID of the
6461
+ # existing policy on the resource doesn't match or if there's no
6462
+ # policy attached to the resource, your request will be rejected with
6463
+ # a `PolicyNotFoundException`.
6464
+ #
6465
+ # </note>
6466
+ #
6467
+ # To conditionally attach a policy when no policy exists for the
6468
+ # resource, specify `NO_POLICY` for the revision ID.
6469
+ # @return [String]
6470
+ #
6471
+ # @!attribute [rw] confirm_remove_self_resource_access
6472
+ # Set this parameter to `true` to confirm that you want to remove your
6473
+ # permissions to change the policy of this resource in the future.
6474
+ # @return [Boolean]
6475
+ #
6476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/PutResourcePolicyInput AWS API Documentation
6477
+ #
6478
+ class PutResourcePolicyInput < Struct.new(
6479
+ :resource_arn,
6480
+ :policy,
6481
+ :expected_revision_id,
6482
+ :confirm_remove_self_resource_access)
6483
+ SENSITIVE = []
6484
+ include Aws::Structure
6485
+ end
6486
+
6487
+ # @!attribute [rw] revision_id
6488
+ # A unique string that represents the revision ID of the policy. If
6489
+ # you're comparing revision IDs, make sure to always use string
6490
+ # comparison logic.
6491
+ # @return [String]
6492
+ #
6493
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/PutResourcePolicyOutput AWS API Documentation
6494
+ #
6495
+ class PutResourcePolicyOutput < Struct.new(
6496
+ :revision_id)
6497
+ SENSITIVE = []
6498
+ include Aws::Structure
6499
+ end
6500
+
6006
6501
  # Represents the input of a `Query` operation.
6007
6502
  #
6008
6503
  # @!attribute [rw] table_name
6009
- # The name of the table containing the requested items.
6504
+ # The name of the table containing the requested items. You can also
6505
+ # provide the Amazon Resource Name (ARN) of the table in this
6506
+ # parameter.
6010
6507
  # @return [String]
6011
6508
  #
6012
6509
  # @!attribute [rw] index_name
@@ -6223,7 +6720,7 @@ module Aws::DynamoDB
6223
6720
  #
6224
6721
  #
6225
6722
  #
6226
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression
6723
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.FilterExpression.html
6227
6724
  # @return [String]
6228
6725
  #
6229
6726
  # @!attribute [rw] key_condition_expression
@@ -6449,7 +6946,7 @@ module Aws::DynamoDB
6449
6946
  #
6450
6947
  #
6451
6948
  #
6452
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Count
6949
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Scan.html#Scan.Count
6453
6950
  # @return [Integer]
6454
6951
  #
6455
6952
  # @!attribute [rw] last_evaluated_key
@@ -6472,12 +6969,12 @@ module Aws::DynamoDB
6472
6969
  # with statistics for the table and any indexes involved in the
6473
6970
  # operation. `ConsumedCapacity` is only returned if the
6474
6971
  # `ReturnConsumedCapacity` parameter was specified. For more
6475
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
6476
- # Developer Guide*.
6972
+ # information, see [Capacity unit consumption for read operations][1]
6973
+ # in the *Amazon DynamoDB Developer Guide*.
6477
6974
  #
6478
6975
  #
6479
6976
  #
6480
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughputIntro.html
6977
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/read-write-operations.html#read-operation-consumption
6481
6978
  # @return [Types::ConsumedCapacity]
6482
6979
  #
6483
6980
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/QueryOutput AWS API Documentation
@@ -6646,6 +7143,11 @@ module Aws::DynamoDB
6646
7143
  # source table's provisioned throughput settings.
6647
7144
  # @return [Types::ProvisionedThroughputOverride]
6648
7145
  #
7146
+ # @!attribute [rw] on_demand_throughput_override
7147
+ # Overrides the maximum on-demand throughput settings for the
7148
+ # specified replica table.
7149
+ # @return [Types::OnDemandThroughputOverride]
7150
+ #
6649
7151
  # @!attribute [rw] global_secondary_indexes
6650
7152
  # Replica-specific global secondary index settings.
6651
7153
  # @return [Array<Types::ReplicaGlobalSecondaryIndexDescription>]
@@ -6669,6 +7171,7 @@ module Aws::DynamoDB
6669
7171
  :replica_status_percent_progress,
6670
7172
  :kms_master_key_id,
6671
7173
  :provisioned_throughput_override,
7174
+ :on_demand_throughput_override,
6672
7175
  :global_secondary_indexes,
6673
7176
  :replica_inaccessible_date_time,
6674
7177
  :replica_table_class_summary)
@@ -6687,11 +7190,17 @@ module Aws::DynamoDB
6687
7190
  # uses the source table GSI's read capacity settings.
6688
7191
  # @return [Types::ProvisionedThroughputOverride]
6689
7192
  #
7193
+ # @!attribute [rw] on_demand_throughput_override
7194
+ # Overrides the maximum on-demand throughput settings for the
7195
+ # specified global secondary index in the specified replica table.
7196
+ # @return [Types::OnDemandThroughputOverride]
7197
+ #
6690
7198
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ReplicaGlobalSecondaryIndex AWS API Documentation
6691
7199
  #
6692
7200
  class ReplicaGlobalSecondaryIndex < Struct.new(
6693
7201
  :index_name,
6694
- :provisioned_throughput_override)
7202
+ :provisioned_throughput_override,
7203
+ :on_demand_throughput_override)
6695
7204
  SENSITIVE = []
6696
7205
  include Aws::Structure
6697
7206
  end
@@ -6769,11 +7278,17 @@ module Aws::DynamoDB
6769
7278
  # settings.
6770
7279
  # @return [Types::ProvisionedThroughputOverride]
6771
7280
  #
7281
+ # @!attribute [rw] on_demand_throughput_override
7282
+ # Overrides the maximum on-demand throughput for the specified global
7283
+ # secondary index in the specified replica table.
7284
+ # @return [Types::OnDemandThroughputOverride]
7285
+ #
6772
7286
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ReplicaGlobalSecondaryIndexDescription AWS API Documentation
6773
7287
  #
6774
7288
  class ReplicaGlobalSecondaryIndexDescription < Struct.new(
6775
7289
  :index_name,
6776
- :provisioned_throughput_override)
7290
+ :provisioned_throughput_override,
7291
+ :on_demand_throughput_override)
6777
7292
  SENSITIVE = []
6778
7293
  include Aws::Structure
6779
7294
  end
@@ -7170,6 +7685,12 @@ module Aws::DynamoDB
7170
7685
  # Provisioned throughput settings for the restored table.
7171
7686
  # @return [Types::ProvisionedThroughput]
7172
7687
  #
7688
+ # @!attribute [rw] on_demand_throughput_override
7689
+ # Sets the maximum number of read and write units for the specified
7690
+ # on-demand table. If you use this parameter, you must specify
7691
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
7692
+ # @return [Types::OnDemandThroughput]
7693
+ #
7173
7694
  # @!attribute [rw] sse_specification_override
7174
7695
  # The new server-side encryption settings for the restored table.
7175
7696
  # @return [Types::SSESpecification]
@@ -7183,6 +7704,7 @@ module Aws::DynamoDB
7183
7704
  :global_secondary_index_override,
7184
7705
  :local_secondary_index_override,
7185
7706
  :provisioned_throughput_override,
7707
+ :on_demand_throughput_override,
7186
7708
  :sse_specification_override)
7187
7709
  SENSITIVE = []
7188
7710
  include Aws::Structure
@@ -7243,6 +7765,12 @@ module Aws::DynamoDB
7243
7765
  # Provisioned throughput settings for the restored table.
7244
7766
  # @return [Types::ProvisionedThroughput]
7245
7767
  #
7768
+ # @!attribute [rw] on_demand_throughput_override
7769
+ # Sets the maximum number of read and write units for the specified
7770
+ # on-demand table. If you use this parameter, you must specify
7771
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
7772
+ # @return [Types::OnDemandThroughput]
7773
+ #
7246
7774
  # @!attribute [rw] sse_specification_override
7247
7775
  # The new server-side encryption settings for the restored table.
7248
7776
  # @return [Types::SSESpecification]
@@ -7259,6 +7787,7 @@ module Aws::DynamoDB
7259
7787
  :global_secondary_index_override,
7260
7788
  :local_secondary_index_override,
7261
7789
  :provisioned_throughput_override,
7790
+ :on_demand_throughput_override,
7262
7791
  :sse_specification_override)
7263
7792
  SENSITIVE = []
7264
7793
  include Aws::Structure
@@ -7388,9 +7917,12 @@ module Aws::DynamoDB
7388
7917
  # Represents the input of a `Scan` operation.
7389
7918
  #
7390
7919
  # @!attribute [rw] table_name
7391
- # The name of the table containing the requested items; or, if you
7920
+ # The name of the table containing the requested items or if you
7392
7921
  # provide `IndexName`, the name of the table to which that index
7393
7922
  # belongs.
7923
+ #
7924
+ # You can also provide the Amazon Resource Name (ARN) of the table in
7925
+ # this parameter.
7394
7926
  # @return [String]
7395
7927
  #
7396
7928
  # @!attribute [rw] index_name
@@ -7604,7 +8136,7 @@ module Aws::DynamoDB
7604
8136
  #
7605
8137
  #
7606
8138
  #
7607
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression
8139
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Scan.html#Scan.FilterExpression
7608
8140
  # @return [String]
7609
8141
  #
7610
8142
  # @!attribute [rw] expression_attribute_names
@@ -7783,12 +8315,12 @@ module Aws::DynamoDB
7783
8315
  # with statistics for the table and any indexes involved in the
7784
8316
  # operation. `ConsumedCapacity` is only returned if the
7785
8317
  # `ReturnConsumedCapacity` parameter was specified. For more
7786
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
7787
- # Developer Guide*.
8318
+ # information, see [Capacity unit consumption for read operations][1]
8319
+ # in the *Amazon DynamoDB Developer Guide*.
7788
8320
  #
7789
8321
  #
7790
8322
  #
7791
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
8323
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/read-write-operations.html#read-operation-consumption
7792
8324
  # @return [Types::ConsumedCapacity]
7793
8325
  #
7794
8326
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ScanOutput AWS API Documentation
@@ -7833,6 +8365,12 @@ module Aws::DynamoDB
7833
8365
  # Read IOPs and Write IOPS on the table when the backup was created.
7834
8366
  # @return [Types::ProvisionedThroughput]
7835
8367
  #
8368
+ # @!attribute [rw] on_demand_throughput
8369
+ # Sets the maximum number of read and write units for the specified
8370
+ # on-demand table. If you use this parameter, you must specify
8371
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
8372
+ # @return [Types::OnDemandThroughput]
8373
+ #
7836
8374
  # @!attribute [rw] item_count
7837
8375
  # Number of items in the table. Note that this is an approximate
7838
8376
  # value.
@@ -7861,6 +8399,7 @@ module Aws::DynamoDB
7861
8399
  :key_schema,
7862
8400
  :table_creation_date_time,
7863
8401
  :provisioned_throughput,
8402
+ :on_demand_throughput,
7864
8403
  :item_count,
7865
8404
  :billing_mode)
7866
8405
  SENSITIVE = []
@@ -8041,6 +8580,12 @@ module Aws::DynamoDB
8041
8580
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html
8042
8581
  # @return [Types::ProvisionedThroughput]
8043
8582
  #
8583
+ # @!attribute [rw] on_demand_throughput
8584
+ # Sets the maximum number of read and write units for the specified
8585
+ # on-demand table. If you use this parameter, you must specify
8586
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
8587
+ # @return [Types::OnDemandThroughput]
8588
+ #
8044
8589
  # @!attribute [rw] sse_specification
8045
8590
  # Represents the settings used to enable server-side encryption.
8046
8591
  # @return [Types::SSESpecification]
@@ -8058,6 +8603,7 @@ module Aws::DynamoDB
8058
8603
  :key_schema,
8059
8604
  :billing_mode,
8060
8605
  :provisioned_throughput,
8606
+ :on_demand_throughput,
8061
8607
  :sse_specification,
8062
8608
  :global_secondary_indexes)
8063
8609
  SENSITIVE = []
@@ -8363,6 +8909,12 @@ module Aws::DynamoDB
8363
8909
  # (false) on the table.
8364
8910
  # @return [Boolean]
8365
8911
  #
8912
+ # @!attribute [rw] on_demand_throughput
8913
+ # The maximum number of read and write units for the specified
8914
+ # on-demand table. If you use this parameter, you must specify
8915
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
8916
+ # @return [Types::OnDemandThroughput]
8917
+ #
8366
8918
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/TableDescription AWS API Documentation
8367
8919
  #
8368
8920
  class TableDescription < Struct.new(
@@ -8388,7 +8940,8 @@ module Aws::DynamoDB
8388
8940
  :sse_description,
8389
8941
  :archival_summary,
8390
8942
  :table_class_summary,
8391
- :deletion_protection_enabled)
8943
+ :deletion_protection_enabled,
8944
+ :on_demand_throughput)
8392
8945
  SENSITIVE = []
8393
8946
  include Aws::Structure
8394
8947
  end
@@ -8733,6 +9286,11 @@ module Aws::DynamoDB
8733
9286
  #
8734
9287
  # * There is a user error, such as an invalid data format.
8735
9288
  #
9289
+ # * There is an ongoing `TransactWriteItems` operation that conflicts
9290
+ # with a concurrent `TransactWriteItems` request. In this case the
9291
+ # `TransactWriteItems` operation fails with a
9292
+ # `TransactionCanceledException`.
9293
+ #
8736
9294
  # DynamoDB cancels a `TransactGetItems` request under the following
8737
9295
  # circumstances:
8738
9296
  #
@@ -8988,7 +9546,8 @@ module Aws::DynamoDB
8988
9546
  # @return [String]
8989
9547
  #
8990
9548
  # @!attribute [rw] table_name
8991
- # Name of the table for the `UpdateItem` request.
9549
+ # Name of the table for the `UpdateItem` request. You can also provide
9550
+ # the Amazon Resource Name (ARN) of the table in this parameter.
8992
9551
  # @return [String]
8993
9552
  #
8994
9553
  # @!attribute [rw] condition_expression
@@ -9008,8 +9567,8 @@ module Aws::DynamoDB
9008
9567
  # @!attribute [rw] return_values_on_condition_check_failure
9009
9568
  # Use `ReturnValuesOnConditionCheckFailure` to get the item attributes
9010
9569
  # if the `Update` condition fails. For
9011
- # `ReturnValuesOnConditionCheckFailure`, the valid values are: NONE,
9012
- # ALL\_OLD, UPDATED\_OLD, ALL\_NEW, UPDATED\_NEW.
9570
+ # `ReturnValuesOnConditionCheckFailure`, the valid values are: NONE
9571
+ # and ALL\_OLD.
9013
9572
  # @return [String]
9014
9573
  #
9015
9574
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/Update AWS API Documentation
@@ -9027,7 +9586,8 @@ module Aws::DynamoDB
9027
9586
  end
9028
9587
 
9029
9588
  # @!attribute [rw] table_name
9030
- # The name of the table.
9589
+ # The name of the table. You can also provide the Amazon Resource Name
9590
+ # (ARN) of the table in this parameter.
9031
9591
  # @return [String]
9032
9592
  #
9033
9593
  # @!attribute [rw] point_in_time_recovery_specification
@@ -9057,7 +9617,8 @@ module Aws::DynamoDB
9057
9617
  end
9058
9618
 
9059
9619
  # @!attribute [rw] table_name
9060
- # The name of the table.
9620
+ # The name of the table. You can also provide the Amazon Resource Name
9621
+ # (ARN) of the table in this parameter.
9061
9622
  # @return [String]
9062
9623
  #
9063
9624
  # @!attribute [rw] index_name
@@ -9120,11 +9681,18 @@ module Aws::DynamoDB
9120
9681
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html
9121
9682
  # @return [Types::ProvisionedThroughput]
9122
9683
  #
9684
+ # @!attribute [rw] on_demand_throughput
9685
+ # Updates the maximum number of read and write units for the specified
9686
+ # global secondary index. If you use this parameter, you must specify
9687
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
9688
+ # @return [Types::OnDemandThroughput]
9689
+ #
9123
9690
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateGlobalSecondaryIndexAction AWS API Documentation
9124
9691
  #
9125
9692
  class UpdateGlobalSecondaryIndexAction < Struct.new(
9126
9693
  :index_name,
9127
- :provisioned_throughput)
9694
+ :provisioned_throughput,
9695
+ :on_demand_throughput)
9128
9696
  SENSITIVE = []
9129
9697
  include Aws::Structure
9130
9698
  end
@@ -9170,16 +9738,16 @@ module Aws::DynamoDB
9170
9738
  #
9171
9739
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
9172
9740
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
9173
- # Mode][1].
9741
+ # capacity mode][1].
9174
9742
  #
9175
9743
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
9176
9744
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode
9177
- # to [On-Demand Mode][2].
9745
+ # to [On-demand capacity mode][2].
9178
9746
  #
9179
9747
  #
9180
9748
  #
9181
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
9182
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
9749
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
9750
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
9183
9751
  # @return [String]
9184
9752
  #
9185
9753
  # @!attribute [rw] global_table_provisioned_write_capacity_units
@@ -9235,7 +9803,9 @@ module Aws::DynamoDB
9235
9803
  # Represents the input of an `UpdateItem` operation.
9236
9804
  #
9237
9805
  # @!attribute [rw] table_name
9238
- # The name of the table containing the item to update.
9806
+ # The name of the table containing the item to update. You can also
9807
+ # provide the Amazon Resource Name (ARN) of the table in this
9808
+ # parameter.
9239
9809
  # @return [String]
9240
9810
  #
9241
9811
  # @!attribute [rw] key
@@ -9533,6 +10103,15 @@ module Aws::DynamoDB
9533
10103
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.SpecifyingConditions.html
9534
10104
  # @return [Hash<String,Types::AttributeValue>]
9535
10105
  #
10106
+ # @!attribute [rw] return_values_on_condition_check_failure
10107
+ # An optional parameter that returns the item attributes for an
10108
+ # `UpdateItem` operation that failed a condition check.
10109
+ #
10110
+ # There is no additional cost associated with requesting a return
10111
+ # value aside from the small network and processing overhead of
10112
+ # receiving a larger response. No read capacity units are consumed.
10113
+ # @return [String]
10114
+ #
9536
10115
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateItemInput AWS API Documentation
9537
10116
  #
9538
10117
  class UpdateItemInput < Struct.new(
@@ -9547,7 +10126,8 @@ module Aws::DynamoDB
9547
10126
  :update_expression,
9548
10127
  :condition_expression,
9549
10128
  :expression_attribute_names,
9550
- :expression_attribute_values)
10129
+ :expression_attribute_values,
10130
+ :return_values_on_condition_check_failure)
9551
10131
  SENSITIVE = []
9552
10132
  include Aws::Structure
9553
10133
  end
@@ -9570,12 +10150,12 @@ module Aws::DynamoDB
9570
10150
  # with statistics for the table and any indexes involved in the
9571
10151
  # operation. `ConsumedCapacity` is only returned if the
9572
10152
  # `ReturnConsumedCapacity` parameter was specified. For more
9573
- # information, see [Provisioned Throughput][1] in the *Amazon DynamoDB
9574
- # Developer Guide*.
10153
+ # information, see [Capacity unity consumption for write
10154
+ # operations][1] in the *Amazon DynamoDB Developer Guide*.
9575
10155
  #
9576
10156
  #
9577
10157
  #
9578
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ProvisionedThroughput.html#ItemSizeCalculations.Reads
10158
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/read-write-operations.html#write-operation-consumption
9579
10159
  # @return [Types::ConsumedCapacity]
9580
10160
  #
9581
10161
  # @!attribute [rw] item_collection_metrics
@@ -9613,6 +10193,72 @@ module Aws::DynamoDB
9613
10193
  include Aws::Structure
9614
10194
  end
9615
10195
 
10196
+ # Enables updating the configuration for Kinesis Streaming.
10197
+ #
10198
+ # @!attribute [rw] approximate_creation_date_time_precision
10199
+ # Enables updating the precision of Kinesis data stream timestamp.
10200
+ # @return [String]
10201
+ #
10202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateKinesisStreamingConfiguration AWS API Documentation
10203
+ #
10204
+ class UpdateKinesisStreamingConfiguration < Struct.new(
10205
+ :approximate_creation_date_time_precision)
10206
+ SENSITIVE = []
10207
+ include Aws::Structure
10208
+ end
10209
+
10210
+ # @!attribute [rw] table_name
10211
+ # The table name for the Kinesis streaming destination input. You can
10212
+ # also provide the ARN of the table in this parameter.
10213
+ # @return [String]
10214
+ #
10215
+ # @!attribute [rw] stream_arn
10216
+ # The Amazon Resource Name (ARN) for the Kinesis stream input.
10217
+ # @return [String]
10218
+ #
10219
+ # @!attribute [rw] update_kinesis_streaming_configuration
10220
+ # The command to update the Kinesis stream configuration.
10221
+ # @return [Types::UpdateKinesisStreamingConfiguration]
10222
+ #
10223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateKinesisStreamingDestinationInput AWS API Documentation
10224
+ #
10225
+ class UpdateKinesisStreamingDestinationInput < Struct.new(
10226
+ :table_name,
10227
+ :stream_arn,
10228
+ :update_kinesis_streaming_configuration)
10229
+ SENSITIVE = []
10230
+ include Aws::Structure
10231
+ end
10232
+
10233
+ # @!attribute [rw] table_name
10234
+ # The table name for the Kinesis streaming destination output.
10235
+ # @return [String]
10236
+ #
10237
+ # @!attribute [rw] stream_arn
10238
+ # The ARN for the Kinesis stream input.
10239
+ # @return [String]
10240
+ #
10241
+ # @!attribute [rw] destination_status
10242
+ # The status of the attempt to update the Kinesis streaming
10243
+ # destination output.
10244
+ # @return [String]
10245
+ #
10246
+ # @!attribute [rw] update_kinesis_streaming_configuration
10247
+ # The command to update the Kinesis streaming destination
10248
+ # configuration.
10249
+ # @return [Types::UpdateKinesisStreamingConfiguration]
10250
+ #
10251
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateKinesisStreamingDestinationOutput AWS API Documentation
10252
+ #
10253
+ class UpdateKinesisStreamingDestinationOutput < Struct.new(
10254
+ :table_name,
10255
+ :stream_arn,
10256
+ :destination_status,
10257
+ :update_kinesis_streaming_configuration)
10258
+ SENSITIVE = []
10259
+ include Aws::Structure
10260
+ end
10261
+
9616
10262
  # Represents a replica to be modified.
9617
10263
  #
9618
10264
  # @!attribute [rw] region_name
@@ -9632,6 +10278,10 @@ module Aws::DynamoDB
9632
10278
  # source table's provisioned throughput settings.
9633
10279
  # @return [Types::ProvisionedThroughputOverride]
9634
10280
  #
10281
+ # @!attribute [rw] on_demand_throughput_override
10282
+ # Overrides the maximum on-demand throughput for the replica table.
10283
+ # @return [Types::OnDemandThroughputOverride]
10284
+ #
9635
10285
  # @!attribute [rw] global_secondary_indexes
9636
10286
  # Replica-specific global secondary index settings.
9637
10287
  # @return [Array<Types::ReplicaGlobalSecondaryIndex>]
@@ -9647,6 +10297,7 @@ module Aws::DynamoDB
9647
10297
  :region_name,
9648
10298
  :kms_master_key_id,
9649
10299
  :provisioned_throughput_override,
10300
+ :on_demand_throughput_override,
9650
10301
  :global_secondary_indexes,
9651
10302
  :table_class_override)
9652
10303
  SENSITIVE = []
@@ -9663,7 +10314,8 @@ module Aws::DynamoDB
9663
10314
  # @return [Array<Types::AttributeDefinition>]
9664
10315
  #
9665
10316
  # @!attribute [rw] table_name
9666
- # The name of the table to be updated.
10317
+ # The name of the table to be updated. You can also provide the Amazon
10318
+ # Resource Name (ARN) of the table in this parameter.
9667
10319
  # @return [String]
9668
10320
  #
9669
10321
  # @!attribute [rw] billing_mode
@@ -9676,16 +10328,16 @@ module Aws::DynamoDB
9676
10328
  #
9677
10329
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
9678
10330
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
9679
- # Mode][1].
10331
+ # capacity mode][1].
9680
10332
  #
9681
10333
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
9682
10334
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode
9683
- # to [On-Demand Mode][2].
10335
+ # to [On-demand capacity mode][2].
9684
10336
  #
9685
10337
  #
9686
10338
  #
9687
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
9688
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
10339
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
10340
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
9689
10341
  # @return [String]
9690
10342
  #
9691
10343
  # @!attribute [rw] provisioned_throughput
@@ -9718,9 +10370,9 @@ module Aws::DynamoDB
9718
10370
  # @!attribute [rw] stream_specification
9719
10371
  # Represents the DynamoDB Streams configuration for the table.
9720
10372
  #
9721
- # <note markdown="1"> You receive a `ResourceInUseException` if you try to enable a stream
9722
- # on a table that already has a stream, or if you try to disable a
9723
- # stream on a table that doesn't have a stream.
10373
+ # <note markdown="1"> You receive a `ValidationException` if you try to enable a stream on
10374
+ # a table that already has a stream, or if you try to disable a stream
10375
+ # on a table that doesn't have a stream.
9724
10376
  #
9725
10377
  # </note>
9726
10378
  # @return [Types::StreamSpecification]
@@ -9733,14 +10385,10 @@ module Aws::DynamoDB
9733
10385
  # A list of replica update actions (create, delete, or update) for the
9734
10386
  # table.
9735
10387
  #
9736
- # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
9737
- # global tables.
10388
+ # <note markdown="1"> For global tables, this property only applies to global tables using
10389
+ # Version 2019.11.21 (Current version).
9738
10390
  #
9739
10391
  # </note>
9740
- #
9741
- #
9742
- #
9743
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
9744
10392
  # @return [Array<Types::ReplicationGroupUpdate>]
9745
10393
  #
9746
10394
  # @!attribute [rw] table_class
@@ -9753,6 +10401,12 @@ module Aws::DynamoDB
9753
10401
  # disabled (false) on the table.
9754
10402
  # @return [Boolean]
9755
10403
  #
10404
+ # @!attribute [rw] on_demand_throughput
10405
+ # Updates the maximum number of read and write units for the specified
10406
+ # table in on-demand capacity mode. If you use this parameter, you
10407
+ # must specify `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
10408
+ # @return [Types::OnDemandThroughput]
10409
+ #
9756
10410
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateTableInput AWS API Documentation
9757
10411
  #
9758
10412
  class UpdateTableInput < Struct.new(
@@ -9765,7 +10419,8 @@ module Aws::DynamoDB
9765
10419
  :sse_specification,
9766
10420
  :replica_updates,
9767
10421
  :table_class,
9768
- :deletion_protection_enabled)
10422
+ :deletion_protection_enabled,
10423
+ :on_demand_throughput)
9769
10424
  SENSITIVE = []
9770
10425
  include Aws::Structure
9771
10426
  end
@@ -9790,7 +10445,8 @@ module Aws::DynamoDB
9790
10445
  # @return [Array<Types::GlobalSecondaryIndexAutoScalingUpdate>]
9791
10446
  #
9792
10447
  # @!attribute [rw] table_name
9793
- # The name of the global table to be updated.
10448
+ # The name of the global table to be updated. You can also provide the
10449
+ # Amazon Resource Name (ARN) of the table in this parameter.
9794
10450
  # @return [String]
9795
10451
  #
9796
10452
  # @!attribute [rw] provisioned_write_capacity_auto_scaling_update
@@ -9830,7 +10486,8 @@ module Aws::DynamoDB
9830
10486
  # Represents the input of an `UpdateTimeToLive` operation.
9831
10487
  #
9832
10488
  # @!attribute [rw] table_name
9833
- # The name of the table to be configured.
10489
+ # The name of the table to be configured. You can also provide the
10490
+ # Amazon Resource Name (ARN) of the table in this parameter.
9834
10491
  # @return [String]
9835
10492
  #
9836
10493
  # @!attribute [rw] time_to_live_specification