aws-sdk-dynamodb 1.74.0 → 1.82.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.
@@ -30,7 +30,7 @@ require 'aws-sdk-core/plugins/http_checksum.rb'
30
30
  require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
31
  require 'aws-sdk-core/plugins/defaults_mode.rb'
32
32
  require 'aws-sdk-core/plugins/recursion_detection.rb'
33
- require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/sign.rb'
34
34
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
35
35
  require 'aws-sdk-dynamodb/plugins/extended_retries.rb'
36
36
  require 'aws-sdk-dynamodb/plugins/simple_attributes.rb'
@@ -82,11 +82,12 @@ module Aws::DynamoDB
82
82
  add_plugin(Aws::Plugins::ChecksumAlgorithm)
83
83
  add_plugin(Aws::Plugins::DefaultsMode)
84
84
  add_plugin(Aws::Plugins::RecursionDetection)
85
- add_plugin(Aws::Plugins::SignatureV4)
85
+ add_plugin(Aws::Plugins::Sign)
86
86
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
87
87
  add_plugin(Aws::DynamoDB::Plugins::ExtendedRetries)
88
88
  add_plugin(Aws::DynamoDB::Plugins::SimpleAttributes)
89
89
  add_plugin(Aws::DynamoDB::Plugins::CRC32Validation)
90
+ add_plugin(Aws::DynamoDB::Plugins::Endpoints)
90
91
 
91
92
  # @overload initialize(options)
92
93
  # @param [Hash] options
@@ -316,6 +317,19 @@ module Aws::DynamoDB
316
317
  # ** Please note ** When response stubbing is enabled, no HTTP
317
318
  # requests are made, and retries are disabled.
318
319
  #
320
+ # @option options [Aws::TokenProvider] :token_provider
321
+ # A Bearer Token Provider. This can be an instance of any one of the
322
+ # following classes:
323
+ #
324
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
325
+ # tokens.
326
+ #
327
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
328
+ # access token generated from `aws login`.
329
+ #
330
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
331
+ # will be used to search for tokens configured for your profile in shared configuration files.
332
+ #
319
333
  # @option options [Boolean] :use_dualstack_endpoint
320
334
  # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
321
335
  # will be used if available.
@@ -329,6 +343,9 @@ module Aws::DynamoDB
329
343
  # When `true`, request parameters are validated before
330
344
  # sending the request.
331
345
  #
