aws-sdk-dynamodb 1.74.0 → 1.82.0

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