346
+ # @option options [Aws::DynamoDB::EndpointProvider] :endpoint_provider
347
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::DynamoDB::EndpointParameters`
348
+ #
332
349
  # @option options [URI::HTTP,String] :http_proxy A proxy to send
333
350
  # requests through. Formatted like 'http://proxy.com:123'.
334
351
  #
@@ -381,13 +398,25 @@ module Aws::DynamoDB
381
398
  # @!group API Operations
382
399
 
383
400
  # This operation allows you to perform batch reads or writes on data
384
- # stored in DynamoDB, using PartiQL.
401
+ # stored in DynamoDB, using PartiQL. Each read statement in a
402
+ # `BatchExecuteStatement` must specify an equality condition on all key
403
+ # attributes. This enforces that each `SELECT` statement in a batch
404
+ # returns at most a single item.
385
405
  #
386
406
  # <note markdown="1"> The entire batch must consist of either read statements or write
387
407
  # statements, you cannot mix both in one batch.
388
408
  #
389
409
  # </note>
390
410
  #
411
+ # A HTTP 200 response does not mean that all statements in the
412
+ # BatchExecuteStatement succeeded. Error details for individual
413
+ # statements can be found under the [Error][1] field of the
414
+ # `BatchStatementResponse` for each statement.
415
+ #
416
+ #
417
+ #
418
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchStatementResponse.html#DDB-Type-BatchStatementResponse-Error
419
+ #
391
420
  # @option params [required, Array<Types::BatchStatementRequest>] :statements
392
421
  # The list of PartiQL statements representing the batch to run.
393
422
  #
@@ -752,8 +781,11 @@ module Aws::DynamoDB
752
781
  # the API call. For more details on this distinction, see [Naming Rules
753
782
  # and Data Types][1].
754
783
  #
755
- # <note markdown="1"> `BatchWriteItem` cannot update items. To update items, use the
756
- # `UpdateItem` action.
784
+ # <note markdown="1"> `BatchWriteItem` cannot update items. If you perform a
785
+ # `BatchWriteItem` operation on an existing item, that item's values
786
+ # will be overwritten by the operation and it will appear like it was
787
+ # updated. To update items, we recommend you use the `UpdateItem`
788
+ # action.
757
789
  #
758
790
  # </note>
759
791
  #
@@ -1072,10 +1104,14 @@ module Aws::DynamoDB
1072
1104
  # a replication relationship between two or more DynamoDB tables with
1073
1105
  # the same table name in the provided Regions.
1074
1106
  #
1075
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
1076
- # tables.
1077
- #
1078
- # </note>
1107
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
1108
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
1109
+ # when creating new global tables, as it provides greater flexibility,
1110
+ # higher efficiency and consumes less write capacity than 2017.11.29
1111
+ # (Legacy). To determine which version you are using, see [Determining
1112
+ # the version][3]. To update existing global tables from version
1113
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
1114
+ # global tables][4].
1079
1115
  #
1080
1116
  # If you want to add a new replica table to a global table, each of the
1081
1117
  # following conditions must be true:
@@ -1119,6 +1155,9 @@ module Aws::DynamoDB
1119
1155
  #
1120
1156
  #
1121
1157
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
1158
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
1159
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
1160
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
1122
1161
  #
1123
1162
  # @option params [required, String] :global_table_name
1124
1163
  # The global table name.
@@ -1728,7 +1767,7 @@ module Aws::DynamoDB
1728
1767
  # A map of attribute names to `AttributeValue` objects, representing the
1729
1768
  # primary key of the item to delete.
1730
1769
  #
1731
- # For the primary key, you must provide all of the attributes. For
1770
+ # For the primary key, you must provide all of the key attributes. For
1732
1771
  # example, with a simple primary key, you only need to provide a value
1733
1772
  # for the partition key. For a composite primary key, you must provide
1734
1773
  # values for both the partition key and the sort key.
@@ -1762,6 +1801,10 @@ module Aws::DynamoDB
1762
1801
  #
1763
1802
  # * `ALL_OLD` - The content of the old item is returned.
1764
1803
  #
1804
+ # There is no additional cost associated with requesting a return value
1805
+ # aside from the small network and processing overhead of receiving a
1806
+ # larger response. No read capacity units are consumed.
1807
+ #
1765
1808
  # <note markdown="1"> The `ReturnValues` parameter is used by several DynamoDB operations;
1766
1809
  # however, `DeleteItem` does not recognize any values other than `NONE`
1767
1810
  # or `ALL_OLD`.
@@ -1987,6 +2030,9 @@ module Aws::DynamoDB
1987
2030
  # DynamoDB returns a `ResourceNotFoundException`. If table is already in
1988
2031
  # the `DELETING` state, no error is returned.
1989
2032
  #
2033
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2034
+ # global tables.
2035
+ #
1990
2036
  # <note markdown="1"> DynamoDB might continue to accept data read and write operations, such
1991
2037
  # as `GetItem` and `PutItem`, on a table in the `DELETING` state until
1992
2038
  # the table deletion is complete.
@@ -2001,6 +2047,10 @@ module Aws::DynamoDB
2001
2047
  #
2002
2048
  # Use the `DescribeTable` action to check the status of the table.
2003
2049
  #
2050
+ #
2051
+ #
2052
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2053
+ #
2004
2054
  # @option params [required, String] :table_name
2005
2055
  # The name of the table to delete.
2006
2056
  #
@@ -2251,7 +2301,7 @@ module Aws::DynamoDB
2251
2301
  req.send_request(options)
2252
2302
  end
2253
2303
 
2254
- # Returns information about contributor insights, for a given table or
2304
+ # Returns information about contributor insights for a given table or
2255
2305
  # global secondary index.
2256
2306
  #
2257
2307
  # @option params [required, String] :table_name
@@ -2296,7 +2346,14 @@ module Aws::DynamoDB
2296
2346
  req.send_request(options)
2297
2347
  end
2298
2348
 
2299
- # Returns the regional endpoint information.
2349
+ # Returns the regional endpoint information. This action must be
2350
+ # included in your VPC endpoint policies, or access to the
2351
+ # DescribeEndpoints API will be denied. For more information on policy
2352
+ # permissions, please see [Internetwork traffic privacy][1].
2353
+ #
2354
+ #
2355
+ #
2356
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/inter-network-traffic-privacy.html#inter-network-traffic-DescribeEndpoints
2300
2357
  #
2301
2358
  # @return [Types::DescribeEndpointsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2302
2359
  #
@@ -2365,17 +2422,21 @@ module Aws::DynamoDB
2365
2422
 
2366
2423
  # Returns information about the specified global table.
2367
2424
  #
2368
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
2369
- # tables. If you are using global tables [Version 2019.11.21][2] you can
2370
- # use [DescribeTable][3] instead.
2371
- #
2372
- # </note>
2425
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2426
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2427
+ # when creating new global tables, as it provides greater flexibility,
2428
+ # higher efficiency and consumes less write capacity than 2017.11.29
2429
+ # (Legacy). To determine which version you are using, see [Determining
2430
+ # the version][3]. To update existing global tables from version
2431
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2432
+ # global tables][4].
2373
2433
  #
2374
2434
  #
2375
2435
  #
2376
2436
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2377
2437
  # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2378
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
2438
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2439
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2379
2440
  #
2380
2441
  # @option params [required, String] :global_table_name
2381
2442
  # The name of the global table.
@@ -2421,14 +2482,21 @@ module Aws::DynamoDB
2421
2482
 
2422
2483
  # Describes Region-specific settings for a global table.
2423
2484
  #
2424
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
2425
- # tables.
2426
- #
2427
- # </note>
2485
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2486
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2487
+ # when creating new global tables, as it provides greater flexibility,
2488
+ # higher efficiency and consumes less write capacity than 2017.11.29
2489
+ # (Legacy). To determine which version you are using, see [Determining
2490
+ # the version][3]. To update existing global tables from version
2491
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2492
+ # global tables][4].
2428
2493
  #
2429
2494
  #
2430
2495
  #
2431
2496
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2497
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2498
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2499
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2432
2500
  #
2433
2501
  # @option params [required, String] :global_table_name
2434
2502
  # The name of the global table to describe.
@@ -2511,6 +2579,79 @@ module Aws::DynamoDB
2511
2579
  req.send_request(options)
2512
2580
  end
2513
2581
 
2582
+ # Represents the properties of the import.
2583
+ #
2584
+ # @option params [required, String] :import_arn
2585
+ # The Amazon Resource Name (ARN) associated with the table you're
2586
+ # importing to.
2587
+ #
2588
+ # @return [Types::DescribeImportOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2589
+ #
2590
+ # * {Types::DescribeImportOutput#import_table_description #import_table_description} => Types::ImportTableDescription
2591
+ #
2592
+ # @example Request syntax with placeholder values
2593
+ #
2594
+ # resp = client.describe_import({
2595
+ # import_arn: "ImportArn", # required
2596
+ # })
2597
+ #
2598
+ # @example Response structure
2599
+ #
2600
+ # resp.import_table_description.import_arn #=> String
2601
+ # resp.import_table_description.import_status #=> String, one of "IN_PROGRESS", "COMPLETED", "CANCELLING", "CANCELLED", "FAILED"
2602
+ # resp.import_table_description.table_arn #=> String
2603
+ # resp.import_table_description.table_id #=> String
2604
+ # resp.import_table_description.client_token #=> String
2605
+ # resp.import_table_description.s3_bucket_source.s3_bucket_owner #=> String
2606
+ # resp.import_table_description.s3_bucket_source.s3_bucket #=> String
2607
+ # resp.import_table_description.s3_bucket_source.s3_key_prefix #=> String
2608
+ # resp.import_table_description.error_count #=> Integer
2609
+ # resp.import_table_description.cloud_watch_log_group_arn #=> String
2610
+ # resp.import_table_description.input_format #=> String, one of "DYNAMODB_JSON", "ION", "CSV"
2611
+ # resp.import_table_description.input_format_options.csv.delimiter #=> String
2612
+ # resp.import_table_description.input_format_options.csv.header_list #=> Array
2613
+ # resp.import_table_description.input_format_options.csv.header_list[0] #=> String
2614
+ # resp.import_table_description.input_compression_type #=> String, one of "GZIP", "ZSTD", "NONE"
2615
+ # resp.import_table_description.table_creation_parameters.table_name #=> String
2616
+ # resp.import_table_description.table_creation_parameters.attribute_definitions #=> Array
2617
+ # resp.import_table_description.table_creation_parameters.attribute_definitions[0].attribute_name #=> String
2618
+ # resp.import_table_description.table_creation_parameters.attribute_definitions[0].attribute_type #=> String, one of "S", "N", "B"
2619
+ # resp.import_table_description.table_creation_parameters.key_schema #=> Array
2620
+ # resp.import_table_description.table_creation_parameters.key_schema[0].attribute_name #=> String
2621
+ # resp.import_table_description.table_creation_parameters.key_schema[0].key_type #=> String, one of "HASH", "RANGE"
2622
+ # resp.import_table_description.table_creation_parameters.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
2623
+ # resp.import_table_description.table_creation_parameters.provisioned_throughput.read_capacity_units #=> Integer
2624
+ # resp.import_table_description.table_creation_parameters.provisioned_throughput.write_capacity_units #=> Integer
2625
+ # resp.import_table_description.table_creation_parameters.sse_specification.enabled #=> Boolean
2626
+ # resp.import_table_description.table_creation_parameters.sse_specification.sse_type #=> String, one of "AES256", "KMS"
2627
+ # resp.import_table_description.table_creation_parameters.sse_specification.kms_master_key_id #=> String
2628
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes #=> Array
2629
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].index_name #=> String
2630
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema #=> Array
2631
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema[0].attribute_name #=> String
2632
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema[0].key_type #=> String, one of "HASH", "RANGE"
2633
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.projection_type #=> String, one of "ALL", "KEYS_ONLY", "INCLUDE"
2634
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes #=> Array
2635
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
2636
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
2637
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
2638
+ # resp.import_table_description.start_time #=> Time
2639
+ # resp.import_table_description.end_time #=> Time
2640
+ # resp.import_table_description.processed_size_bytes #=> Integer
2641
+ # resp.import_table_description.processed_item_count #=> Integer
2642
+ # resp.import_table_description.imported_item_count #=> Integer
2643
+ # resp.import_table_description.failure_code #=> String
2644
+ # resp.import_table_description.failure_message #=> String
2645
+ #
2646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeImport AWS API Documentation
2647
+ #
2648
+ # @overload describe_import(params = {})
2649
+ # @param [Hash] params ({})
2650
+ def describe_import(params = {}, options = {})
2651
+ req = build_request(:describe_import, params)
2652
+ req.send_request(options)
2653
+ end
2654
+
2514
2655
  # Returns information about the status of Kinesis streaming.
2515
2656
  #
2516
2657
  # @option params [required, String] :table_name
@@ -2658,6 +2799,9 @@ module Aws::DynamoDB
2658
2799
  # the table, when it was created, the primary key schema, and any
2659
2800
  # indexes on the table.
2660
2801
  #
2802
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2803
+ # global tables.
2804
+ #
2661
2805
  # <note markdown="1"> If you issue a `DescribeTable` request immediately after a
2662
2806
  # `CreateTable` request, DynamoDB might return a
2663
2807
  # `ResourceNotFoundException`. This is because `DescribeTable` uses an
@@ -2667,6 +2811,10 @@ module Aws::DynamoDB
2667
2811
  #
2668
2812
  # </note>
2669
2813
  #
2814
+ #
2815
+ #
2816
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2817
+ #
2670
2818
  # @option params [required, String] :table_name
2671
2819
  # The name of the table to describe.
2672
2820
  #
@@ -2826,10 +2974,8 @@ module Aws::DynamoDB
2826
2974
  # Describes auto scaling settings across replicas of the global table at
2827
2975
  # once.
2828
2976
  #
2829
- # <note markdown="1"> This operation only applies to [Version 2019.11.21][1] of global
2830
- # tables.
2831
- #
2832
- # </note>
2977
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
2978
+ # global tables.
2833
2979
  #
2834
2980
  #
2835
2981
  #
@@ -3029,7 +3175,8 @@ module Aws::DynamoDB
3029
3175
  # number of items (if using the Limit parameter) or a maximum of 1 MB of
3030
3176
  # data (and then apply any filtering to the results using `WHERE`
3031
3177
  # clause). If `LastEvaluatedKey` is present in the response, you need to
3032
- # paginate the result set.
3178
+ # paginate the result set. If `NextToken` is present, you need to
3179
+ # paginate the result set and include `NextToken`.
3033
3180
  #
3034
3181
  # @option params [required, String] :statement
3035
3182
  # The PartiQL statement representing the operation to run.
@@ -3218,8 +3365,9 @@ module Aws::DynamoDB
3218
3365
  # The Amazon Resource Name (ARN) associated with the table to export.
3219
3366
  #
3220
3367
  # @option params [Time,DateTime,Date,Integer,String] :export_time
3221
- # Time in the past from which to export table data. The table export
3222
- # will be a snapshot of the table's state at this point in time.
3368
+ # Time in the past from which to export table data, counted in seconds
3369
+ # from the start of the Unix epoch. The table export will be a snapshot
3370
+ # of the table's state at this point in time.
3223
3371
  #
3224
3372
  # @option params [String] :client_token
3225
3373
  # Providing a `ClientToken` makes the call to
@@ -3234,7 +3382,7 @@ module Aws::DynamoDB
3234
3382
  #
3235
3383
  # If you submit a request with the same client token but a change in
3236
3384
  # other parameters within the 8-hour idempotency window, DynamoDB
3237
- # returns an `IdempotentParameterMismatch` exception.
3385
+ # returns an `ImportConflictException`.
3238
3386
  #
3239
3387
  # **A suitable default value is auto-generated.** You should normally
3240
3388
  # not need to pass this option.**
@@ -3510,6 +3658,167 @@ module Aws::DynamoDB
3510
3658
  req.send_request(options)
3511
3659
  end
3512
3660
 
3661
+ # Imports table data from an S3 bucket.
3662
+ #
3663
+ # @option params [String] :client_token
3664
+ # Providing a `ClientToken` makes the call to `ImportTableInput`
3665
+ # idempotent, meaning that multiple identical calls have the same effect
3666
+ # as one single call.
3667
+ #
3668
+ # A client token is valid for 8 hours after the first request that uses
3669
+ # it is completed. After 8 hours, any request with the same client token
3670
+ # is treated as a new request. Do not resubmit the same request with the
3671
+ # same client token for more than 8 hours, or the result might not be
3672
+ # idempotent.
3673
+ #
3674
+ # If you submit a request with the same client token but a change in
3675
+ # other parameters within the 8-hour idempotency window, DynamoDB
3676
+ # returns an `IdempotentParameterMismatch` exception.
3677
+ #
3678
+ # **A suitable default value is auto-generated.** You should normally
3679
+ # not need to pass this option.**
3680
+ #
3681
+ # @option params [required, Types::S3BucketSource] :s3_bucket_source
3682
+ # The S3 bucket that provides the source for the import.
3683
+ #
3684
+ # @option params [required, String] :input_format
3685
+ # The format of the source data. Valid values for `ImportFormat` are
3686
+ # `CSV`, `DYNAMODB_JSON` or `ION`.
3687
+ #
3688
+ # @option params [Types::InputFormatOptions] :input_format_options
3689
+ # Additional properties that specify how the input is formatted,
3690
+ #
3691
+ # @option params [String] :input_compression_type
3692
+ # Type of compression to be used on the input coming from the imported
3693
+ # table.
3694
+ #
3695
+ # @option params [required, Types::TableCreationParameters] :table_creation_parameters
3696
+ # Parameters for the table to import the data into.
3697
+ #
3698
+ # @return [Types::ImportTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3699
+ #
3700
+ # * {Types::ImportTableOutput#import_table_description #import_table_description} => Types::ImportTableDescription
3701
+ #
3702
+ # @example Request syntax with placeholder values
3703
+ #
3704
+ # resp = client.import_table({
3705
+ # client_token: "ClientToken",
3706
+ # s3_bucket_source: { # required
3707
+ # s3_bucket_owner: "S3BucketOwner",
3708
+ # s3_bucket: "S3Bucket", # required
3709
+ # s3_key_prefix: "S3Prefix",
3710
+ # },
3711
+ # input_format: "DYNAMODB_JSON", # required, accepts DYNAMODB_JSON, ION, CSV
3712
+ # input_format_options: {
3713
+ # csv: {
3714
+ # delimiter: "CsvDelimiter",
3715
+ # header_list: ["CsvHeader"],
3716
+ # },
3717
+ # },
3718
+ # input_compression_type: "GZIP", # accepts GZIP, ZSTD, NONE
3719
+ # table_creation_parameters: { # required
3720
+ # table_name: "TableName", # required
3721
+ # attribute_definitions: [ # required
3722
+ # {
3723
+ # attribute_name: "KeySchemaAttributeName", # required
3724
+ # attribute_type: "S", # required, accepts S, N, B
3725
+ # },
3726
+ # ],
3727
+ # key_schema: [ # required
3728
+ # {
3729
+ # attribute_name: "KeySchemaAttributeName", # required
3730
+ # key_type: "HASH", # required, accepts HASH, RANGE
3731
+ # },
3732
+ # ],
3733
+ # billing_mode: "PROVISIONED", # accepts PROVISIONED, PAY_PER_REQUEST
3734
+ # provisioned_throughput: {
3735
+ # read_capacity_units: 1, # required
3736
+ # write_capacity_units: 1, # required
3737
+ # },
3738
+ # sse_specification: {
3739
+ # enabled: false,
3740
+ # sse_type: "AES256", # accepts AES256, KMS
3741
+ # kms_master_key_id: "KMSMasterKeyId",
3742
+ # },
3743
+ # global_secondary_indexes: [
3744
+ # {
3745
+ # index_name: "IndexName", # required
3746
+ # key_schema: [ # required
3747
+ # {
3748
+ # attribute_name: "KeySchemaAttributeName", # required
3749
+ # key_type: "HASH", # required, accepts HASH, RANGE
3750
+ # },
3751
+ # ],
3752
+ # projection: { # required
3753
+ # projection_type: "ALL", # accepts ALL, KEYS_ONLY, INCLUDE
3754
+ # non_key_attributes: ["NonKeyAttributeName"],
3755
+ # },
3756
+ # provisioned_throughput: {
3757
+ # read_capacity_units: 1, # required
3758
+ # write_capacity_units: 1, # required
3759
+ # },
3760
+ # },
3761
+ # ],
3762
+ # },
3763
+ # })
3764
+ #
3765
+ # @example Response structure
3766
+ #
3767
+ # resp.import_table_description.import_arn #=> String
3768
+ # resp.import_table_description.import_status #=> String, one of "IN_PROGRESS", "COMPLETED", "CANCELLING", "CANCELLED", "FAILED"
3769
+ # resp.import_table_description.table_arn #=> String
3770
+ # resp.import_table_description.table_id #=> String
3771
+ # resp.import_table_description.client_token #=> String
3772
+ # resp.import_table_description.s3_bucket_source.s3_bucket_owner #=> String
3773
+ # resp.import_table_description.s3_bucket_source.s3_bucket #=> String
3774
+ # resp.import_table_description.s3_bucket_source.s3_key_prefix #=> String
3775
+ # resp.import_table_description.error_count #=> Integer
3776
+ # resp.import_table_description.cloud_watch_log_group_arn #=> String
3777
+ # resp.import_table_description.input_format #=> String, one of "DYNAMODB_JSON", "ION", "CSV"
3778
+ # resp.import_table_description.input_format_options.csv.delimiter #=> String
3779
+ # resp.import_table_description.input_format_options.csv.header_list #=> Array
3780
+ # resp.import_table_description.input_format_options.csv.header_list[0] #=> String
3781
+ # resp.import_table_description.input_compression_type #=> String, one of "GZIP", "ZSTD", "NONE"
3782
+ # resp.import_table_description.table_creation_parameters.table_name #=> String
3783
+ # resp.import_table_description.table_creation_parameters.attribute_definitions #=> Array
3784
+ # resp.import_table_description.table_creation_parameters.attribute_definitions[0].attribute_name #=> String
3785
+ # resp.import_table_description.table_creation_parameters.attribute_definitions[0].attribute_type #=> String, one of "S", "N", "B"
3786
+ # resp.import_table_description.table_creation_parameters.key_schema #=> Array
3787
+ # resp.import_table_description.table_creation_parameters.key_schema[0].attribute_name #=> String
3788
+ # resp.import_table_description.table_creation_parameters.key_schema[0].key_type #=> String, one of "HASH", "RANGE"
3789
+ # resp.import_table_description.table_creation_parameters.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
3790
+ # resp.import_table_description.table_creation_parameters.provisioned_throughput.read_capacity_units #=> Integer
3791
+ # resp.import_table_description.table_creation_parameters.provisioned_throughput.write_capacity_units #=> Integer
3792
+ # resp.import_table_description.table_creation_parameters.sse_specification.enabled #=> Boolean
3793
+ # resp.import_table_description.table_creation_parameters.sse_specification.sse_type #=> String, one of "AES256", "KMS"
3794
+ # resp.import_table_description.table_creation_parameters.sse_specification.kms_master_key_id #=> String
3795
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes #=> Array
3796
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].index_name #=> String
3797
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema #=> Array
3798
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema[0].attribute_name #=> String
3799
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].key_schema[0].key_type #=> String, one of "HASH", "RANGE"
3800
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.projection_type #=> String, one of "ALL", "KEYS_ONLY", "INCLUDE"
3801
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes #=> Array
3802
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
3803
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
3804
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
3805
+ # resp.import_table_description.start_time #=> Time
3806
+ # resp.import_table_description.end_time #=> Time
3807
+ # resp.import_table_description.processed_size_bytes #=> Integer
3808
+ # resp.import_table_description.processed_item_count #=> Integer
3809
+ # resp.import_table_description.imported_item_count #=> Integer
3810
+ # resp.import_table_description.failure_code #=> String
3811
+ # resp.import_table_description.failure_message #=> String
3812
+ #
3813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ImportTable AWS API Documentation
3814
+ #
3815
+ # @overload import_table(params = {})
3816
+ # @param [Hash] params ({})
3817
+ def import_table(params = {}, options = {})
3818
+ req = build_request(:import_table, params)
3819
+ req.send_request(options)
3820
+ end
3821
+
3513
3822
  # List backups associated with an Amazon Web Services account. To list
3514
3823
  # backups for a given table, specify `TableName`. `ListBackups` returns
3515
3824
  # a paginated list of results with at most 1 MB worth of items in a
@@ -3548,7 +3857,8 @@ module Aws::DynamoDB
3548
3857
  #
3549
3858
  # Where `BackupType` can be:
3550
3859
  #
3551
- # * `USER` - On-demand backup created by you.
3860
+ # * `USER` - On-demand backup created by you. (The default setting if no
3861
+ # other backup types are specified.)
3552
3862
  #
3553
3863
  # * `SYSTEM` - On-demand backup automatically created by DynamoDB.
3554
3864
  #
@@ -3684,14 +3994,21 @@ module Aws::DynamoDB
3684
3994
 
3685
3995
  # Lists all global tables that have a replica in the specified Region.
3686
3996
  #
3687
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
3688
- # tables.
3689
- #
3690
- # </note>
3997
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
3998
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
3999
+ # when creating new global tables, as it provides greater flexibility,
4000
+ # higher efficiency and consumes less write capacity than 2017.11.29
4001
+ # (Legacy). To determine which version you are using, see [Determining
4002
+ # the version][3]. To update existing global tables from version
4003
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
4004
+ # global tables][4].
3691
4005
  #
3692
4006
  #
3693
4007
  #
3694
4008
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
4009
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
4010
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
4011
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
3695
4012
  #
3696
4013
  # @option params [String] :exclusive_start_global_table_name
3697
4014
  # The first global table name that this operation will evaluate.
@@ -3739,6 +4056,59 @@ module Aws::DynamoDB
3739
4056
  req.send_request(options)
3740
4057
  end
3741
4058
 
4059
+ # Lists completed imports within the past 90 days.
4060
+ #
4061
+ # @option params [String] :table_arn
4062
+ # The Amazon Resource Name (ARN) associated with the table that was
4063
+ # imported to.
4064
+ #
4065
+ # @option params [Integer] :page_size
4066
+ # The number of `ImportSummary `objects returned in a single page.
4067
+ #
4068
+ # @option params [String] :next_token
4069
+ # An optional string that, if supplied, must be copied from the output
4070
+ # of a previous call to `ListImports`. When provided in this manner, the
4071
+ # API fetches the next page of results.
4072
+ #
4073
+ # @return [Types::ListImportsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4074
+ #
4075
+ # * {Types::ListImportsOutput#import_summary_list #import_summary_list} => Array&lt;Types::ImportSummary&gt;
4076
+ # * {Types::ListImportsOutput#next_token #next_token} => String
4077
+ #
4078
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4079
+ #
4080
+ # @example Request syntax with placeholder values
4081
+ #
4082
+ # resp = client.list_imports({
4083
+ # table_arn: "TableArn",
4084
+ # page_size: 1,
4085
+ # next_token: "ImportNextToken",
4086
+ # })
4087
+ #
4088
+ # @example Response structure
4089
+ #
4090
+ # resp.import_summary_list #=> Array
4091
+ # resp.import_summary_list[0].import_arn #=> String
4092
+ # resp.import_summary_list[0].import_status #=> String, one of "IN_PROGRESS", "COMPLETED", "CANCELLING", "CANCELLED", "FAILED"
4093
+ # resp.import_summary_list[0].table_arn #=> String
4094
+ # resp.import_summary_list[0].s3_bucket_source.s3_bucket_owner #=> String
4095
+ # resp.import_summary_list[0].s3_bucket_source.s3_bucket #=> String
4096
+ # resp.import_summary_list[0].s3_bucket_source.s3_key_prefix #=> String
4097
+ # resp.import_summary_list[0].cloud_watch_log_group_arn #=> String
4098
+ # resp.import_summary_list[0].input_format #=> String, one of "DYNAMODB_JSON", "ION", "CSV"
4099
+ # resp.import_summary_list[0].start_time #=> Time
4100
+ # resp.import_summary_list[0].end_time #=> Time
4101
+ # resp.next_token #=> String
4102
+ #
4103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/ListImports AWS API Documentation
4104
+ #
4105
+ # @overload list_imports(params = {})
4106
+ # @param [Hash] params ({})
4107
+ def list_imports(params = {}, options = {})
4108
+ req = build_request(:list_imports, params)
4109
+ req.send_request(options)
4110
+ end
4111
+
3742
4112
  # Returns an array of table names associated with the current account
3743
4113
  # and endpoint. The output from `ListTables` is paginated, with each
3744
4114
  # page returning a maximum of 100 table names.
@@ -3855,31 +4225,8 @@ module Aws::DynamoDB
3855
4225
  # item's attribute values in the same operation, using the
3856
4226
  # `ReturnValues` parameter.
3857
4227
  #
3858
- # This topic provides general information about the `PutItem` API.
3859
- #
3860
- # For information on how to call the `PutItem` API using the Amazon Web
3861
- # Services SDK in specific languages, see the following:
3862
- #
3863
- # * [ PutItem in the Command Line Interface][1]
3864
- #
3865
- # * [ PutItem in the SDK for .NET][2]
3866
- #
3867
- # * [ PutItem in the SDK for C++][3]
3868
- #
3869
- # * [ PutItem in the SDK for Go][4]
3870
- #
3871
- # * [ PutItem in the SDK for Java][5]
3872
- #
3873
- # * [ PutItem in the SDK for JavaScript][6]
3874
- #
3875
- # * [ PutItem in the SDK for PHP V3][7]
3876
- #
3877
- # * [ PutItem in the SDK for Python (Boto)][8]
3878
- #
3879
- # * [ PutItem in the SDK for Ruby V2][9]
3880
- #
3881
4228
  # When you add an item, the primary key attributes are the only required
3882
- # attributes. Attribute values cannot be null.
4229
+ # attributes.
3883
4230
  #
3884
4231
  # Empty String and Binary attribute values are allowed. Attribute values
3885
4232
  # of type String and Binary must have a length greater than zero if the
@@ -3898,21 +4245,12 @@ module Aws::DynamoDB
3898
4245
  #
3899
4246
  # </note>
3900
4247
  #
3901
- # For more information about `PutItem`, see [Working with Items][10] in
4248
+ # For more information about `PutItem`, see [Working with Items][1] in
3902
4249
  # the *Amazon DynamoDB Developer Guide*.
3903
4250
  #
3904
4251
  #
3905
4252
  #
3906
- # [1]: http://docs.aws.amazon.com/goto/aws-cli/dynamodb-2012-08-10/PutItem
3907
- # [2]: http://docs.aws.amazon.com/goto/DotNetSDKV3/dynamodb-2012-08-10/PutItem
3908
- # [3]: http://docs.aws.amazon.com/goto/SdkForCpp/dynamodb-2012-08-10/PutItem
3909
- # [4]: http://docs.aws.amazon.com/goto/SdkForGoV1/dynamodb-2012-08-10/PutItem
3910
- # [5]: http://docs.aws.amazon.com/goto/SdkForJava/dynamodb-2012-08-10/PutItem
3911
- # [6]: http://docs.aws.amazon.com/goto/AWSJavaScriptSDK/dynamodb-2012-08-10/PutItem
3912
- # [7]: http://docs.aws.amazon.com/goto/SdkForPHPV3/dynamodb-2012-08-10/PutItem
3913
- # [8]: http://docs.aws.amazon.com/goto/boto3/dynamodb-2012-08-10/PutItem
3914
- # [9]: http://docs.aws.amazon.com/goto/SdkForRubyV2/dynamodb-2012-08-10/PutItem
3915
- # [10]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html
4253
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html
3916
4254
  #
3917
4255
  # @option params [required, String] :table_name
3918
4256
  # The name of the table to contain the item.
@@ -3967,6 +4305,10 @@ module Aws::DynamoDB
3967
4305
  #
3968
4306
  # The values returned are strongly consistent.
3969
4307
  #
4308
+ # There is no additional cost associated with requesting a return value
4309
+ # aside from the small network and processing overhead of receiving a
4310
+ # larger response. No read capacity units are consumed.
4311
+ #
3970
4312
  # <note markdown="1"> The `ReturnValues` parameter is used by several DynamoDB operations;
3971
4313
  # however, `PutItem` does not recognize any values other than `NONE` or
3972
4314
  # `ALL_OLD`.
@@ -4285,11 +4627,14 @@ module Aws::DynamoDB
4285
4627
  # is equivalent to specifying `ALL_ATTRIBUTES`.
4286
4628
  #
4287
4629
  # * `COUNT` - Returns the number of matching items, rather than the
4288
- # matching items themselves.
4630
+ # matching items themselves. Note that this uses the same quantity of
4631
+ # read capacity units as getting the items, and is subject to the same
4632
+ # item size calculations.
4289
4633
  #
4290
4634
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
4291
- # `AttributesToGet`. This return value is equivalent to specifying
4292
- # `AttributesToGet` without specifying any value for `Select`.
4635
+ # `ProjectionExpression`. This return value is equivalent to
4636
+ # specifying `ProjectionExpression` without specifying any value for
4637
+ # `Select`.
4293
4638
  #
4294
4639
  # If you query or scan a local secondary index and request only
4295
4640
  # attributes that are projected into that index, the operation will
@@ -4302,12 +4647,12 @@ module Aws::DynamoDB
4302
4647
  # attributes that are projected into the index. Global secondary index
4303
4648
  # queries cannot fetch attributes from the parent table.
4304
4649
  #
4305
- # If neither `Select` nor `AttributesToGet` are specified, DynamoDB
4650
+ # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB
4306
4651
  # defaults to `ALL_ATTRIBUTES` when accessing a table, and
4307
4652
  # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use
4308
- # both `Select` and `AttributesToGet` together in a single request,
4653
+ # both `Select` and `ProjectionExpression` together in a single request,
4309
4654
  # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is
4310
- # equivalent to specifying `AttributesToGet` without any value for
4655
+ # equivalent to specifying `ProjectionExpression` without any value for
4311
4656
  # `Select`.)
4312
4657
  #
4313
4658
  # <note markdown="1"> If you use the `ProjectionExpression` parameter, then the value for
@@ -4456,7 +4801,7 @@ module Aws::DynamoDB
4456
4801
  #
4457
4802
  #
4458
4803
  #
4459
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults
4804
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression
4460
4805
  #
4461
4806
  # @option params [String] :key_condition_expression
4462
4807
  # The condition that specifies the key values for items to be retrieved
@@ -5238,11 +5583,14 @@ module Aws::DynamoDB
5238
5583
  # is equivalent to specifying `ALL_ATTRIBUTES`.
5239
5584
  #
5240
5585
  # * `COUNT` - Returns the number of matching items, rather than the
5241
- # matching items themselves.
5586
+ # matching items themselves. Note that this uses the same quantity of
5587
+ # read capacity units as getting the items, and is subject to the same
5588
+ # item size calculations.
5242
5589
  #
5243
5590
  # * `SPECIFIC_ATTRIBUTES` - Returns only the attributes listed in
5244
- # `AttributesToGet`. This return value is equivalent to specifying
5245
- # `AttributesToGet` without specifying any value for `Select`.
5591
+ # `ProjectionExpression`. This return value is equivalent to
5592
+ # specifying `ProjectionExpression` without specifying any value for
5593
+ # `Select`.
5246
5594
  #
5247
5595
  # If you query or scan a local secondary index and request only
5248
5596
  # attributes that are projected into that index, the operation reads
@@ -5255,12 +5603,12 @@ module Aws::DynamoDB
5255
5603
  # attributes that are projected into the index. Global secondary index
5256
5604
  # queries cannot fetch attributes from the parent table.
5257
5605
  #
5258
- # If neither `Select` nor `AttributesToGet` are specified, DynamoDB
5606
+ # If neither `Select` nor `ProjectionExpression` are specified, DynamoDB
5259
5607
  # defaults to `ALL_ATTRIBUTES` when accessing a table, and
5260
5608
  # `ALL_PROJECTED_ATTRIBUTES` when accessing an index. You cannot use
5261
- # both `Select` and `AttributesToGet` together in a single request,
5609
+ # both `Select` and `ProjectionExpression` together in a single request,
5262
5610
  # unless the value for `Select` is `SPECIFIC_ATTRIBUTES`. (This usage is
5263
- # equivalent to specifying `AttributesToGet` without any value for
5611
+ # equivalent to specifying `ProjectionExpression` without any value for
5264
5612
  # `Select`.)
5265
5613
  #
5266
5614
  # <note markdown="1"> If you use the `ProjectionExpression` parameter, then the value for
@@ -5381,7 +5729,7 @@ module Aws::DynamoDB
5381
5729
  #
5382
5730
  #
5383
5731
  #
5384
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#FilteringResults
5732
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression
5385
5733
  #
5386
5734
  # @option params [Hash<String,String>] :expression_attribute_names
5387
5735
  # One or more substitution tokens for attribute names in an expression.
@@ -5636,7 +5984,7 @@ module Aws::DynamoDB
5636
5984
  # `TransactGetItems` is a synchronous operation that atomically
5637
5985
  # retrieves multiple items from one or more tables (but not from
5638
5986
  # indexes) in a single account and Region. A `TransactGetItems` call can
5639
- # contain up to 25 `TransactGetItem` objects, each of which contains a
5987
+ # contain up to 100 `TransactGetItem` objects, each of which contains a
5640
5988
  # `Get` structure that specifies an item to retrieve from a table in the
5641
5989
  # account and Region. A call to `TransactGetItems` cannot retrieve items
5642
5990
  # from tables in more than one Amazon Web Services account or Region.
@@ -5653,11 +6001,10 @@ module Aws::DynamoDB
5653
6001
  #
5654
6002
  # * There is a user error, such as an invalid data format.
5655
6003
  #
5656
- # * The aggregate size of the items in the transaction cannot exceed 4
5657
- # MB.
6004
+ # * The aggregate size of the items in the transaction exceeded 4 MB.
5658
6005
  #
5659
6006
  # @option params [required, Array<Types::TransactGetItem>] :transact_items
5660
- # An ordered array of up to 25 `TransactGetItem` objects, each of which
6007
+ # An ordered array of up to 100 `TransactGetItem` objects, each of which
5661
6008
  # contains a `Get` structure.
5662
6009
  #
5663
6010
  # @option params [String] :return_consumed_capacity
@@ -5722,7 +6069,7 @@ module Aws::DynamoDB
5722
6069
  end
5723
6070
 
5724
6071
  # `TransactWriteItems` is a synchronous write operation that groups up
5725
- # to 25 action requests. These actions can target items in different
6072
+ # to 100 action requests. These actions can target items in different
5726
6073
  # tables, but not in different Amazon Web Services accounts or Regions,
5727
6074
  # and no two actions can target the same item. For example, you cannot
5728
6075
  # both `ConditionCheck` and `Update` the same item. The aggregate size
@@ -5780,7 +6127,7 @@ module Aws::DynamoDB
5780
6127
  # * There is a user error, such as an invalid data format.
5781
6128
  #
5782
6129
  # @option params [required, Array<Types::TransactWriteItem>] :transact_items
5783
- # An ordered array of up to 25 `TransactWriteItem` objects, each of
6130
+ # An ordered array of up to 100 `TransactWriteItem` objects, each of
5784
6131
  # which contains a `ConditionCheck`, `Put`, `Update`, or `Delete`
5785
6132
  # object. These can operate on items in different tables, but the tables
5786
6133
  # must reside in the same Amazon Web Services account and Region, and no
@@ -5816,7 +6163,7 @@ module Aws::DynamoDB
5816
6163
  #
5817
6164
  # Although multiple identical calls using the same client request token
5818
6165
  # produce the same result on the server (no side effects), the responses
5819
- # to the calls might not be the same. If the `ReturnConsumedCapacity>`
6166
+ # to the calls might not be the same. If the `ReturnConsumedCapacity`
5820
6167
  # parameter is set, then the initial `TransactWriteItems` call returns
5821
6168
  # the amount of write capacity units consumed in making the changes.
5822
6169
  # Subsequent `TransactWriteItems` calls with the same client token
@@ -6082,7 +6429,20 @@ module Aws::DynamoDB
6082
6429
  # have the same key schema, have DynamoDB Streams enabled, and have the
6083
6430
  # same provisioned and maximum write capacity units.
6084
6431
  #
6085
- # <note markdown="1"> Although you can use `UpdateGlobalTable` to add replicas and remove
6432
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6433
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6434
+ # when creating new global tables, as it provides greater flexibility,
6435
+ # higher efficiency and consumes less write capacity than 2017.11.29
6436
+ # (Legacy). To determine which version you are using, see [Determining
6437
+ # the version][3]. To update existing global tables from version
6438
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6439
+ # global tables][4].
6440
+ #
6441
+ # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
6442
+ # tables. If you are using global tables [Version 2019.11.21][2] you can
6443
+ # use [DescribeTable][5] instead.
6444
+ #
6445
+ # Although you can use `UpdateGlobalTable` to add replicas and remove
6086
6446
  # replicas in a single request, for simplicity we recommend that you
6087
6447
  # issue separate requests for adding or removing replicas.
6088
6448
  #
@@ -6099,6 +6459,14 @@ module Aws::DynamoDB
6099
6459
  # * The global secondary indexes must have the same provisioned and
6100
6460
  # maximum write capacity units.
6101
6461
  #
6462
+ #
6463
+ #
6464
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6465
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6466
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6467
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6468
+ # [5]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
6469
+ #
6102
6470
  # @option params [required, String] :global_table_name
6103
6471
  # The global table name.
6104
6472
  #
@@ -6157,6 +6525,22 @@ module Aws::DynamoDB
6157
6525
 
6158
6526
  # Updates settings for a global table.
6159
6527
  #
6528
+ # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6529
+ # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6530
+ # when creating new global tables, as it provides greater flexibility,
6531
+ # higher efficiency and consumes less write capacity than 2017.11.29
6532
+ # (Legacy). To determine which version you are using, see [Determining
6533
+ # the version][3]. To update existing global tables from version
6534
+ # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6535
+ # global tables][4].
6536
+ #
6537
+ #
6538
+ #
6539
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6540
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6541
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6542
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6543
+ #
6160
6544
  # @option params [required, String] :global_table_name
6161
6545
  # The name of the global table
6162
6546
  #
@@ -6404,8 +6788,8 @@ module Aws::DynamoDB
6404
6788
  #
6405
6789
  # @option params [String] :return_values
6406
6790
  # Use `ReturnValues` if you want to get the item attributes as they
6407
- # appear before or after they are updated. For `UpdateItem`, the valid
6408
- # values are:
6791
+ # appear before or after they are successfully updated. For
6792
+ # `UpdateItem`, the valid values are:
6409
6793
  #
6410
6794
  # * `NONE` - If `ReturnValues` is not specified, or if its value is
6411
6795
  # `NONE`, then nothing is returned. (This setting is the default for
@@ -6750,12 +7134,13 @@ module Aws::DynamoDB
6750
7134
  # Modifies the provisioned throughput settings, global secondary
6751
7135
  # indexes, or DynamoDB Streams settings for a given table.
6752
7136
  #
7137
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
7138
+ # global tables.
7139
+ #
6753
7140
  # You can only perform one of the following operations at once:
6754
7141
  #
6755
7142
  # * Modify the provisioned throughput settings of the table.
6756
7143
  #
6757
- # * Enable or disable DynamoDB Streams on the table.
6758
- #
6759
7144
  # * Remove a global secondary index from the table.
6760
7145
  #
6761
7146
  # * Create a new global secondary index on the table. After the index
@@ -6768,6 +7153,10 @@ module Aws::DynamoDB
6768
7153
  # table returns to the `ACTIVE` state, the `UpdateTable` operation is
6769
7154
  # complete.
6770
7155
  #
7156
+ #
7157
+ #
7158
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
7159
+ #
6771
7160
  # @option params [Array<Types::AttributeDefinition>] :attribute_definitions
6772
7161
  # An array of attributes that describe the key schema for the table and
6773
7162
  # indexes. If you are adding a new global secondary index to the table,
@@ -6839,8 +7228,8 @@ module Aws::DynamoDB
6839
7228
  # A list of replica update actions (create, delete, or update) for the
6840
7229
  # table.
6841
7230
  #
6842
- # <note markdown="1"> This property only applies to [Version 2019.11.21][1] of global
6843
- # tables.
7231
+ # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
7232
+ # global tables.
6844
7233
  #
6845
7234
  # </note>
6846
7235
  #
@@ -7097,10 +7486,8 @@ module Aws::DynamoDB
7097
7486
 
7098
7487
  # Updates auto scaling settings on your global tables at once.
7099
7488
  #
7100
- # <note markdown="1"> This operation only applies to [Version 2019.11.21][1] of global
7101
- # tables.
7102
- #
7103
- # </note>
7489
+ # This operation only applies to [Version 2019.11.21 (Current)][1] of
7490
+ # global tables.
7104
7491
  #
7105
7492
  #
7106
7493
  #
@@ -7351,7 +7738,7 @@ module Aws::DynamoDB
7351
7738
  params: params,
7352
7739
  config: config)
7353
7740
  context[:gem_name] = 'aws-sdk-dynamodb'
7354
- context[:gem_version] = '1.74.0'
7741
+ context[:gem_version] = '1.82.0'
7355
7742
  Seahorse::Client::Request.new(handlers, context)
7356
7743
  end
7357
7744