aws-sdk-dynamodb 1.96.0 → 1.132.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.
@@ -22,6 +22,7 @@ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
22
  require 'aws-sdk-core/plugins/response_paging.rb'
23
23
  require 'aws-sdk-core/plugins/stub_responses.rb'
24
24
  require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/invocation_id.rb'
25
26
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
27
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
28
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
@@ -31,14 +32,13 @@ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
32
  require 'aws-sdk-core/plugins/request_compression.rb'
32
33
  require 'aws-sdk-core/plugins/defaults_mode.rb'
33
34
  require 'aws-sdk-core/plugins/recursion_detection.rb'
35
+ require 'aws-sdk-core/plugins/telemetry.rb'
34
36
  require 'aws-sdk-core/plugins/sign.rb'
35
37
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
36
38
  require 'aws-sdk-dynamodb/plugins/extended_retries.rb'
37
39
  require 'aws-sdk-dynamodb/plugins/simple_attributes.rb'
38
40
  require 'aws-sdk-dynamodb/plugins/crc32_validation.rb'
39
41
 
40
- Aws::Plugins::GlobalConfiguration.add_identifier(:dynamodb)
41
-
42
42
  module Aws::DynamoDB
43
43
  # An API client for DynamoDB. To construct a client, you need to configure a `:region` and `:credentials`.
44
44
  #
@@ -75,6 +75,7 @@ module Aws::DynamoDB
75
75
  add_plugin(Aws::Plugins::ResponsePaging)
76
76
  add_plugin(Aws::Plugins::StubResponses)
77
77
  add_plugin(Aws::Plugins::IdempotencyToken)
78
+ add_plugin(Aws::Plugins::InvocationId)
78
79
  add_plugin(Aws::Plugins::JsonvalueConverter)
79
80
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
80
81
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
@@ -84,6 +85,7 @@ module Aws::DynamoDB
84
85
  add_plugin(Aws::Plugins::RequestCompression)
85
86
  add_plugin(Aws::Plugins::DefaultsMode)
86
87
  add_plugin(Aws::Plugins::RecursionDetection)
88
+ add_plugin(Aws::Plugins::Telemetry)
87
89
  add_plugin(Aws::Plugins::Sign)
88
90
  add_plugin(Aws::Plugins::Protocols::JsonRpc)
89
91
  add_plugin(Aws::DynamoDB::Plugins::ExtendedRetries)
@@ -93,6 +95,11 @@ module Aws::DynamoDB
93
95
 
94
96
  # @overload initialize(options)
95
97
  # @param [Hash] options
98
+ #
99
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
100
+ # A list of plugins to apply to the client. Each plugin is either a
101
+ # class name or an instance of a plugin class.
102
+ #
96
103
  # @option options [required, Aws::CredentialProvider] :credentials
97
104
  # Your AWS credentials. This can be an instance of any one of the
98
105
  # following classes:
@@ -127,13 +134,15 @@ module Aws::DynamoDB
127
134
  # locations will be searched for credentials:
128
135
  #
129
136
  # * `Aws.config[:credentials]`
130
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
131
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
137
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
138
+ # `:account_id` options.
139
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
140
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
132
141
  # * `~/.aws/credentials`
133
142
  # * `~/.aws/config`
134
143
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
135
144
  # are very aggressive. Construct and pass an instance of
136
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
145
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
137
146
  # enable retries and extended timeouts. Instance profile credential
138
147
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
139
148
  # to true.
@@ -152,6 +161,8 @@ module Aws::DynamoDB
152
161
  #
153
162
  # @option options [String] :access_key_id
154
163
  #
164
+ # @option options [String] :account_id
165
+ #
155
166
  # @option options [Boolean] :active_endpoint_cache (false)
156
167
  # When set to `true`, a thread polling for endpoints will be running in
157
168
  # the background every 60 secs (default). Defaults to `false`.
@@ -208,10 +219,16 @@ module Aws::DynamoDB
208
219
  # When set to 'true' the request body will not be compressed
209
220
  # for supported operations.
210
221
  #
211
- # @option options [String] :endpoint
212
- # The client endpoint is normally constructed from the `:region`
213
- # option. You should only configure an `:endpoint` when connecting
214
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
222
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
223
+ # Normally you should not configure the `:endpoint` option
224
+ # directly. This is normally constructed from the `:region`
225
+ # option. Configuring `:endpoint` is normally reserved for
226
+ # connecting to test or custom endpoints. The endpoint should
227
+ # be a URI formatted like:
228
+ #
229
+ # 'http://example.com'
230
+ # 'https://example.com'
231
+ # 'http://example.com:123'
215
232
  #
216
233
  # @option options [Integer] :endpoint_cache_max_entries (1000)
217
234
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -300,16 +317,25 @@ module Aws::DynamoDB
300
317
  # throttling. This is a provisional mode that may change behavior
301
318
  # in the future.
302
319
  #
303
- #
304
320
  # @option options [String] :sdk_ua_app_id
305
321
  # A unique and opaque application ID that is appended to the
306
- # User-Agent header as app/<sdk_ua_app_id>. It should have a
307
- # maximum length of 50.
322
+ # User-Agent header as app/sdk_ua_app_id. It should have a
323
+ # maximum length of 50. This variable is sourced from environment
324
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
308
325
  #
309
326
  # @option options [String] :secret_access_key
310
327
  #
311
328
  # @option options [String] :session_token
312
329
  #
330
+ # @option options [Array] :sigv4a_signing_region_set
331
+ # A list of regions that should be signed with SigV4a signing. When
332
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
333
+ # in the following locations:
334
+ #
335
+ # * `Aws.config[:sigv4a_signing_region_set]`
336
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
337
+ # * `~/.aws/config`
338
+ #
313
339
  # @option options [Boolean] :simple_attributes (true)
314
340
  # Enables working with DynamoDB attribute values using
315
341
  # hashes, arrays, sets, integers, floats, booleans, and nil.
@@ -318,15 +344,14 @@ module Aws::DynamoDB
318
344
  # their types specified, e.g. `{ s: 'abc' }` instead of simply
319
345
  # `'abc'`.
320
346
  #
347
+ # See {Aws::DynamoDB::Plugins::SimpleAttributes} for more information.
348
+ #
321
349
  # @option options [Boolean] :simple_json (false)
322
350
  # Disables request parameter conversion, validation, and formatting.
323
- # Also disable response data type conversions. This option is useful
324
- # when you want to ensure the highest level of performance by
325
- # avoiding overhead of walking request parameters and response data
326
- # structures.
327
- #
328
- # When `:simple_json` is enabled, the request parameters hash must
329
- # be formatted exactly as the DynamoDB API expects.
351
+ # Also disables response data type conversions. The request parameters
352
+ # hash must be formatted exactly as the API expects.This option is useful
353
+ # when you want to ensure the highest level of performance by avoiding
354
+ # overhead of walking request parameters and response data structures.
330
355
  #
331
356
  # @option options [Boolean] :stub_responses (false)
332
357
  # Causes the client to return stubbed responses. By default
@@ -337,6 +362,16 @@ module Aws::DynamoDB
337
362
  # ** Please note ** When response stubbing is enabled, no HTTP
338
363
  # requests are made, and retries are disabled.
339
364
  #
365
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
366
+ # Allows you to provide a telemetry provider, which is used to
367
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
368
+ # will not record or emit any telemetry data. The SDK supports the
369
+ # following telemetry providers:
370
+ #
371
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
372
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
373
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
374
+ #
340
375
  # @option options [Aws::TokenProvider] :token_provider
341
376
  # A Bearer Token Provider. This can be an instance of any one of the
342
377
  # following classes:
@@ -363,53 +398,85 @@ module Aws::DynamoDB
363
398
  # When `true`, request parameters are validated before
364
399
  # sending the request.
365
400
  #
366
- # @option options [Aws::DynamoDB::EndpointProvider] :endpoint_provider
367
- # 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`
368
- #
369
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
370
- # requests through. Formatted like 'http://proxy.com:123'.
401
+ # @option options [String] :account_id_endpoint_mode
402
+ # The account ID endpoint mode to use. This can be one of the following values:
403
+ # * `preferred` - The default behavior. Use the account ID endpoint if
404
+ # available, otherwise use the standard endpoint.
405
+ # * `disabled` - Never use the account ID endpoint. Only use the standard
406
+ # endpoint.
407
+ # * `required` - Always use the account ID endpoint. If the account ID
408
+ # cannot be retrieved from credentials, an error is raised.
371
409
  #
372
- # @option options [Float] :http_open_timeout (15) The number of
373
- # seconds to wait when opening a HTTP session before raising a
374
- # `Timeout::Error`.
375
- #
376
- # @option options [Float] :http_read_timeout (60) The default
377
- # number of seconds to wait for response data. This value can
378
- # safely be set per-request on the session.
379
- #
380
- # @option options [Float] :http_idle_timeout (5) The number of
381
- # seconds a connection is allowed to sit idle before it is
382
- # considered stale. Stale connections are closed and removed
383
- # from the pool before making a request.
384
- #
385
- # @option options [Float] :http_continue_timeout (1) The number of
386
- # seconds to wait for a 100-continue response before sending the
387
- # request body. This option has no effect unless the request has
388
- # "Expect" header set to "100-continue". Defaults to `nil` which
389
- # disables this behaviour. This value can safely be set per
390
- # request on the session.
410
+ # @option options [Aws::DynamoDB::EndpointProvider] :endpoint_provider
411
+ # The endpoint provider used to resolve endpoints. Any object that responds to
412
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
413
+ # `Aws::DynamoDB::EndpointParameters`.
414
+ #
415
+ # @option options [Float] :http_continue_timeout (1)
416
+ # The number of seconds to wait for a 100-continue response before sending the
417
+ # request body. This option has no effect unless the request has "Expect"
418
+ # header set to "100-continue". Defaults to `nil` which disables this
419
+ # behaviour. This value can safely be set per request on the session.
420
+ #
421
+ # @option options [Float] :http_idle_timeout (5)
422
+ # The number of seconds a connection is allowed to sit idle before it
423
+ # is considered stale. Stale connections are closed and removed from the
424
+ # pool before making a request.
425
+ #
426
+ # @option options [Float] :http_open_timeout (15)
427
+ # The default number of seconds to wait for response data.
428
+ # This value can safely be set per-request on the session.
429
+ #
430
+ # @option options [URI::HTTP,String] :http_proxy
431
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
432
+ #
433
+ # @option options [Float] :http_read_timeout (60)
434
+ # The default number of seconds to wait for response data.
435
+ # This value can safely be set per-request on the session.
436
+ #
437
+ # @option options [Boolean] :http_wire_trace (false)
438
+ # When `true`, HTTP debug output will be sent to the `:logger`.
439
+ #
440
+ # @option options [Proc] :on_chunk_received
441
+ # When a Proc object is provided, it will be used as callback when each chunk
442
+ # of the response body is received. It provides three arguments: the chunk,
443
+ # the number of bytes received, and the total number of
444
+ # bytes in the response (or nil if the server did not send a `content-length`).
445
+ #
446
+ # @option options [Proc] :on_chunk_sent
447
+ # When a Proc object is provided, it will be used as callback when each chunk
448
+ # of the request body is sent. It provides three arguments: the chunk,
449
+ # the number of bytes read from the body, and the total number of
450
+ # bytes in the body.
451
+ #
452
+ # @option options [Boolean] :raise_response_errors (true)
453
+ # When `true`, response errors are raised.
454
+ #
455
+ # @option options [String] :ssl_ca_bundle
456
+ # Full path to the SSL certificate authority bundle file that should be used when
457
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
458
+ # `:ssl_ca_directory` the the system default will be used if available.
459
+ #
460
+ # @option options [String] :ssl_ca_directory
461
+ # Full path of the directory that contains the unbundled SSL certificate
462
+ # authority files for verifying peer certificates. If you do
463
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
464
+ # default will be used if available.
391
465
  #
392
- # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
393
- # in seconds.
466
+ # @option options [String] :ssl_ca_store
467
+ # Sets the X509::Store to verify peer certificate.
394
468
  #
395
- # @option options [Boolean] :http_wire_trace (false) When `true`,
396
- # HTTP debug output will be sent to the `:logger`.
469
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
470
+ # Sets a client certificate when creating http connections.
397
471
  #
398
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
399
- # SSL peer certificates are verified when establishing a
400
- # connection.
472
+ # @option options [OpenSSL::PKey] :ssl_key
473
+ # Sets a client key when creating http connections.
401
474
  #
402
- # @option options [String] :ssl_ca_bundle Full path to the SSL
403
- # certificate authority bundle file that should be used when
404
- # verifying peer certificates. If you do not pass
405
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
406
- # will be used if available.
475
+ # @option options [Float] :ssl_timeout
476
+ # Sets the SSL timeout in seconds
407
477
  #
408
- # @option options [String] :ssl_ca_directory Full path of the
409
- # directory that contains the unbundled SSL certificate
410
- # authority files for verifying peer certificates. If you do
411
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
412
- # system default will be used if available.
478
+ # @option options [Boolean] :ssl_verify_peer (true)
479
+ # When `true`, SSL peer certificates are verified when establishing a connection.
413
480
  #
414
481
  def initialize(*args)
415
482
  super
@@ -421,7 +488,8 @@ module Aws::DynamoDB
421
488
  # stored in DynamoDB, using PartiQL. Each read statement in a
422
489
  # `BatchExecuteStatement` must specify an equality condition on all key
423
490
  # attributes. This enforces that each `SELECT` statement in a batch
424
- # returns at most a single item.
491
+ # returns at most a single item. For more information, see [Running
492
+ # batch operations with PartiQL for DynamoDB ][1].
425
493
  #
426
494
  # <note markdown="1"> The entire batch must consist of either read statements or write
427
495
  # statements, you cannot mix both in one batch.
@@ -430,12 +498,13 @@ module Aws::DynamoDB
430
498
  #
431
499
  # A HTTP 200 response does not mean that all statements in the
432
500
  # BatchExecuteStatement succeeded. Error details for individual
433
- # statements can be found under the [Error][1] field of the
501
+ # statements can be found under the [Error][2] field of the
434
502
  # `BatchStatementResponse` for each statement.
435
503
  #
436
504
  #
437
505
  #
438
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchStatementResponse.html#DDB-Type-BatchStatementResponse-Error
506
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-reference.multiplestatements.batching.html
507
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchStatementResponse.html#DDB-Type-BatchStatementResponse-Error
439
508
  #
440
509
  # @option params [required, Array<Types::BatchStatementRequest>] :statements
441
510
  # The list of PartiQL statements representing the batch to run.
@@ -576,9 +645,9 @@ module Aws::DynamoDB
576
645
  # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#CapacityUnitCalculations
577
646
  #
578
647
  # @option params [required, Hash<String,Types::KeysAndAttributes>] :request_items
579
- # A map of one or more table names and, for each table, a map that
580
- # describes one or more items to retrieve from that table. Each table
581
- # name can be used only once per `BatchGetItem` request.
648
+ # A map of one or more table names or table ARNs and, for each table, a
649
+ # map that describes one or more items to retrieve from that table. Each
650
+ # table name or ARN can be used only once per `BatchGetItem` request.
582
651
  #
583
652
  # Each element in the map of items to retrieve consists of the
584
653
  # following:
@@ -598,31 +667,27 @@ module Aws::DynamoDB
598
667
  #
599
668
  # * To prevent special characters in an attribute name from being
600
669
  # misinterpreted in an expression.
601
- #
602
670
  # Use the **#** character in an expression to dereference an attribute
603
671
  # name. For example, consider the following attribute name:
604
672
  #
605
673
  # * `Percentile`
606
674
  #
607
675
  # ^
608
- #
609
676
  # The name of this attribute conflicts with a reserved word, so it
610
677
  # cannot be used directly in an expression. (For the complete list of
611
678
  # reserved words, see [Reserved Words][1] in the *Amazon DynamoDB
612
679
  # Developer Guide*). To work around this, you could specify the
613
680
  # following for `ExpressionAttributeNames`:
614
681
  #
615
- # * `\{"#P":"Percentile"\}`
682
+ # * `{"#P":"Percentile"}`
616
683
  #
617
684
  # ^
618
- #
619
685
  # You could then use this substitution in an expression, as in this
620
686
  # example:
621
687
  #
622
688
  # * `#P = :val`
623
689
  #
624
690
  # ^
625
- #
626
691
  # <note markdown="1"> Tokens that begin with the **\:** character are *expression
627
692
  # attribute values*, which are placeholders for the actual value at
628
693
  # runtime.
@@ -736,7 +801,7 @@ module Aws::DynamoDB
736
801
  #
737
802
  # resp = client.batch_get_item({
738
803
  # request_items: { # required
739
- # "TableName" => {
804
+ # "TableArn" => {
740
805
  # keys: [ # required
741
806
  # {
742
807
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
@@ -756,19 +821,19 @@ module Aws::DynamoDB
756
821
  # @example Response structure
757
822
  #
758
823
  # resp.responses #=> Hash
759
- # resp.responses["TableName"] #=> Array
760
- # resp.responses["TableName"][0] #=> Hash
761
- # resp.responses["TableName"][0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
824
+ # resp.responses["TableArn"] #=> Array
825
+ # resp.responses["TableArn"][0] #=> Hash
826
+ # resp.responses["TableArn"][0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
762
827
  # resp.unprocessed_keys #=> Hash
763
- # resp.unprocessed_keys["TableName"].keys #=> Array
764
- # resp.unprocessed_keys["TableName"].keys[0] #=> Hash
765
- # resp.unprocessed_keys["TableName"].keys[0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
766
- # resp.unprocessed_keys["TableName"].attributes_to_get #=> Array
767
- # resp.unprocessed_keys["TableName"].attributes_to_get[0] #=> String
768
- # resp.unprocessed_keys["TableName"].consistent_read #=> Boolean
769
- # resp.unprocessed_keys["TableName"].projection_expression #=> String
770
- # resp.unprocessed_keys["TableName"].expression_attribute_names #=> Hash
771
- # resp.unprocessed_keys["TableName"].expression_attribute_names["ExpressionAttributeNameVariable"] #=> String
828
+ # resp.unprocessed_keys["TableArn"].keys #=> Array
829
+ # resp.unprocessed_keys["TableArn"].keys[0] #=> Hash
830
+ # resp.unprocessed_keys["TableArn"].keys[0]["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
831
+ # resp.unprocessed_keys["TableArn"].attributes_to_get #=> Array
832
+ # resp.unprocessed_keys["TableArn"].attributes_to_get[0] #=> String
833
+ # resp.unprocessed_keys["TableArn"].consistent_read #=> Boolean
834
+ # resp.unprocessed_keys["TableArn"].projection_expression #=> String
835
+ # resp.unprocessed_keys["TableArn"].expression_attribute_names #=> Hash
836
+ # resp.unprocessed_keys["TableArn"].expression_attribute_names["ExpressionAttributeNameVariable"] #=> String
772
837
  # resp.consumed_capacity #=> Array
773
838
  # resp.consumed_capacity[0].table_name #=> String
774
839
  # resp.consumed_capacity[0].capacity_units #=> Float
@@ -823,9 +888,13 @@ module Aws::DynamoDB
823
888
  # request with those unprocessed items until all items have been
824
889
  # processed.
825
890
  #
826
- # If *none* of the items can be processed due to insufficient
827
- # provisioned throughput on all of the tables in the request, then
828
- # `BatchWriteItem` returns a `ProvisionedThroughputExceededException`.
891
+ # For tables and indexes with provisioned capacity, if none of the items
892
+ # can be processed due to insufficient provisioned throughput on all of
893
+ # the tables in the request, then `BatchWriteItem` returns a
894
+ # `ProvisionedThroughputExceededException`. For all tables and indexes,
895
+ # if none of the items can be processed due to other throttling
896
+ # scenarios (such as exceeding partition level limits), then
897
+ # `BatchWriteItem` returns a `ThrottlingException`.
829
898
  #
830
899
  # If DynamoDB returns any unprocessed items, you should retry the batch
831
900
  # operation on those items. However, *we strongly recommend that you use
@@ -882,15 +951,19 @@ module Aws::DynamoDB
882
951
  #
883
952
  # * The total request size exceeds 16 MB.
884
953
  #
954
+ # * Any individual items with keys exceeding the key length limits. For
955
+ # a partition key, the limit is 2048 bytes and for a sort key, the
956
+ # limit is 1024 bytes.
957
+ #
885
958
  #
886
959
  #
887
960
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html
888
961
  # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ErrorHandling.html#Programming.Errors.BatchOperations
889
962
  #
890
963
  # @option params [required, Hash<String,Array>] :request_items
891
- # A map of one or more table names and, for each table, a list of
892
- # operations to be performed (`DeleteRequest` or `PutRequest`). Each
893
- # element in the map consists of the following:
964
+ # A map of one or more table names or table ARNs and, for each table, a
965
+ # list of operations to be performed (`DeleteRequest` or `PutRequest`).
966
+ # Each element in the map consists of the following:
894
967
  #
895
968
  # * `DeleteRequest` - Perform a `DeleteItem` operation on the specified
896
969
  # item. The item to be deleted is identified by a `Key` subelement:
@@ -904,7 +977,6 @@ module Aws::DynamoDB
904
977
  # *both* the partition key and the sort key.
905
978
  #
906
979
  # ^
907
- #
908
980
  # * `PutRequest` - Perform a `PutItem` operation on the specified item.
909
981
  # The item to be put is identified by an `Item` subelement:
910
982
  #
@@ -995,7 +1067,7 @@ module Aws::DynamoDB
995
1067
  #
996
1068
  # resp = client.batch_write_item({
997
1069
  # request_items: { # required
998
- # "TableName" => [
1070
+ # "TableArn" => [
999
1071
  # {
1000
1072
  # put_request: {
1001
1073
  # item: { # required
@@ -1017,17 +1089,17 @@ module Aws::DynamoDB
1017
1089
  # @example Response structure
1018
1090
  #
1019
1091
  # resp.unprocessed_items #=> Hash
1020
- # resp.unprocessed_items["TableName"] #=> Array
1021
- # resp.unprocessed_items["TableName"][0].put_request.item #=> Hash
1022
- # resp.unprocessed_items["TableName"][0].put_request.item["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1023
- # resp.unprocessed_items["TableName"][0].delete_request.key #=> Hash
1024
- # resp.unprocessed_items["TableName"][0].delete_request.key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1092
+ # resp.unprocessed_items["TableArn"] #=> Array
1093
+ # resp.unprocessed_items["TableArn"][0].put_request.item #=> Hash
1094
+ # resp.unprocessed_items["TableArn"][0].put_request.item["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1095
+ # resp.unprocessed_items["TableArn"][0].delete_request.key #=> Hash
1096
+ # resp.unprocessed_items["TableArn"][0].delete_request.key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1025
1097
  # resp.item_collection_metrics #=> Hash
1026
- # resp.item_collection_metrics["TableName"] #=> Array
1027
- # resp.item_collection_metrics["TableName"][0].item_collection_key #=> Hash
1028
- # resp.item_collection_metrics["TableName"][0].item_collection_key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1029
- # resp.item_collection_metrics["TableName"][0].size_estimate_range_gb #=> Array
1030
- # resp.item_collection_metrics["TableName"][0].size_estimate_range_gb[0] #=> Float
1098
+ # resp.item_collection_metrics["TableArn"] #=> Array
1099
+ # resp.item_collection_metrics["TableArn"][0].item_collection_key #=> Hash
1100
+ # resp.item_collection_metrics["TableArn"][0].item_collection_key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
1101
+ # resp.item_collection_metrics["TableArn"][0].size_estimate_range_gb #=> Array
1102
+ # resp.item_collection_metrics["TableArn"][0].size_estimate_range_gb[0] #=> Float
1031
1103
  # resp.consumed_capacity #=> Array
1032
1104
  # resp.consumed_capacity[0].table_name #=> String
1033
1105
  # resp.consumed_capacity[0].capacity_units #=> Float
@@ -1088,7 +1160,8 @@ module Aws::DynamoDB
1088
1160
  # * Provisioned read and write capacity
1089
1161
  #
1090
1162
  # @option params [required, String] :table_name
1091
- # The name of the table.
1163
+ # The name of the table. You can also provide the Amazon Resource Name
1164
+ # (ARN) of the table in this parameter.
1092
1165
  #
1093
1166
  # @option params [required, String] :backup_name
1094
1167
  # Specified name for the backup.
@@ -1100,7 +1173,7 @@ module Aws::DynamoDB
1100
1173
  # @example Request syntax with placeholder values
1101
1174
  #
1102
1175
  # resp = client.create_backup({
1103
- # table_name: "TableName", # required
1176
+ # table_name: "TableArn", # required
1104
1177
  # backup_name: "BackupName", # required
1105
1178
  # })
1106
1179
  #
@@ -1127,14 +1200,16 @@ module Aws::DynamoDB
1127
1200
  # a replication relationship between two or more DynamoDB tables with
1128
1201
  # the same table name in the provided Regions.
1129
1202
  #
1130
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
1131
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
1132
- # when creating new global tables, as it provides greater flexibility,
1133
- # higher efficiency and consumes less write capacity than 2017.11.29
1134
- # (Legacy). To determine which version you are using, see [Determining
1135
- # the version][3]. To update existing global tables from version
1136
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
1137
- # global tables][4].
1203
+ # This documentation is for version 2017.11.29 (Legacy) of global
1204
+ # tables, which should be avoided for new global tables. Customers
1205
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
1206
+ # possible, because it provides greater flexibility, higher efficiency,
1207
+ # and consumes less write capacity than 2017.11.29 (Legacy).
1208
+ #
1209
+ # To determine which version you're using, see [Determining the global
1210
+ # table version you are using][2]. To update existing global tables from
1211
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
1212
+ # [Upgrading global tables][3].
1138
1213
  #
1139
1214
  # If you want to add a new replica table to a global table, each of the
1140
1215
  # following conditions must be true:
@@ -1177,10 +1252,9 @@ module Aws::DynamoDB
1177
1252
  #
1178
1253
  #
1179
1254
  #
1180
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
1181
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
1182
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
1183
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
1255
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
1256
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
1257
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
1184
1258
  #
1185
1259
  # @option params [required, String] :global_table_name
1186
1260
  # The global table name.
@@ -1212,9 +1286,17 @@ module Aws::DynamoDB
1212
1286
  # resp.global_table_description.replication_group[0].replica_status_percent_progress #=> String
1213
1287
  # resp.global_table_description.replication_group[0].kms_master_key_id #=> String
1214
1288
  # resp.global_table_description.replication_group[0].provisioned_throughput_override.read_capacity_units #=> Integer
1289
+ # resp.global_table_description.replication_group[0].on_demand_throughput_override.max_read_request_units #=> Integer
1290
+ # resp.global_table_description.replication_group[0].warm_throughput.read_units_per_second #=> Integer
1291
+ # resp.global_table_description.replication_group[0].warm_throughput.write_units_per_second #=> Integer
1292
+ # resp.global_table_description.replication_group[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
1215
1293
  # resp.global_table_description.replication_group[0].global_secondary_indexes #=> Array
1216
1294
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].index_name #=> String
1217
1295
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
1296
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
1297
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
1298
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
1299
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
1218
1300
  # resp.global_table_description.replication_group[0].replica_inaccessible_date_time #=> Time
1219
1301
  # resp.global_table_description.replication_group[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1220
1302
  # resp.global_table_description.replication_group[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -1256,7 +1338,8 @@ module Aws::DynamoDB
1256
1338
  # indexes.
1257
1339
  #
1258
1340
  # @option params [required, String] :table_name
1259
- # The name of the table to create.
1341
+ # The name of the table to create. You can also provide the Amazon
1342
+ # Resource Name (ARN) of the table in this parameter.
1260
1343
  #
1261
1344
  # @option params [required, Array<Types::KeySchemaElement>] :key_schema
1262
1345
  # Specifies the attributes that make up the primary key for a table or
@@ -1335,7 +1418,6 @@ module Aws::DynamoDB
1335
1418
  #
1336
1419
  # * `ALL` - All of the table attributes are projected into the
1337
1420
  # index.
1338
- #
1339
1421
  # * `NonKeyAttributes` - A list of one or more non-key attribute names
1340
1422
  # that are projected into the secondary index. The total count of
1341
1423
  # attributes provided in `NonKeyAttributes`, summed across all of
@@ -1372,14 +1454,12 @@ module Aws::DynamoDB
1372
1454
  #
1373
1455
  # * `ALL` - All of the table attributes are projected into the
1374
1456
  # index.
1375
- #
1376
1457
  # * `NonKeyAttributes` - A list of one or more non-key attribute names
1377
1458
  # that are projected into the secondary index. The total count of
1378
1459
  # attributes provided in `NonKeyAttributes`, summed across all of
1379
1460
  # the secondary indexes, must not exceed 100. If you project the
1380
1461
  # same attribute into two different indexes, this counts as two
1381
1462
  # distinct attributes when determining the total.
1382
- #
1383
1463
  # * `ProvisionedThroughput` - The provisioned throughput settings for
1384
1464
  # the global secondary index, consisting of read and write capacity
1385
1465
  # units.
@@ -1390,16 +1470,16 @@ module Aws::DynamoDB
1390
1470
  #
1391
1471
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
1392
1472
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
1393
- # Mode][1].
1473
+ # capacity mode][1].
1394
1474
  #
1395
1475
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
1396
1476
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode to
1397
- # [On-Demand Mode][2].
1477
+ # [On-demand capacity mode][2].
1398
1478
  #
1399
1479
  #
1400
1480
  #
1401
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
1402
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
1481
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
1482
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
1403
1483
  #
1404
1484
  # @option params [Types::ProvisionedThroughput] :provisioned_throughput
1405
1485
  # Represents the provisioned throughput settings for a specified table
@@ -1460,6 +1540,38 @@ module Aws::DynamoDB
1460
1540
  # Indicates whether deletion protection is to be enabled (true) or
1461
1541
  # disabled (false) on the table.
1462
1542
  #
1543
+ # @option params [Types::WarmThroughput] :warm_throughput
1544
+ # Represents the warm throughput (in read units per second and write
1545
+ # units per second) for creating a table.
1546
+ #
1547
+ # @option params [String] :resource_policy
1548
+ # An Amazon Web Services resource-based policy document in JSON format
1549
+ # that will be attached to the table.
1550
+ #
1551
+ # When you attach a resource-based policy while creating a table, the
1552
+ # policy application is *strongly consistent*.
1553
+ #
1554
+ # The maximum size supported for a resource-based policy document is 20
1555
+ # KB. DynamoDB counts whitespaces when calculating the size of a policy
1556
+ # against this limit. For a full list of all considerations that apply
1557
+ # for resource-based policies, see [Resource-based policy
1558
+ # considerations][1].
1559
+ #
1560
+ # <note markdown="1"> You need to specify the `CreateTable` and `PutResourcePolicy` IAM
1561
+ # actions for authorizing a user to create a table with a resource-based
1562
+ # policy.
1563
+ #
1564
+ # </note>
1565
+ #
1566
+ #
1567
+ #
1568
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html
1569
+ #
1570
+ # @option params [Types::OnDemandThroughput] :on_demand_throughput
1571
+ # Sets the maximum number of read and write units for the specified
1572
+ # table in on-demand capacity mode. If you use this parameter, you must
1573
+ # specify `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
1574
+ #
1463
1575
  # @return [Types::CreateTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1464
1576
  #
1465
1577
  # * {Types::CreateTableOutput#table_description #table_description} => Types::TableDescription
@@ -1541,7 +1653,7 @@ module Aws::DynamoDB
1541
1653
  # attribute_type: "S", # required, accepts S, N, B
1542
1654
  # },
1543
1655
  # ],
1544
- # table_name: "TableName", # required
1656
+ # table_name: "TableArn", # required
1545
1657
  # key_schema: [ # required
1546
1658
  # {
1547
1659
  # attribute_name: "KeySchemaAttributeName", # required
@@ -1580,6 +1692,14 @@ module Aws::DynamoDB
1580
1692
  # read_capacity_units: 1, # required
1581
1693
  # write_capacity_units: 1, # required
1582
1694
  # },
1695
+ # on_demand_throughput: {
1696
+ # max_read_request_units: 1,
1697
+ # max_write_request_units: 1,
1698
+ # },
1699
+ # warm_throughput: {
1700
+ # read_units_per_second: 1,
1701
+ # write_units_per_second: 1,
1702
+ # },
1583
1703
  # },
1584
1704
  # ],
1585
1705
  # billing_mode: "PROVISIONED", # accepts PROVISIONED, PAY_PER_REQUEST
@@ -1604,6 +1724,15 @@ module Aws::DynamoDB
1604
1724
  # ],
1605
1725
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
1606
1726
  # deletion_protection_enabled: false,
1727
+ # warm_throughput: {
1728
+ # read_units_per_second: 1,
1729
+ # write_units_per_second: 1,
1730
+ # },
1731
+ # resource_policy: "ResourcePolicy",
1732
+ # on_demand_throughput: {
1733
+ # max_read_request_units: 1,
1734
+ # max_write_request_units: 1,
1735
+ # },
1607
1736
  # })
1608
1737
  #
1609
1738
  # @example Response structure
@@ -1657,6 +1786,11 @@ module Aws::DynamoDB
1657
1786
  # resp.table_description.global_secondary_indexes[0].index_size_bytes #=> Integer
1658
1787
  # resp.table_description.global_secondary_indexes[0].item_count #=> Integer
1659
1788
  # resp.table_description.global_secondary_indexes[0].index_arn #=> String
1789
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
1790
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
1791
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
1792
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
1793
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
1660
1794
  # resp.table_description.stream_specification.stream_enabled #=> Boolean
1661
1795
  # resp.table_description.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
1662
1796
  # resp.table_description.latest_stream_label #=> String
@@ -1669,9 +1803,17 @@ module Aws::DynamoDB
1669
1803
  # resp.table_description.replicas[0].replica_status_percent_progress #=> String
1670
1804
  # resp.table_description.replicas[0].kms_master_key_id #=> String
1671
1805
  # resp.table_description.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
1806
+ # resp.table_description.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
1807
+ # resp.table_description.replicas[0].warm_throughput.read_units_per_second #=> Integer
1808
+ # resp.table_description.replicas[0].warm_throughput.write_units_per_second #=> Integer
1809
+ # resp.table_description.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
1672
1810
  # resp.table_description.replicas[0].global_secondary_indexes #=> Array
1673
1811
  # resp.table_description.replicas[0].global_secondary_indexes[0].index_name #=> String
1674
1812
  # resp.table_description.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
1813
+ # resp.table_description.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
1814
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
1815
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
1816
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
1675
1817
  # resp.table_description.replicas[0].replica_inaccessible_date_time #=> Time
1676
1818
  # resp.table_description.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1677
1819
  # resp.table_description.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -1689,6 +1831,12 @@ module Aws::DynamoDB
1689
1831
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
1690
1832
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
1691
1833
  # resp.table_description.deletion_protection_enabled #=> Boolean
1834
+ # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
1835
+ # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
1836
+ # resp.table_description.warm_throughput.read_units_per_second #=> Integer
1837
+ # resp.table_description.warm_throughput.write_units_per_second #=> Integer
1838
+ # resp.table_description.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
1839
+ # resp.table_description.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
1692
1840
  #
1693
1841
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/CreateTable AWS API Documentation
1694
1842
  #
@@ -1735,6 +1883,8 @@ module Aws::DynamoDB
1735
1883
  # resp.backup_description.source_table_details.table_creation_date_time #=> Time
1736
1884
  # resp.backup_description.source_table_details.provisioned_throughput.read_capacity_units #=> Integer
1737
1885
  # resp.backup_description.source_table_details.provisioned_throughput.write_capacity_units #=> Integer
1886
+ # resp.backup_description.source_table_details.on_demand_throughput.max_read_request_units #=> Integer
1887
+ # resp.backup_description.source_table_details.on_demand_throughput.max_write_request_units #=> Integer
1738
1888
  # resp.backup_description.source_table_details.item_count #=> Integer
1739
1889
  # resp.backup_description.source_table_details.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
1740
1890
  # resp.backup_description.source_table_feature_details.local_secondary_indexes #=> Array
@@ -1755,6 +1905,8 @@ module Aws::DynamoDB
1755
1905
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
1756
1906
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
1757
1907
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
1908
+ # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
1909
+ # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
1758
1910
  # resp.backup_description.source_table_feature_details.stream_description.stream_enabled #=> Boolean
1759
1911
  # resp.backup_description.source_table_feature_details.stream_description.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
1760
1912
  # resp.backup_description.source_table_feature_details.time_to_live_description.time_to_live_status #=> String, one of "ENABLING", "DISABLING", "ENABLED", "DISABLED"
@@ -1790,7 +1942,8 @@ module Aws::DynamoDB
1790
1942
  # delete. Otherwise, the item is not deleted.
1791
1943
  #
1792
1944
  # @option params [required, String] :table_name
1793
- # The name of the table from which to delete the item.
1945
+ # The name of the table from which to delete the item. You can also
1946
+ # provide the Amazon Resource Name (ARN) of the table in this parameter.
1794
1947
  #
1795
1948
  # @option params [required, Hash<String,Types::AttributeValue>] :key
1796
1949
  # A map of attribute names to `AttributeValue` objects, representing the
@@ -1911,7 +2064,7 @@ module Aws::DynamoDB
1911
2064
  # Developer Guide*). To work around this, you could specify the
1912
2065
  # following for `ExpressionAttributeNames`:
1913
2066
  #
1914
- # * `\{"#P":"Percentile"\}`
2067
+ # * `{"#P":"Percentile"}`
1915
2068
  #
1916
2069
  # ^
1917
2070
  #
@@ -1947,8 +2100,8 @@ module Aws::DynamoDB
1947
2100
  # You would first need to specify `ExpressionAttributeValues` as
1948
2101
  # follows:
1949
2102
  #
1950
- # `\{ ":avail":\{"S":"Available"\}, ":back":\{"S":"Backordered"\},
1951
- # ":disc":\{"S":"Discontinued"\} \}`
2103
+ # `{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
2104
+ # ":disc":{"S":"Discontinued"} }`
1952
2105
  #
1953
2106
  # You could then use these values in an expression, such as this:
1954
2107
  #
@@ -1999,7 +2152,7 @@ module Aws::DynamoDB
1999
2152
  # @example Request syntax with placeholder values
2000
2153
  #
2001
2154
  # resp = client.delete_item({
2002
- # table_name: "TableName", # required
2155
+ # table_name: "TableArn", # required
2003
2156
  # key: { # required
2004
2157
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
2005
2158
  # },
@@ -2058,6 +2211,67 @@ module Aws::DynamoDB
2058
2211
  req.send_request(options)
2059
2212
  end
2060
2213
 
2214
+ # Deletes the resource-based policy attached to the resource, which can
2215
+ # be a table or stream.
2216
+ #
2217
+ # `DeleteResourcePolicy` is an idempotent operation; running it multiple
2218
+ # times on the same resource *doesn't* result in an error response,
2219
+ # unless you specify an `ExpectedRevisionId`, which will then return a
2220
+ # `PolicyNotFoundException`.
2221
+ #
2222
+ # To make sure that you don't inadvertently lock yourself out of your
2223
+ # own resources, the root principal in your Amazon Web Services account
2224
+ # can perform `DeleteResourcePolicy` requests, even if your
2225
+ # resource-based policy explicitly denies the root principal's access.
2226
+ #
2227
+ # <note markdown="1"> `DeleteResourcePolicy` is an asynchronous operation. If you issue a
2228
+ # `GetResourcePolicy` request immediately after running the
2229
+ # `DeleteResourcePolicy` request, DynamoDB might still return the
2230
+ # deleted policy. This is because the policy for your resource might not
2231
+ # have been deleted yet. Wait for a few seconds, and then try the
2232
+ # `GetResourcePolicy` request again.
2233
+ #
2234
+ # </note>
2235
+ #
2236
+ # @option params [required, String] :resource_arn
2237
+ # The Amazon Resource Name (ARN) of the DynamoDB resource from which the
2238
+ # policy will be removed. The resources you can specify include tables
2239
+ # and streams. If you remove the policy of a table, it will also remove
2240
+ # the permissions for the table's indexes defined in that policy
2241
+ # document. This is because index permissions are defined in the
2242
+ # table's policy.
2243
+ #
2244
+ # @option params [String] :expected_revision_id
2245
+ # A string value that you can use to conditionally delete your policy.
2246
+ # When you provide an expected revision ID, if the revision ID of the
2247
+ # existing policy on the resource doesn't match or if there's no
2248
+ # policy attached to the resource, the request will fail and return a
2249
+ # `PolicyNotFoundException`.
2250
+ #
2251
+ # @return [Types::DeleteResourcePolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2252
+ #
2253
+ # * {Types::DeleteResourcePolicyOutput#revision_id #revision_id} => String
2254
+ #
2255
+ # @example Request syntax with placeholder values
2256
+ #
2257
+ # resp = client.delete_resource_policy({
2258
+ # resource_arn: "ResourceArnString", # required
2259
+ # expected_revision_id: "PolicyRevisionId",
2260
+ # })
2261
+ #
2262
+ # @example Response structure
2263
+ #
2264
+ # resp.revision_id #=> String
2265
+ #
2266
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteResourcePolicy AWS API Documentation
2267
+ #
2268
+ # @overload delete_resource_policy(params = {})
2269
+ # @param [Hash] params ({})
2270
+ def delete_resource_policy(params = {}, options = {})
2271
+ req = build_request(:delete_resource_policy, params)
2272
+ req.send_request(options)
2273
+ end
2274
+
2061
2275
  # The `DeleteTable` operation deletes a table and all of its items.
2062
2276
  # After a `DeleteTable` request, the specified table is in the
2063
2277
  # `DELETING` state until DynamoDB completes the deletion. If the table
@@ -2067,12 +2281,13 @@ module Aws::DynamoDB
2067
2281
  # DynamoDB returns a `ResourceNotFoundException`. If table is already in
2068
2282
  # the `DELETING` state, no error is returned.
2069
2283
  #
2070
- # This operation only applies to [Version 2019.11.21 (Current)][1] of
2071
- # global tables.
2284
+ # For global tables, this operation only applies to global tables using
2285
+ # Version 2019.11.21 (Current version).
2072
2286
  #
2073
2287
  # <note markdown="1"> DynamoDB might continue to accept data read and write operations, such
2074
2288
  # as `GetItem` and `PutItem`, on a table in the `DELETING` state until
2075
- # the table deletion is complete.
2289
+ # the table deletion is complete. For the full list of table states, see
2290
+ # [TableStatus][1].
2076
2291
  #
2077
2292
  # </note>
2078
2293
  #
@@ -2086,10 +2301,11 @@ module Aws::DynamoDB
2086
2301
  #
2087
2302
  #
2088
2303
  #
2089
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2304
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TableDescription.html#DDB-Type-TableDescription-TableStatus
2090
2305
  #
2091
2306
  # @option params [required, String] :table_name
2092
- # The name of the table to delete.
2307
+ # The name of the table to delete. You can also provide the Amazon
2308
+ # Resource Name (ARN) of the table in this parameter.
2093
2309
  #
2094
2310
  # @return [Types::DeleteTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2095
2311
  #
@@ -2122,7 +2338,7 @@ module Aws::DynamoDB
2122
2338
  # @example Request syntax with placeholder values
2123
2339
  #
2124
2340
  # resp = client.delete_table({
2125
- # table_name: "TableName", # required
2341
+ # table_name: "TableArn", # required
2126
2342
  # })
2127
2343
  #
2128
2344
  # @example Response structure
@@ -2176,6 +2392,11 @@ module Aws::DynamoDB
2176
2392
  # resp.table_description.global_secondary_indexes[0].index_size_bytes #=> Integer
2177
2393
  # resp.table_description.global_secondary_indexes[0].item_count #=> Integer
2178
2394
  # resp.table_description.global_secondary_indexes[0].index_arn #=> String
2395
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
2396
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
2397
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
2398
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
2399
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
2179
2400
  # resp.table_description.stream_specification.stream_enabled #=> Boolean
2180
2401
  # resp.table_description.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
2181
2402
  # resp.table_description.latest_stream_label #=> String
@@ -2188,9 +2409,17 @@ module Aws::DynamoDB
2188
2409
  # resp.table_description.replicas[0].replica_status_percent_progress #=> String
2189
2410
  # resp.table_description.replicas[0].kms_master_key_id #=> String
2190
2411
  # resp.table_description.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
2412
+ # resp.table_description.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
2413
+ # resp.table_description.replicas[0].warm_throughput.read_units_per_second #=> Integer
2414
+ # resp.table_description.replicas[0].warm_throughput.write_units_per_second #=> Integer
2415
+ # resp.table_description.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
2191
2416
  # resp.table_description.replicas[0].global_secondary_indexes #=> Array
2192
2417
  # resp.table_description.replicas[0].global_secondary_indexes[0].index_name #=> String
2193
2418
  # resp.table_description.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
2419
+ # resp.table_description.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
2420
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
2421
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
2422
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
2194
2423
  # resp.table_description.replicas[0].replica_inaccessible_date_time #=> Time
2195
2424
  # resp.table_description.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2196
2425
  # resp.table_description.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -2208,6 +2437,12 @@ module Aws::DynamoDB
2208
2437
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2209
2438
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
2210
2439
  # resp.table_description.deletion_protection_enabled #=> Boolean
2440
+ # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
2441
+ # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
2442
+ # resp.table_description.warm_throughput.read_units_per_second #=> Integer
2443
+ # resp.table_description.warm_throughput.write_units_per_second #=> Integer
2444
+ # resp.table_description.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
2445
+ # resp.table_description.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
2211
2446
  #
2212
2447
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DeleteTable AWS API Documentation
2213
2448
  #
@@ -2255,6 +2490,8 @@ module Aws::DynamoDB
2255
2490
  # resp.backup_description.source_table_details.table_creation_date_time #=> Time
2256
2491
  # resp.backup_description.source_table_details.provisioned_throughput.read_capacity_units #=> Integer
2257
2492
  # resp.backup_description.source_table_details.provisioned_throughput.write_capacity_units #=> Integer
2493
+ # resp.backup_description.source_table_details.on_demand_throughput.max_read_request_units #=> Integer
2494
+ # resp.backup_description.source_table_details.on_demand_throughput.max_write_request_units #=> Integer
2258
2495
  # resp.backup_description.source_table_details.item_count #=> Integer
2259
2496
  # resp.backup_description.source_table_details.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
2260
2497
  # resp.backup_description.source_table_feature_details.local_secondary_indexes #=> Array
@@ -2275,6 +2512,8 @@ module Aws::DynamoDB
2275
2512
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
2276
2513
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
2277
2514
  # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
2515
+ # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
2516
+ # resp.backup_description.source_table_feature_details.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
2278
2517
  # resp.backup_description.source_table_feature_details.stream_description.stream_enabled #=> Boolean
2279
2518
  # resp.backup_description.source_table_feature_details.stream_description.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
2280
2519
  # resp.backup_description.source_table_feature_details.time_to_live_description.time_to_live_status #=> String, one of "ENABLING", "DISABLING", "ENABLED", "DISABLED"
@@ -2313,6 +2552,9 @@ module Aws::DynamoDB
2313
2552
  # Name of the table for which the customer wants to check the continuous
2314
2553
  # backups and point in time recovery settings.
2315
2554
  #
2555
+ # You can also provide the Amazon Resource Name (ARN) of the table in
2556
+ # this parameter.
2557
+ #
2316
2558
  # @return [Types::DescribeContinuousBackupsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2317
2559
  #
2318
2560
  # * {Types::DescribeContinuousBackupsOutput#continuous_backups_description #continuous_backups_description} => Types::ContinuousBackupsDescription
@@ -2320,7 +2562,7 @@ module Aws::DynamoDB
2320
2562
  # @example Request syntax with placeholder values
2321
2563
  #
2322
2564
  # resp = client.describe_continuous_backups({
2323
- # table_name: "TableName", # required
2565
+ # table_name: "TableArn", # required
2324
2566
  # })
2325
2567
  #
2326
2568
  # @example Response structure
@@ -2343,7 +2585,8 @@ module Aws::DynamoDB
2343
2585
  # global secondary index.
2344
2586
  #
2345
2587
  # @option params [required, String] :table_name
2346
- # The name of the table to describe.
2588
+ # The name of the table to describe. You can also provide the Amazon
2589
+ # Resource Name (ARN) of the table in this parameter.
2347
2590
  #
2348
2591
  # @option params [String] :index_name
2349
2592
  # The name of the global secondary index to describe, if applicable.
@@ -2360,7 +2603,7 @@ module Aws::DynamoDB
2360
2603
  # @example Request syntax with placeholder values
2361
2604
  #
2362
2605
  # resp = client.describe_contributor_insights({
2363
- # table_name: "TableName", # required
2606
+ # table_name: "TableArn", # required
2364
2607
  # index_name: "IndexName",
2365
2608
  # })
2366
2609
  #
@@ -2462,21 +2705,22 @@ module Aws::DynamoDB
2462
2705
 
2463
2706
  # Returns information about the specified global table.
2464
2707
  #
2465
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2466
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2467
- # when creating new global tables, as it provides greater flexibility,
2468
- # higher efficiency and consumes less write capacity than 2017.11.29
2469
- # (Legacy). To determine which version you are using, see [Determining
2470
- # the version][3]. To update existing global tables from version
2471
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2472
- # global tables][4].
2708
+ # This documentation is for version 2017.11.29 (Legacy) of global
2709
+ # tables, which should be avoided for new global tables. Customers
2710
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
2711
+ # possible, because it provides greater flexibility, higher efficiency,
2712
+ # and consumes less write capacity than 2017.11.29 (Legacy).
2713
+ #
2714
+ # To determine which version you're using, see [Determining the global
2715
+ # table version you are using][2]. To update existing global tables from
2716
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
2717
+ # [Upgrading global tables][3].
2473
2718
  #
2474
2719
  #
2475
2720
  #
2476
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2477
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2478
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2479
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2721
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
2722
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2723
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2480
2724
  #
2481
2725
  # @option params [required, String] :global_table_name
2482
2726
  # The name of the global table.
@@ -2500,9 +2744,17 @@ module Aws::DynamoDB
2500
2744
  # resp.global_table_description.replication_group[0].replica_status_percent_progress #=> String
2501
2745
  # resp.global_table_description.replication_group[0].kms_master_key_id #=> String
2502
2746
  # resp.global_table_description.replication_group[0].provisioned_throughput_override.read_capacity_units #=> Integer
2747
+ # resp.global_table_description.replication_group[0].on_demand_throughput_override.max_read_request_units #=> Integer
2748
+ # resp.global_table_description.replication_group[0].warm_throughput.read_units_per_second #=> Integer
2749
+ # resp.global_table_description.replication_group[0].warm_throughput.write_units_per_second #=> Integer
2750
+ # resp.global_table_description.replication_group[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
2503
2751
  # resp.global_table_description.replication_group[0].global_secondary_indexes #=> Array
2504
2752
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].index_name #=> String
2505
2753
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
2754
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
2755
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
2756
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
2757
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
2506
2758
  # resp.global_table_description.replication_group[0].replica_inaccessible_date_time #=> Time
2507
2759
  # resp.global_table_description.replication_group[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2508
2760
  # resp.global_table_description.replication_group[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -2522,21 +2774,22 @@ module Aws::DynamoDB
2522
2774
 
2523
2775
  # Describes Region-specific settings for a global table.
2524
2776
  #
2525
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
2526
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
2527
- # when creating new global tables, as it provides greater flexibility,
2528
- # higher efficiency and consumes less write capacity than 2017.11.29
2529
- # (Legacy). To determine which version you are using, see [Determining
2530
- # the version][3]. To update existing global tables from version
2531
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
2532
- # global tables][4].
2777
+ # This documentation is for version 2017.11.29 (Legacy) of global
2778
+ # tables, which should be avoided for new global tables. Customers
2779
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
2780
+ # possible, because it provides greater flexibility, higher efficiency,
2781
+ # and consumes less write capacity than 2017.11.29 (Legacy).
2782
+ #
2783
+ # To determine which version you're using, see [Determining the global
2784
+ # table version you are using][2]. To update existing global tables from
2785
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
2786
+ # [Upgrading global tables][3].
2533
2787
  #
2534
2788
  #
2535
2789
  #
2536
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
2537
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2538
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2539
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2790
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
2791
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
2792
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
2540
2793
  #
2541
2794
  # @option params [required, String] :global_table_name
2542
2795
  # The name of the global table to describe.
@@ -2662,6 +2915,8 @@ module Aws::DynamoDB
2662
2915
  # resp.import_table_description.table_creation_parameters.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
2663
2916
  # resp.import_table_description.table_creation_parameters.provisioned_throughput.read_capacity_units #=> Integer
2664
2917
  # resp.import_table_description.table_creation_parameters.provisioned_throughput.write_capacity_units #=> Integer
2918
+ # resp.import_table_description.table_creation_parameters.on_demand_throughput.max_read_request_units #=> Integer
2919
+ # resp.import_table_description.table_creation_parameters.on_demand_throughput.max_write_request_units #=> Integer
2665
2920
  # resp.import_table_description.table_creation_parameters.sse_specification.enabled #=> Boolean
2666
2921
  # resp.import_table_description.table_creation_parameters.sse_specification.sse_type #=> String, one of "AES256", "KMS"
2667
2922
  # resp.import_table_description.table_creation_parameters.sse_specification.kms_master_key_id #=> String
@@ -2675,6 +2930,10 @@ module Aws::DynamoDB
2675
2930
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
2676
2931
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
2677
2932
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
2933
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
2934
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
2935
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
2936
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
2678
2937
  # resp.import_table_description.start_time #=> Time
2679
2938
  # resp.import_table_description.end_time #=> Time
2680
2939
  # resp.import_table_description.processed_size_bytes #=> Integer
@@ -2695,7 +2954,8 @@ module Aws::DynamoDB
2695
2954
  # Returns information about the status of Kinesis streaming.
2696
2955
  #
2697
2956
  # @option params [required, String] :table_name
2698
- # The name of the table being described.
2957
+ # The name of the table being described. You can also provide the Amazon
2958
+ # Resource Name (ARN) of the table in this parameter.
2699
2959
  #
2700
2960
  # @return [Types::DescribeKinesisStreamingDestinationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2701
2961
  #
@@ -2705,7 +2965,7 @@ module Aws::DynamoDB
2705
2965
  # @example Request syntax with placeholder values
2706
2966
  #
2707
2967
  # resp = client.describe_kinesis_streaming_destination({
2708
- # table_name: "TableName", # required
2968
+ # table_name: "TableArn", # required
2709
2969
  # })
2710
2970
  #
2711
2971
  # @example Response structure
@@ -2713,8 +2973,9 @@ module Aws::DynamoDB
2713
2973
  # resp.table_name #=> String
2714
2974
  # resp.kinesis_data_stream_destinations #=> Array
2715
2975
  # resp.kinesis_data_stream_destinations[0].stream_arn #=> String
2716
- # resp.kinesis_data_stream_destinations[0].destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED"
2976
+ # resp.kinesis_data_stream_destinations[0].destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED", "UPDATING"
2717
2977
  # resp.kinesis_data_stream_destinations[0].destination_status_description #=> String
2978
+ # resp.kinesis_data_stream_destinations[0].approximate_creation_date_time_precision #=> String, one of "MILLISECOND", "MICROSECOND"
2718
2979
  #
2719
2980
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DescribeKinesisStreamingDestination AWS API Documentation
2720
2981
  #
@@ -2766,7 +3027,6 @@ module Aws::DynamoDB
2766
3027
  # * If the table has one or more global secondary indexes (GSIs),
2767
3028
  # loop over these GSIs and add their provisioned capacity values
2768
3029
  # to your variables as well.
2769
- #
2770
3030
  # 5. Report the account quotas for that Region returned by
2771
3031
  # `DescribeLimits`, along with the total current provisioned
2772
3032
  # capacity levels you have calculated.
@@ -2839,8 +3099,8 @@ module Aws::DynamoDB
2839
3099
  # the table, when it was created, the primary key schema, and any
2840
3100
  # indexes on the table.
2841
3101
  #
2842
- # This operation only applies to [Version 2019.11.21 (Current)][1] of
2843
- # global tables.
3102
+ # For global tables, this operation only applies to global tables using
3103
+ # Version 2019.11.21 (Current version).
2844
3104
  #
2845
3105
  # <note markdown="1"> If you issue a `DescribeTable` request immediately after a
2846
3106
  # `CreateTable` request, DynamoDB might return a
@@ -2851,12 +3111,9 @@ module Aws::DynamoDB
2851
3111
  #
2852
3112
  # </note>
2853
3113
  #
2854
- #
2855
- #
2856
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
2857
- #
2858
3114
  # @option params [required, String] :table_name
2859
- # The name of the table to describe.
3115
+ # The name of the table to describe. You can also provide the Amazon
3116
+ # Resource Name (ARN) of the table in this parameter.
2860
3117
  #
2861
3118
  # @return [Types::DescribeTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2862
3119
  #
@@ -2910,7 +3167,7 @@ module Aws::DynamoDB
2910
3167
  # @example Request syntax with placeholder values
2911
3168
  #
2912
3169
  # resp = client.describe_table({
2913
- # table_name: "TableName", # required
3170
+ # table_name: "TableArn", # required
2914
3171
  # })
2915
3172
  #
2916
3173
  # @example Response structure
@@ -2964,6 +3221,11 @@ module Aws::DynamoDB
2964
3221
  # resp.table.global_secondary_indexes[0].index_size_bytes #=> Integer
2965
3222
  # resp.table.global_secondary_indexes[0].item_count #=> Integer
2966
3223
  # resp.table.global_secondary_indexes[0].index_arn #=> String
3224
+ # resp.table.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
3225
+ # resp.table.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
3226
+ # resp.table.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
3227
+ # resp.table.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
3228
+ # resp.table.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
2967
3229
  # resp.table.stream_specification.stream_enabled #=> Boolean
2968
3230
  # resp.table.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
2969
3231
  # resp.table.latest_stream_label #=> String
@@ -2976,9 +3238,17 @@ module Aws::DynamoDB
2976
3238
  # resp.table.replicas[0].replica_status_percent_progress #=> String
2977
3239
  # resp.table.replicas[0].kms_master_key_id #=> String
2978
3240
  # resp.table.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
3241
+ # resp.table.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
3242
+ # resp.table.replicas[0].warm_throughput.read_units_per_second #=> Integer
3243
+ # resp.table.replicas[0].warm_throughput.write_units_per_second #=> Integer
3244
+ # resp.table.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
2979
3245
  # resp.table.replicas[0].global_secondary_indexes #=> Array
2980
3246
  # resp.table.replicas[0].global_secondary_indexes[0].index_name #=> String
2981
3247
  # resp.table.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
3248
+ # resp.table.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
3249
+ # resp.table.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
3250
+ # resp.table.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
3251
+ # resp.table.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
2982
3252
  # resp.table.replicas[0].replica_inaccessible_date_time #=> Time
2983
3253
  # resp.table.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2984
3254
  # resp.table.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -2996,6 +3266,12 @@ module Aws::DynamoDB
2996
3266
  # resp.table.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
2997
3267
  # resp.table.table_class_summary.last_update_date_time #=> Time
2998
3268
  # resp.table.deletion_protection_enabled #=> Boolean
3269
+ # resp.table.on_demand_throughput.max_read_request_units #=> Integer
3270
+ # resp.table.on_demand_throughput.max_write_request_units #=> Integer
3271
+ # resp.table.warm_throughput.read_units_per_second #=> Integer
3272
+ # resp.table.warm_throughput.write_units_per_second #=> Integer
3273
+ # resp.table.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
3274
+ # resp.table.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
2999
3275
  #
3000
3276
  #
3001
3277
  # The following waiters are defined for this operation (see {Client#wait_until} for detailed usage):
@@ -3015,15 +3291,12 @@ module Aws::DynamoDB
3015
3291
  # Describes auto scaling settings across replicas of the global table at
3016
3292
  # once.
3017
3293
  #
3018
- # This operation only applies to [Version 2019.11.21 (Current)][1] of
3019
- # global tables.
3020
- #
3021
- #
3022
- #
3023
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
3294
+ # For global tables, this operation only applies to global tables using
3295
+ # Version 2019.11.21 (Current version).
3024
3296
  #
3025
3297
  # @option params [required, String] :table_name
3026
- # The name of the table.
3298
+ # The name of the table. You can also provide the Amazon Resource Name
3299
+ # (ARN) of the table in this parameter.
3027
3300
  #
3028
3301
  # @return [Types::DescribeTableReplicaAutoScalingOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3029
3302
  #
@@ -3032,7 +3305,7 @@ module Aws::DynamoDB
3032
3305
  # @example Request syntax with placeholder values
3033
3306
  #
3034
3307
  # resp = client.describe_table_replica_auto_scaling({
3035
- # table_name: "TableName", # required
3308
+ # table_name: "TableArn", # required
3036
3309
  # })
3037
3310
  #
3038
3311
  # @example Response structure
@@ -3099,7 +3372,8 @@ module Aws::DynamoDB
3099
3372
  # table.
3100
3373
  #
3101
3374
  # @option params [required, String] :table_name
3102
- # The name of the table to be described.
3375
+ # The name of the table to be described. You can also provide the Amazon
3376
+ # Resource Name (ARN) of the table in this parameter.
3103
3377
  #
3104
3378
  # @return [Types::DescribeTimeToLiveOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3105
3379
  #
@@ -3108,7 +3382,7 @@ module Aws::DynamoDB
3108
3382
  # @example Request syntax with placeholder values
3109
3383
  #
3110
3384
  # resp = client.describe_time_to_live({
3111
- # table_name: "TableName", # required
3385
+ # table_name: "TableArn", # required
3112
3386
  # })
3113
3387
  #
3114
3388
  # @example Response structure
@@ -3129,29 +3403,39 @@ module Aws::DynamoDB
3129
3403
  # This is done without deleting either of the resources.
3130
3404
  #
3131
3405
  # @option params [required, String] :table_name
3132
- # The name of the DynamoDB table.
3406
+ # The name of the DynamoDB table. You can also provide the Amazon
3407
+ # Resource Name (ARN) of the table in this parameter.
3133
3408
  #
3134
3409
  # @option params [required, String] :stream_arn
3135
3410
  # The ARN for a Kinesis data stream.
3136
3411
  #
3412
+ # @option params [Types::EnableKinesisStreamingConfiguration] :enable_kinesis_streaming_configuration
3413
+ # The source for the Kinesis streaming information that is being
3414
+ # enabled.
3415
+ #
3137
3416
  # @return [Types::KinesisStreamingDestinationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3138
3417
  #
3139
3418
  # * {Types::KinesisStreamingDestinationOutput#table_name #table_name} => String
3140
3419
  # * {Types::KinesisStreamingDestinationOutput#stream_arn #stream_arn} => String
3141
3420
  # * {Types::KinesisStreamingDestinationOutput#destination_status #destination_status} => String
3421
+ # * {Types::KinesisStreamingDestinationOutput#enable_kinesis_streaming_configuration #enable_kinesis_streaming_configuration} => Types::EnableKinesisStreamingConfiguration
3142
3422
  #
3143
3423
  # @example Request syntax with placeholder values
3144
3424
  #
3145
3425
  # resp = client.disable_kinesis_streaming_destination({
3146
- # table_name: "TableName", # required
3426
+ # table_name: "TableArn", # required
3147
3427
  # stream_arn: "StreamArn", # required
3428
+ # enable_kinesis_streaming_configuration: {
3429
+ # approximate_creation_date_time_precision: "MILLISECOND", # accepts MILLISECOND, MICROSECOND
3430
+ # },
3148
3431
  # })
3149
3432
  #
3150
3433
  # @example Response structure
3151
3434
  #
3152
3435
  # resp.table_name #=> String
3153
3436
  # resp.stream_arn #=> String
3154
- # resp.destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED"
3437
+ # resp.destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED", "UPDATING"
3438
+ # resp.enable_kinesis_streaming_configuration.approximate_creation_date_time_precision #=> String, one of "MILLISECOND", "MICROSECOND"
3155
3439
  #
3156
3440
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/DisableKinesisStreamingDestination AWS API Documentation
3157
3441
  #
@@ -3169,29 +3453,39 @@ module Aws::DynamoDB
3169
3453
  # Kinesis data stream is ACTIVE.
3170
3454
  #
3171
3455
  # @option params [required, String] :table_name
3172
- # The name of the DynamoDB table.
3456
+ # The name of the DynamoDB table. You can also provide the Amazon
3457
+ # Resource Name (ARN) of the table in this parameter.
3173
3458
  #
3174
3459
  # @option params [required, String] :stream_arn
3175
3460
  # The ARN for a Kinesis data stream.
3176
3461
  #
3462
+ # @option params [Types::EnableKinesisStreamingConfiguration] :enable_kinesis_streaming_configuration
3463
+ # The source for the Kinesis streaming information that is being
3464
+ # enabled.
3465
+ #
3177
3466
  # @return [Types::KinesisStreamingDestinationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3178
3467
  #
3179
3468
  # * {Types::KinesisStreamingDestinationOutput#table_name #table_name} => String
3180
3469
  # * {Types::KinesisStreamingDestinationOutput#stream_arn #stream_arn} => String
3181
3470
  # * {Types::KinesisStreamingDestinationOutput#destination_status #destination_status} => String
3471
+ # * {Types::KinesisStreamingDestinationOutput#enable_kinesis_streaming_configuration #enable_kinesis_streaming_configuration} => Types::EnableKinesisStreamingConfiguration
3182
3472
  #
3183
3473
  # @example Request syntax with placeholder values
3184
3474
  #
3185
3475
  # resp = client.enable_kinesis_streaming_destination({
3186
- # table_name: "TableName", # required
3476
+ # table_name: "TableArn", # required
3187
3477
  # stream_arn: "StreamArn", # required
3478
+ # enable_kinesis_streaming_configuration: {
3479
+ # approximate_creation_date_time_precision: "MILLISECOND", # accepts MILLISECOND, MICROSECOND
3480
+ # },
3188
3481
  # })
3189
3482
  #
3190
3483
  # @example Response structure
3191
3484
  #
3192
3485
  # resp.table_name #=> String
3193
3486
  # resp.stream_arn #=> String
3194
- # resp.destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED"
3487
+ # resp.destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED", "UPDATING"
3488
+ # resp.enable_kinesis_streaming_configuration.approximate_creation_date_time_precision #=> String, one of "MILLISECOND", "MICROSECOND"
3195
3489
  #
3196
3490
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/EnableKinesisStreamingDestination AWS API Documentation
3197
3491
  #
@@ -3445,6 +3739,11 @@ module Aws::DynamoDB
3445
3739
  # The ID of the Amazon Web Services account that owns the bucket the
3446
3740
  # export will be stored in.
3447
3741
  #
3742
+ # <note markdown="1"> S3BucketOwner is a required parameter when exporting to a S3 bucket in
3743
+ # another account.
3744
+ #
3745
+ # </note>
3746
+ #
3448
3747
  # @option params [String] :s3_prefix
3449
3748
  # The Amazon S3 bucket prefix to use as the file name and path of the
3450
3749
  # exported snapshot.
@@ -3546,7 +3845,8 @@ module Aws::DynamoDB
3546
3845
  # value.
3547
3846
  #
3548
3847
  # @option params [required, String] :table_name
3549
- # The name of the table containing the requested item.
3848
+ # The name of the table containing the requested item. You can also
3849
+ # provide the Amazon Resource Name (ARN) of the table in this parameter.
3550
3850
  #
3551
3851
  # @option params [required, Hash<String,Types::AttributeValue>] :key
3552
3852
  # A map of attribute names to `AttributeValue` objects, representing the
@@ -3631,7 +3931,7 @@ module Aws::DynamoDB
3631
3931
  # Developer Guide*). To work around this, you could specify the
3632
3932
  # following for `ExpressionAttributeNames`:
3633
3933
  #
3634
- # * `\{"#P":"Percentile"\}`
3934
+ # * `{"#P":"Percentile"}`
3635
3935
  #
3636
3936
  # ^
3637
3937
  #
@@ -3686,7 +3986,7 @@ module Aws::DynamoDB
3686
3986
  # @example Request syntax with placeholder values
3687
3987
  #
3688
3988
  # resp = client.get_item({
3689
- # table_name: "TableName", # required
3989
+ # table_name: "TableArn", # required
3690
3990
  # key: { # required
3691
3991
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
3692
3992
  # },
@@ -3728,6 +4028,73 @@ module Aws::DynamoDB
3728
4028
  req.send_request(options)
3729
4029
  end
3730
4030
 
4031
+ # Returns the resource-based policy document attached to the resource,
4032
+ # which can be a table or stream, in JSON format.
4033
+ #
4034
+ # `GetResourcePolicy` follows an [ *eventually consistent* ][1] model.
4035
+ # The following list describes the outcomes when you issue the
4036
+ # `GetResourcePolicy` request immediately after issuing another request:
4037
+ #
4038
+ # * If you issue a `GetResourcePolicy` request immediately after a
4039
+ # `PutResourcePolicy` request, DynamoDB might return a
4040
+ # `PolicyNotFoundException`.
4041
+ #
4042
+ # * If you issue a `GetResourcePolicy`request immediately after a
4043
+ # `DeleteResourcePolicy` request, DynamoDB might return the policy
4044
+ # that was present before the deletion request.
4045
+ #
4046
+ # * If you issue a `GetResourcePolicy` request immediately after a
4047
+ # `CreateTable` request, which includes a resource-based policy,
4048
+ # DynamoDB might return a `ResourceNotFoundException` or a
4049
+ # `PolicyNotFoundException`.
4050
+ #
4051
+ # Because `GetResourcePolicy` uses an *eventually consistent* query, the
4052
+ # metadata for your policy or table might not be available at that
4053
+ # moment. Wait for a few seconds, and then retry the `GetResourcePolicy`
4054
+ # request.
4055
+ #
4056
+ # After a `GetResourcePolicy` request returns a policy created using the
4057
+ # `PutResourcePolicy` request, the policy will be applied in the
4058
+ # authorization of requests to the resource. Because this process is
4059
+ # eventually consistent, it will take some time to apply the policy to
4060
+ # all requests to a resource. Policies that you attach while creating a
4061
+ # table using the `CreateTable` request will always be applied to all
4062
+ # requests for that table.
4063
+ #
4064
+ #
4065
+ #
4066
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadConsistency.html
4067
+ #
4068
+ # @option params [required, String] :resource_arn
4069
+ # The Amazon Resource Name (ARN) of the DynamoDB resource to which the
4070
+ # policy is attached. The resources you can specify include tables and
4071
+ # streams.
4072
+ #
4073
+ # @return [Types::GetResourcePolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4074
+ #
4075
+ # * {Types::GetResourcePolicyOutput#policy #policy} => String
4076
+ # * {Types::GetResourcePolicyOutput#revision_id #revision_id} => String
4077
+ #
4078
+ # @example Request syntax with placeholder values
4079
+ #
4080
+ # resp = client.get_resource_policy({
4081
+ # resource_arn: "ResourceArnString", # required
4082
+ # })
4083
+ #
4084
+ # @example Response structure
4085
+ #
4086
+ # resp.policy #=> String
4087
+ # resp.revision_id #=> String
4088
+ #
4089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/GetResourcePolicy AWS API Documentation
4090
+ #
4091
+ # @overload get_resource_policy(params = {})
4092
+ # @param [Hash] params ({})
4093
+ def get_resource_policy(params = {}, options = {})
4094
+ req = build_request(:get_resource_policy, params)
4095
+ req.send_request(options)
4096
+ end
4097
+
3731
4098
  # Imports table data from an S3 bucket.
3732
4099
  #
3733
4100
  # @option params [String] :client_token
@@ -3805,6 +4172,10 @@ module Aws::DynamoDB
3805
4172
  # read_capacity_units: 1, # required
3806
4173
  # write_capacity_units: 1, # required
3807
4174
  # },
4175
+ # on_demand_throughput: {
4176
+ # max_read_request_units: 1,
4177
+ # max_write_request_units: 1,
4178
+ # },
3808
4179
  # sse_specification: {
3809
4180
  # enabled: false,
3810
4181
  # sse_type: "AES256", # accepts AES256, KMS
@@ -3827,6 +4198,14 @@ module Aws::DynamoDB
3827
4198
  # read_capacity_units: 1, # required
3828
4199
  # write_capacity_units: 1, # required
3829
4200
  # },
4201
+ # on_demand_throughput: {
4202
+ # max_read_request_units: 1,
4203
+ # max_write_request_units: 1,
4204
+ # },
4205
+ # warm_throughput: {
4206
+ # read_units_per_second: 1,
4207
+ # write_units_per_second: 1,
4208
+ # },
3830
4209
  # },
3831
4210
  # ],
3832
4211
  # },
@@ -3859,6 +4238,8 @@ module Aws::DynamoDB
3859
4238
  # resp.import_table_description.table_creation_parameters.billing_mode #=> String, one of "PROVISIONED", "PAY_PER_REQUEST"
3860
4239
  # resp.import_table_description.table_creation_parameters.provisioned_throughput.read_capacity_units #=> Integer
3861
4240
  # resp.import_table_description.table_creation_parameters.provisioned_throughput.write_capacity_units #=> Integer
4241
+ # resp.import_table_description.table_creation_parameters.on_demand_throughput.max_read_request_units #=> Integer
4242
+ # resp.import_table_description.table_creation_parameters.on_demand_throughput.max_write_request_units #=> Integer
3862
4243
  # resp.import_table_description.table_creation_parameters.sse_specification.enabled #=> Boolean
3863
4244
  # resp.import_table_description.table_creation_parameters.sse_specification.sse_type #=> String, one of "AES256", "KMS"
3864
4245
  # resp.import_table_description.table_creation_parameters.sse_specification.kms_master_key_id #=> String
@@ -3872,6 +4253,10 @@ module Aws::DynamoDB
3872
4253
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].projection.non_key_attributes[0] #=> String
3873
4254
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.read_capacity_units #=> Integer
3874
4255
  # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].provisioned_throughput.write_capacity_units #=> Integer
4256
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
4257
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
4258
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
4259
+ # resp.import_table_description.table_creation_parameters.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
3875
4260
  # resp.import_table_description.start_time #=> Time
3876
4261
  # resp.import_table_description.end_time #=> Time
3877
4262
  # resp.import_table_description.processed_size_bytes #=> Integer
@@ -3910,7 +4295,9 @@ module Aws::DynamoDB
3910
4295
  # [1]: https://docs.aws.amazon.com/aws-backup/latest/devguide/API_ListBackupJobs.html
3911
4296
  #
3912
4297
  # @option params [String] :table_name
3913
- # The backups from the table specified by `TableName` are listed.
4298
+ # Lists the backups from the table specified in `TableName`. You can
4299
+ # also provide the Amazon Resource Name (ARN) of the table in this
4300
+ # parameter.
3914
4301
  #
3915
4302
  # @option params [Integer] :limit
3916
4303
  # Maximum number of backups to return at once.
@@ -3950,7 +4337,7 @@ module Aws::DynamoDB
3950
4337
  # @example Request syntax with placeholder values
3951
4338
  #
3952
4339
  # resp = client.list_backups({
3953
- # table_name: "TableName",
4340
+ # table_name: "TableArn",
3954
4341
  # limit: 1,
3955
4342
  # time_range_lower_bound: Time.now,
3956
4343
  # time_range_upper_bound: Time.now,
@@ -3986,7 +4373,8 @@ module Aws::DynamoDB
3986
4373
  # global secondary indexes.
3987
4374
  #
3988
4375
  # @option params [String] :table_name
3989
- # The name of the table.
4376
+ # The name of the table. You can also provide the Amazon Resource Name
4377
+ # (ARN) of the table in this parameter.
3990
4378
  #
3991
4379
  # @option params [String] :next_token
3992
4380
  # A token to for the desired page, if there is one.
@@ -4004,7 +4392,7 @@ module Aws::DynamoDB
4004
4392
  # @example Request syntax with placeholder values
4005
4393
  #
4006
4394
  # resp = client.list_contributor_insights({
4007
- # table_name: "TableName",
4395
+ # table_name: "TableArn",
4008
4396
  # next_token: "NextTokenString",
4009
4397
  # max_results: 1,
4010
4398
  # })
@@ -4073,21 +4461,22 @@ module Aws::DynamoDB
4073
4461
 
4074
4462
  # Lists all global tables that have a replica in the specified Region.
4075
4463
  #
4076
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
4077
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
4078
- # when creating new global tables, as it provides greater flexibility,
4079
- # higher efficiency and consumes less write capacity than 2017.11.29
4080
- # (Legacy). To determine which version you are using, see [Determining
4081
- # the version][3]. To update existing global tables from version
4082
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
4083
- # global tables][4].
4464
+ # This documentation is for version 2017.11.29 (Legacy) of global
4465
+ # tables, which should be avoided for new global tables. Customers
4466
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
4467
+ # possible, because it provides greater flexibility, higher efficiency,
4468
+ # and consumes less write capacity than 2017.11.29 (Legacy).
4469
+ #
4470
+ # To determine which version you're using, see [Determining the global
4471
+ # table version you are using][2]. To update existing global tables from
4472
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
4473
+ # [Upgrading global tables][3].
4084
4474
  #
4085
4475
  #
4086
4476
  #
4087
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
4088
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
4089
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
4090
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
4477
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
4478
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
4479
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
4091
4480
  #
4092
4481
  # @option params [String] :exclusive_start_global_table_name
4093
4482
  # The first global table name that this operation will evaluate.
@@ -4332,7 +4721,8 @@ module Aws::DynamoDB
4332
4721
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithItems.html
4333
4722
  #
4334
4723
  # @option params [required, String] :table_name
4335
- # The name of the table to contain the item.
4724
+ # The name of the table to contain the item. You can also provide the
4725
+ # Amazon Resource Name (ARN) of the table in this parameter.
4336
4726
  #
4337
4727
  # @option params [required, Hash<String,Types::AttributeValue>] :item
4338
4728
  # A map of attribute name/value pairs, one for each attribute. Only the
@@ -4474,7 +4864,7 @@ module Aws::DynamoDB
4474
4864
  # Developer Guide*). To work around this, you could specify the
4475
4865
  # following for `ExpressionAttributeNames`:
4476
4866
  #
4477
- # * `\{"#P":"Percentile"\}`
4867
+ # * `{"#P":"Percentile"}`
4478
4868
  #
4479
4869
  # ^
4480
4870
  #
@@ -4510,8 +4900,8 @@ module Aws::DynamoDB
4510
4900
  # You would first need to specify `ExpressionAttributeValues` as
4511
4901
  # follows:
4512
4902
  #
4513
- # `\{ ":avail":\{"S":"Available"\}, ":back":\{"S":"Backordered"\},
4514
- # ":disc":\{"S":"Discontinued"\} \}`
4903
+ # `{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
4904
+ # ":disc":{"S":"Discontinued"} }`
4515
4905
  #
4516
4906
  # You could then use these values in an expression, such as this:
4517
4907
  #
@@ -4564,7 +4954,7 @@ module Aws::DynamoDB
4564
4954
  # @example Request syntax with placeholder values
4565
4955
  #
4566
4956
  # resp = client.put_item({
4567
- # table_name: "TableName", # required
4957
+ # table_name: "TableArn", # required
4568
4958
  # item: { # required
4569
4959
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
4570
4960
  # },
@@ -4623,6 +5013,107 @@ module Aws::DynamoDB
4623
5013
  req.send_request(options)
4624
5014
  end
4625
5015
 
5016
+ # Attaches a resource-based policy document to the resource, which can
5017
+ # be a table or stream. When you attach a resource-based policy using
5018
+ # this API, the policy application is [ *eventually consistent* ][1].
5019
+ #
5020
+ # `PutResourcePolicy` is an idempotent operation; running it multiple
5021
+ # times on the same resource using the same policy document will return
5022
+ # the same revision ID. If you specify an `ExpectedRevisionId` that
5023
+ # doesn't match the current policy's `RevisionId`, the
5024
+ # `PolicyNotFoundException` will be returned.
5025
+ #
5026
+ # <note markdown="1"> `PutResourcePolicy` is an asynchronous operation. If you issue a
5027
+ # `GetResourcePolicy` request immediately after a `PutResourcePolicy`
5028
+ # request, DynamoDB might return your previous policy, if there was one,
5029
+ # or return the `PolicyNotFoundException`. This is because
5030
+ # `GetResourcePolicy` uses an eventually consistent query, and the
5031
+ # metadata for your policy or table might not be available at that
5032
+ # moment. Wait for a few seconds, and then try the `GetResourcePolicy`
5033
+ # request again.
5034
+ #
5035
+ # </note>
5036
+ #
5037
+ #
5038
+ #
5039
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadConsistency.html
5040
+ #
5041
+ # @option params [required, String] :resource_arn
5042
+ # The Amazon Resource Name (ARN) of the DynamoDB resource to which the
5043
+ # policy will be attached. The resources you can specify include tables
5044
+ # and streams.
5045
+ #
5046
+ # You can control index permissions using the base table's policy. To
5047
+ # specify the same permission level for your table and its indexes, you
5048
+ # can provide both the table and index Amazon Resource Name (ARN)s in
5049
+ # the `Resource` field of a given `Statement` in your policy document.
5050
+ # Alternatively, to specify different permissions for your table,
5051
+ # indexes, or both, you can define multiple `Statement` fields in your
5052
+ # policy document.
5053
+ #
5054
+ # @option params [required, String] :policy
5055
+ # An Amazon Web Services resource-based policy document in JSON format.
5056
+ #
5057
+ # * The maximum size supported for a resource-based policy document is
5058
+ # 20 KB. DynamoDB counts whitespaces when calculating the size of a
5059
+ # policy against this limit.
5060
+ #
5061
+ # * Within a resource-based policy, if the action for a DynamoDB
5062
+ # service-linked role (SLR) to replicate data for a global table is
5063
+ # denied, adding or deleting a replica will fail with an error.
5064
+ #
5065
+ # For a full list of all considerations that apply while attaching a
5066
+ # resource-based policy, see [Resource-based policy considerations][1].
5067
+ #
5068
+ #
5069
+ #
5070
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/rbac-considerations.html
5071
+ #
5072
+ # @option params [String] :expected_revision_id
5073
+ # A string value that you can use to conditionally update your policy.
5074
+ # You can provide the revision ID of your existing policy to make
5075
+ # mutating requests against that policy.
5076
+ #
5077
+ # <note markdown="1"> When you provide an expected revision ID, if the revision ID of the
5078
+ # existing policy on the resource doesn't match or if there's no
5079
+ # policy attached to the resource, your request will be rejected with a
5080
+ # `PolicyNotFoundException`.
5081
+ #
5082
+ # </note>
5083
+ #
5084
+ # To conditionally attach a policy when no policy exists for the
5085
+ # resource, specify `NO_POLICY` for the revision ID.
5086
+ #
5087
+ # @option params [Boolean] :confirm_remove_self_resource_access
5088
+ # Set this parameter to `true` to confirm that you want to remove your
5089
+ # permissions to change the policy of this resource in the future.
5090
+ #
5091
+ # @return [Types::PutResourcePolicyOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5092
+ #
5093
+ # * {Types::PutResourcePolicyOutput#revision_id #revision_id} => String
5094
+ #
5095
+ # @example Request syntax with placeholder values
5096
+ #
5097
+ # resp = client.put_resource_policy({
5098
+ # resource_arn: "ResourceArnString", # required
5099
+ # policy: "ResourcePolicy", # required
5100
+ # expected_revision_id: "PolicyRevisionId",
5101
+ # confirm_remove_self_resource_access: false,
5102
+ # })
5103
+ #
5104
+ # @example Response structure
5105
+ #
5106
+ # resp.revision_id #=> String
5107
+ #
5108
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/PutResourcePolicy AWS API Documentation
5109
+ #
5110
+ # @overload put_resource_policy(params = {})
5111
+ # @param [Hash] params ({})
5112
+ def put_resource_policy(params = {}, options = {})
5113
+ req = build_request(:put_resource_policy, params)
5114
+ req.send_request(options)
5115
+ end
5116
+
4626
5117
  # You must provide the name of the partition key attribute and a single
4627
5118
  # value for that attribute. `Query` returns all items with that
4628
5119
  # partition key value. Optionally, you can provide a sort key attribute
@@ -4688,7 +5179,8 @@ module Aws::DynamoDB
4688
5179
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.html#Query.Pagination
4689
5180
  #
4690
5181
  # @option params [required, String] :table_name
4691
- # The name of the table containing the requested items.
5182
+ # The name of the table containing the requested items. You can also
5183
+ # provide the Amazon Resource Name (ARN) of the table in this parameter.
4692
5184
  #
4693
5185
  # @option params [String] :index_name
4694
5186
  # The name of an index to query. This index can be any local secondary
@@ -4888,7 +5380,7 @@ module Aws::DynamoDB
4888
5380
  #
4889
5381
  #
4890
5382
  #
4891
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html#Query.FilterExpression
5383
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.FilterExpression.html
4892
5384
  #
4893
5385
  # @option params [String] :key_condition_expression
4894
5386
  # The condition that specifies the key values for items to be retrieved
@@ -5000,7 +5492,7 @@ module Aws::DynamoDB
5000
5492
  # Developer Guide*). To work around this, you could specify the
5001
5493
  # following for `ExpressionAttributeNames`:
5002
5494
  #
5003
- # * `\{"#P":"Percentile"\}`
5495
+ # * `{"#P":"Percentile"}`
5004
5496
  #
5005
5497
  # ^
5006
5498
  #
@@ -5036,8 +5528,8 @@ module Aws::DynamoDB
5036
5528
  # You would first need to specify `ExpressionAttributeValues` as
5037
5529
  # follows:
5038
5530
  #
5039
- # `\{ ":avail":\{"S":"Available"\}, ":back":\{"S":"Backordered"\},
5040
- # ":disc":\{"S":"Discontinued"\} \}`
5531
+ # `{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
5532
+ # ":disc":{"S":"Discontinued"} }`
5041
5533
  #
5042
5534
  # You could then use these values in an expression, such as this:
5043
5535
  #
@@ -5091,7 +5583,7 @@ module Aws::DynamoDB
5091
5583
  # @example Request syntax with placeholder values
5092
5584
  #
5093
5585
  # resp = client.query({
5094
- # table_name: "TableName", # required
5586
+ # table_name: "TableArn", # required
5095
5587
  # index_name: "IndexName",
5096
5588
  # select: "ALL_ATTRIBUTES", # accepts ALL_ATTRIBUTES, ALL_PROJECTED_ATTRIBUTES, SPECIFIC_ATTRIBUTES, COUNT
5097
5589
  # attributes_to_get: ["AttributeName"],
@@ -5203,6 +5695,11 @@ module Aws::DynamoDB
5203
5695
  # @option params [Types::ProvisionedThroughput] :provisioned_throughput_override
5204
5696
  # Provisioned throughput settings for the restored table.
5205
5697
  #
5698
+ # @option params [Types::OnDemandThroughput] :on_demand_throughput_override
5699
+ # Sets the maximum number of read and write units for the specified
5700
+ # on-demand table. If you use this parameter, you must specify
5701
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
5702
+ #
5206
5703
  # @option params [Types::SSESpecification] :sse_specification_override
5207
5704
  # The new server-side encryption settings for the restored table.
5208
5705
  #
@@ -5233,6 +5730,14 @@ module Aws::DynamoDB
5233
5730
  # read_capacity_units: 1, # required
5234
5731
  # write_capacity_units: 1, # required
5235
5732
  # },
5733
+ # on_demand_throughput: {
5734
+ # max_read_request_units: 1,
5735
+ # max_write_request_units: 1,
5736
+ # },
5737
+ # warm_throughput: {
5738
+ # read_units_per_second: 1,
5739
+ # write_units_per_second: 1,
5740
+ # },
5236
5741
  # },
5237
5742
  # ],
5238
5743
  # local_secondary_index_override: [
@@ -5254,6 +5759,10 @@ module Aws::DynamoDB
5254
5759
  # read_capacity_units: 1, # required
5255
5760
  # write_capacity_units: 1, # required
5256
5761
  # },
5762
+ # on_demand_throughput_override: {
5763
+ # max_read_request_units: 1,
5764
+ # max_write_request_units: 1,
5765
+ # },
5257
5766
  # sse_specification_override: {
5258
5767
  # enabled: false,
5259
5768
  # sse_type: "AES256", # accepts AES256, KMS
@@ -5312,6 +5821,11 @@ module Aws::DynamoDB
5312
5821
  # resp.table_description.global_secondary_indexes[0].index_size_bytes #=> Integer
5313
5822
  # resp.table_description.global_secondary_indexes[0].item_count #=> Integer
5314
5823
  # resp.table_description.global_secondary_indexes[0].index_arn #=> String
5824
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
5825
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
5826
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
5827
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
5828
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
5315
5829
  # resp.table_description.stream_specification.stream_enabled #=> Boolean
5316
5830
  # resp.table_description.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
5317
5831
  # resp.table_description.latest_stream_label #=> String
@@ -5324,9 +5838,17 @@ module Aws::DynamoDB
5324
5838
  # resp.table_description.replicas[0].replica_status_percent_progress #=> String
5325
5839
  # resp.table_description.replicas[0].kms_master_key_id #=> String
5326
5840
  # resp.table_description.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
5841
+ # resp.table_description.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
5842
+ # resp.table_description.replicas[0].warm_throughput.read_units_per_second #=> Integer
5843
+ # resp.table_description.replicas[0].warm_throughput.write_units_per_second #=> Integer
5844
+ # resp.table_description.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
5327
5845
  # resp.table_description.replicas[0].global_secondary_indexes #=> Array
5328
5846
  # resp.table_description.replicas[0].global_secondary_indexes[0].index_name #=> String
5329
5847
  # resp.table_description.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
5848
+ # resp.table_description.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
5849
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
5850
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
5851
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
5330
5852
  # resp.table_description.replicas[0].replica_inaccessible_date_time #=> Time
5331
5853
  # resp.table_description.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5332
5854
  # resp.table_description.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -5344,6 +5866,12 @@ module Aws::DynamoDB
5344
5866
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5345
5867
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
5346
5868
  # resp.table_description.deletion_protection_enabled #=> Boolean
5869
+ # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
5870
+ # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
5871
+ # resp.table_description.warm_throughput.read_units_per_second #=> Integer
5872
+ # resp.table_description.warm_throughput.write_units_per_second #=> Integer
5873
+ # resp.table_description.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
5874
+ # resp.table_description.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
5347
5875
  #
5348
5876
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/RestoreTableFromBackup AWS API Documentation
5349
5877
  #
@@ -5357,7 +5885,7 @@ module Aws::DynamoDB
5357
5885
  # Restores the specified table to the specified point in time within
5358
5886
  # `EarliestRestorableDateTime` and `LatestRestorableDateTime`. You can
5359
5887
  # restore your table to any point in time during the last 35 days. Any
5360
- # number of users can execute up to 4 concurrent restores (any type of
5888
+ # number of users can execute up to 50 concurrent restores (any type of
5361
5889
  # restore) in a given account.
5362
5890
  #
5363
5891
  # When you restore using point in time recovery, DynamoDB restores your
@@ -5428,6 +5956,11 @@ module Aws::DynamoDB
5428
5956
  # @option params [Types::ProvisionedThroughput] :provisioned_throughput_override
5429
5957
  # Provisioned throughput settings for the restored table.
5430
5958
  #
5959
+ # @option params [Types::OnDemandThroughput] :on_demand_throughput_override
5960
+ # Sets the maximum number of read and write units for the specified
5961
+ # on-demand table. If you use this parameter, you must specify
5962
+ # `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
5963
+ #
5431
5964
  # @option params [Types::SSESpecification] :sse_specification_override
5432
5965
  # The new server-side encryption settings for the restored table.
5433
5966
  #
@@ -5461,6 +5994,14 @@ module Aws::DynamoDB
5461
5994
  # read_capacity_units: 1, # required
5462
5995
  # write_capacity_units: 1, # required
5463
5996
  # },
5997
+ # on_demand_throughput: {
5998
+ # max_read_request_units: 1,
5999
+ # max_write_request_units: 1,
6000
+ # },
6001
+ # warm_throughput: {
6002
+ # read_units_per_second: 1,
6003
+ # write_units_per_second: 1,
6004
+ # },
5464
6005
  # },
5465
6006
  # ],
5466
6007
  # local_secondary_index_override: [
@@ -5482,6 +6023,10 @@ module Aws::DynamoDB
5482
6023
  # read_capacity_units: 1, # required
5483
6024
  # write_capacity_units: 1, # required
5484
6025
  # },
6026
+ # on_demand_throughput_override: {
6027
+ # max_read_request_units: 1,
6028
+ # max_write_request_units: 1,
6029
+ # },
5485
6030
  # sse_specification_override: {
5486
6031
  # enabled: false,
5487
6032
  # sse_type: "AES256", # accepts AES256, KMS
@@ -5540,6 +6085,11 @@ module Aws::DynamoDB
5540
6085
  # resp.table_description.global_secondary_indexes[0].index_size_bytes #=> Integer
5541
6086
  # resp.table_description.global_secondary_indexes[0].item_count #=> Integer
5542
6087
  # resp.table_description.global_secondary_indexes[0].index_arn #=> String
6088
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
6089
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
6090
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
6091
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
6092
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
5543
6093
  # resp.table_description.stream_specification.stream_enabled #=> Boolean
5544
6094
  # resp.table_description.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
5545
6095
  # resp.table_description.latest_stream_label #=> String
@@ -5552,9 +6102,17 @@ module Aws::DynamoDB
5552
6102
  # resp.table_description.replicas[0].replica_status_percent_progress #=> String
5553
6103
  # resp.table_description.replicas[0].kms_master_key_id #=> String
5554
6104
  # resp.table_description.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
6105
+ # resp.table_description.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
6106
+ # resp.table_description.replicas[0].warm_throughput.read_units_per_second #=> Integer
6107
+ # resp.table_description.replicas[0].warm_throughput.write_units_per_second #=> Integer
6108
+ # resp.table_description.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
5555
6109
  # resp.table_description.replicas[0].global_secondary_indexes #=> Array
5556
6110
  # resp.table_description.replicas[0].global_secondary_indexes[0].index_name #=> String
5557
6111
  # resp.table_description.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
6112
+ # resp.table_description.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
6113
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
6114
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
6115
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
5558
6116
  # resp.table_description.replicas[0].replica_inaccessible_date_time #=> Time
5559
6117
  # resp.table_description.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5560
6118
  # resp.table_description.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -5572,6 +6130,12 @@ module Aws::DynamoDB
5572
6130
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
5573
6131
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
5574
6132
  # resp.table_description.deletion_protection_enabled #=> Boolean
6133
+ # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
6134
+ # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
6135
+ # resp.table_description.warm_throughput.read_units_per_second #=> Integer
6136
+ # resp.table_description.warm_throughput.write_units_per_second #=> Integer
6137
+ # resp.table_description.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
6138
+ # resp.table_description.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
5575
6139
  #
5576
6140
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/RestoreTableToPointInTime AWS API Documentation
5577
6141
  #
@@ -5639,9 +6203,11 @@ module Aws::DynamoDB
5639
6203
  # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Scan.html#Scan.ParallelScan
5640
6204
  #
5641
6205
  # @option params [required, String] :table_name
5642
- # The name of the table containing the requested items; or, if you
5643
- # provide `IndexName`, the name of the table to which that index
5644
- # belongs.
6206
+ # The name of the table containing the requested items or if you provide
6207
+ # `IndexName`, the name of the table to which that index belongs.
6208
+ #
6209
+ # You can also provide the Amazon Resource Name (ARN) of the table in
6210
+ # this parameter.
5645
6211
  #
5646
6212
  # @option params [String] :index_name
5647
6213
  # The name of a secondary index to scan. This index can be any local
@@ -5867,7 +6433,7 @@ module Aws::DynamoDB
5867
6433
  # Developer Guide*). To work around this, you could specify the
5868
6434
  # following for `ExpressionAttributeNames`:
5869
6435
  #
5870
- # * `\{"#P":"Percentile"\}`
6436
+ # * `{"#P":"Percentile"}`
5871
6437
  #
5872
6438
  # ^
5873
6439
  #
@@ -5903,8 +6469,8 @@ module Aws::DynamoDB
5903
6469
  # You would first need to specify `ExpressionAttributeValues` as
5904
6470
  # follows:
5905
6471
  #
5906
- # `\{ ":avail":\{"S":"Available"\}, ":back":\{"S":"Backordered"\},
5907
- # ":disc":\{"S":"Discontinued"\} \}`
6472
+ # `{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
6473
+ # ":disc":{"S":"Discontinued"} }`
5908
6474
  #
5909
6475
  # You could then use these values in an expression, such as this:
5910
6476
  #
@@ -5985,7 +6551,7 @@ module Aws::DynamoDB
5985
6551
  # @example Request syntax with placeholder values
5986
6552
  #
5987
6553
  # resp = client.scan({
5988
- # table_name: "TableName", # required
6554
+ # table_name: "TableArn", # required
5989
6555
  # index_name: "IndexName",
5990
6556
  # attributes_to_get: ["AttributeName"],
5991
6557
  # limit: 1,
@@ -6053,6 +6619,18 @@ module Aws::DynamoDB
6053
6619
  # and Cost Management console for cost allocation tracking. You can call
6054
6620
  # TagResource up to five times per second, per account.
6055
6621
  #
6622
+ # * `TagResource` is an asynchronous operation. If you issue a
6623
+ # ListTagsOfResource request immediately after a `TagResource`
6624
+ # request, DynamoDB might return your previous tag set, if there was
6625
+ # one, or an empty tag set. This is because `ListTagsOfResource` uses
6626
+ # an eventually consistent query, and the metadata for your tags or
6627
+ # table might not be available at that moment. Wait for a few seconds,
6628
+ # and then try the `ListTagsOfResource` request again.
6629
+ #
6630
+ # * The application or removal of tags using `TagResource` and
6631
+ # `UntagResource` APIs is eventually consistent. `ListTagsOfResource`
6632
+ # API will only reflect the changes after a few seconds.
6633
+ #
6056
6634
  # For an overview on tagging DynamoDB resources, see [Tagging for
6057
6635
  # DynamoDB][1] in the *Amazon DynamoDB Developer Guide*.
6058
6636
  #
@@ -6135,7 +6713,7 @@ module Aws::DynamoDB
6135
6713
  # key: { # required
6136
6714
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6137
6715
  # },
6138
- # table_name: "TableName", # required
6716
+ # table_name: "TableArn", # required
6139
6717
  # projection_expression: "ProjectionExpression",
6140
6718
  # expression_attribute_names: {
6141
6719
  # "ExpressionAttributeNameVariable" => "AttributeName",
@@ -6305,7 +6883,7 @@ module Aws::DynamoDB
6305
6883
  # key: { # required
6306
6884
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6307
6885
  # },
6308
- # table_name: "TableName", # required
6886
+ # table_name: "TableArn", # required
6309
6887
  # condition_expression: "ConditionExpression", # required
6310
6888
  # expression_attribute_names: {
6311
6889
  # "ExpressionAttributeNameVariable" => "AttributeName",
@@ -6319,7 +6897,7 @@ module Aws::DynamoDB
6319
6897
  # item: { # required
6320
6898
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6321
6899
  # },
6322
- # table_name: "TableName", # required
6900
+ # table_name: "TableArn", # required
6323
6901
  # condition_expression: "ConditionExpression",
6324
6902
  # expression_attribute_names: {
6325
6903
  # "ExpressionAttributeNameVariable" => "AttributeName",
@@ -6333,7 +6911,7 @@ module Aws::DynamoDB
6333
6911
  # key: { # required
6334
6912
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6335
6913
  # },
6336
- # table_name: "TableName", # required
6914
+ # table_name: "TableArn", # required
6337
6915
  # condition_expression: "ConditionExpression",
6338
6916
  # expression_attribute_names: {
6339
6917
  # "ExpressionAttributeNameVariable" => "AttributeName",
@@ -6348,7 +6926,7 @@ module Aws::DynamoDB
6348
6926
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6349
6927
  # },
6350
6928
  # update_expression: "UpdateExpression", # required
6351
- # table_name: "TableName", # required
6929
+ # table_name: "TableArn", # required
6352
6930
  # condition_expression: "ConditionExpression",
6353
6931
  # expression_attribute_names: {
6354
6932
  # "ExpressionAttributeNameVariable" => "AttributeName",
@@ -6384,11 +6962,11 @@ module Aws::DynamoDB
6384
6962
  # resp.consumed_capacity[0].global_secondary_indexes["IndexName"].write_capacity_units #=> Float
6385
6963
  # resp.consumed_capacity[0].global_secondary_indexes["IndexName"].capacity_units #=> Float
6386
6964
  # resp.item_collection_metrics #=> Hash
6387
- # resp.item_collection_metrics["TableName"] #=> Array
6388
- # resp.item_collection_metrics["TableName"][0].item_collection_key #=> Hash
6389
- # resp.item_collection_metrics["TableName"][0].item_collection_key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6390
- # resp.item_collection_metrics["TableName"][0].size_estimate_range_gb #=> Array
6391
- # resp.item_collection_metrics["TableName"][0].size_estimate_range_gb[0] #=> Float
6965
+ # resp.item_collection_metrics["TableArn"] #=> Array
6966
+ # resp.item_collection_metrics["TableArn"][0].item_collection_key #=> Hash
6967
+ # resp.item_collection_metrics["TableArn"][0].item_collection_key["AttributeName"] #=> <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
6968
+ # resp.item_collection_metrics["TableArn"][0].size_estimate_range_gb #=> Array
6969
+ # resp.item_collection_metrics["TableArn"][0].size_estimate_range_gb[0] #=> Float
6392
6970
  #
6393
6971
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/TransactWriteItems AWS API Documentation
6394
6972
  #
@@ -6402,6 +6980,18 @@ module Aws::DynamoDB
6402
6980
  # Removes the association of tags from an Amazon DynamoDB resource. You
6403
6981
  # can call `UntagResource` up to five times per second, per account.
6404
6982
  #
6983
+ # * `UntagResource` is an asynchronous operation. If you issue a
6984
+ # ListTagsOfResource request immediately after an `UntagResource`
6985
+ # request, DynamoDB might return your previous tag set, if there was
6986
+ # one, or an empty tag set. This is because `ListTagsOfResource` uses
6987
+ # an eventually consistent query, and the metadata for your tags or
6988
+ # table might not be available at that moment. Wait for a few seconds,
6989
+ # and then try the `ListTagsOfResource` request again.
6990
+ #
6991
+ # * The application or removal of tags using `TagResource` and
6992
+ # `UntagResource` APIs is eventually consistent. `ListTagsOfResource`
6993
+ # API will only reflect the changes after a few seconds.
6994
+ #
6405
6995
  # For an overview on tagging DynamoDB resources, see [Tagging for
6406
6996
  # DynamoDB][1] in the *Amazon DynamoDB Developer Guide*.
6407
6997
  #
@@ -6451,7 +7041,8 @@ module Aws::DynamoDB
6451
7041
  # 35 days.
6452
7042
  #
6453
7043
  # @option params [required, String] :table_name
6454
- # The name of the table.
7044
+ # The name of the table. You can also provide the Amazon Resource Name
7045
+ # (ARN) of the table in this parameter.
6455
7046
  #
6456
7047
  # @option params [required, Types::PointInTimeRecoverySpecification] :point_in_time_recovery_specification
6457
7048
  # Represents the settings used to enable point in time recovery.
@@ -6463,7 +7054,7 @@ module Aws::DynamoDB
6463
7054
  # @example Request syntax with placeholder values
6464
7055
  #
6465
7056
  # resp = client.update_continuous_backups({
6466
- # table_name: "TableName", # required
7057
+ # table_name: "TableArn", # required
6467
7058
  # point_in_time_recovery_specification: { # required
6468
7059
  # point_in_time_recovery_enabled: false, # required
6469
7060
  # },
@@ -6495,7 +7086,8 @@ module Aws::DynamoDB
6495
7086
  # CloudWatch Contributor Insights for DynamoDB for this table.
6496
7087
  #
6497
7088
  # @option params [required, String] :table_name
6498
- # The name of the table.
7089
+ # The name of the table. You can also provide the Amazon Resource Name
7090
+ # (ARN) of the table in this parameter.
6499
7091
  #
6500
7092
  # @option params [String] :index_name
6501
7093
  # The global secondary index name, if applicable.
@@ -6512,7 +7104,7 @@ module Aws::DynamoDB
6512
7104
  # @example Request syntax with placeholder values
6513
7105
  #
6514
7106
  # resp = client.update_contributor_insights({
6515
- # table_name: "TableName", # required
7107
+ # table_name: "TableArn", # required
6516
7108
  # index_name: "IndexName",
6517
7109
  # contributor_insights_action: "ENABLE", # required, accepts ENABLE, DISABLE
6518
7110
  # })
@@ -6538,18 +7130,20 @@ module Aws::DynamoDB
6538
7130
  # have the same key schema, have DynamoDB Streams enabled, and have the
6539
7131
  # same provisioned and maximum write capacity units.
6540
7132
  #
6541
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6542
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6543
- # when creating new global tables, as it provides greater flexibility,
6544
- # higher efficiency and consumes less write capacity than 2017.11.29
6545
- # (Legacy). To determine which version you are using, see [Determining
6546
- # the version][3]. To update existing global tables from version
6547
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6548
- # global tables][4].
7133
+ # This documentation is for version 2017.11.29 (Legacy) of global
7134
+ # tables, which should be avoided for new global tables. Customers
7135
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
7136
+ # possible, because it provides greater flexibility, higher efficiency,
7137
+ # and consumes less write capacity than 2017.11.29 (Legacy).
7138
+ #
7139
+ # To determine which version you're using, see [Determining the global
7140
+ # table version you are using][2]. To update existing global tables from
7141
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
7142
+ # [Upgrading global tables][3].
6549
7143
  #
6550
- # <note markdown="1"> This operation only applies to [Version 2017.11.29][1] of global
6551
- # tables. If you are using global tables [Version 2019.11.21][2] you can
6552
- # use [DescribeTable][5] instead.
7144
+ # <note markdown="1"> For global tables, this operation only applies to global tables using
7145
+ # Version 2019.11.21 (Current version). If you are using global tables
7146
+ # [Version 2019.11.21][1] you can use [UpdateTable][4] instead.
6553
7147
  #
6554
7148
  # Although you can use `UpdateGlobalTable` to add replicas and remove
6555
7149
  # replicas in a single request, for simplicity we recommend that you
@@ -6570,11 +7164,10 @@ module Aws::DynamoDB
6570
7164
  #
6571
7165
  #
6572
7166
  #
6573
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6574
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6575
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6576
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6577
- # [5]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
7167
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
7168
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
7169
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
7170
+ # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html
6578
7171
  #
6579
7172
  # @option params [required, String] :global_table_name
6580
7173
  # The global table name.
@@ -6612,9 +7205,17 @@ module Aws::DynamoDB
6612
7205
  # resp.global_table_description.replication_group[0].replica_status_percent_progress #=> String
6613
7206
  # resp.global_table_description.replication_group[0].kms_master_key_id #=> String
6614
7207
  # resp.global_table_description.replication_group[0].provisioned_throughput_override.read_capacity_units #=> Integer
7208
+ # resp.global_table_description.replication_group[0].on_demand_throughput_override.max_read_request_units #=> Integer
7209
+ # resp.global_table_description.replication_group[0].warm_throughput.read_units_per_second #=> Integer
7210
+ # resp.global_table_description.replication_group[0].warm_throughput.write_units_per_second #=> Integer
7211
+ # resp.global_table_description.replication_group[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
6615
7212
  # resp.global_table_description.replication_group[0].global_secondary_indexes #=> Array
6616
7213
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].index_name #=> String
6617
7214
  # resp.global_table_description.replication_group[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
7215
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
7216
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
7217
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
7218
+ # resp.global_table_description.replication_group[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
6618
7219
  # resp.global_table_description.replication_group[0].replica_inaccessible_date_time #=> Time
6619
7220
  # resp.global_table_description.replication_group[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
6620
7221
  # resp.global_table_description.replication_group[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -6634,21 +7235,22 @@ module Aws::DynamoDB
6634
7235
 
6635
7236
  # Updates settings for a global table.
6636
7237
  #
6637
- # This operation only applies to [Version 2017.11.29 (Legacy)][1] of
6638
- # global tables. We recommend using [Version 2019.11.21 (Current)][2]
6639
- # when creating new global tables, as it provides greater flexibility,
6640
- # higher efficiency and consumes less write capacity than 2017.11.29
6641
- # (Legacy). To determine which version you are using, see [Determining
6642
- # the version][3]. To update existing global tables from version
6643
- # 2017.11.29 (Legacy) to version 2019.11.21 (Current), see [ Updating
6644
- # global tables][4].
7238
+ # This documentation is for version 2017.11.29 (Legacy) of global
7239
+ # tables, which should be avoided for new global tables. Customers
7240
+ # should use [Global Tables version 2019.11.21 (Current)][1] when
7241
+ # possible, because it provides greater flexibility, higher efficiency,
7242
+ # and consumes less write capacity than 2017.11.29 (Legacy).
6645
7243
  #
7244
+ # To determine which version you're using, see [Determining the global
7245
+ # table version you are using][2]. To update existing global tables from
7246
+ # version 2017.11.29 (Legacy) to version 2019.11.21 (Current), see
7247
+ # [Upgrading global tables][3].
6646
7248
  #
6647
7249
  #
6648
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V1.html
6649
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
6650
- # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
6651
- # [4]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
7250
+ #
7251
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html
7252
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.DetermineVersion.html
7253
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
6652
7254
  #
6653
7255
  # @option params [required, String] :global_table_name
6654
7256
  # The name of the global table
@@ -6660,16 +7262,16 @@ module Aws::DynamoDB
6660
7262
  #
6661
7263
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
6662
7264
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
6663
- # Mode][1].
7265
+ # capacity mode][1].
6664
7266
  #
6665
7267
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
6666
7268
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode to
6667
- # [On-Demand Mode][2].
7269
+ # [On-demand capacity mode][2].
6668
7270
  #
6669
7271
  #
6670
7272
  #
6671
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
6672
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
7273
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
7274
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
6673
7275
  #
6674
7276
  # @option params [Integer] :global_table_provisioned_write_capacity_units
6675
7277
  # The maximum number of writes consumed per second before DynamoDB
@@ -6857,7 +7459,8 @@ module Aws::DynamoDB
6857
7459
  # `UpdateItem` operation using the `ReturnValues` parameter.
6858
7460
  #
6859
7461
  # @option params [required, String] :table_name
6860
- # The name of the table containing the item to update.
7462
+ # The name of the table containing the item to update. You can also
7463
+ # provide the Amazon Resource Name (ARN) of the table in this parameter.
6861
7464
  #
6862
7465
  # @option params [required, Hash<String,Types::AttributeValue>] :key
6863
7466
  # The primary key of the item to be updated. Each element consists of an
@@ -6967,7 +7570,6 @@ module Aws::DynamoDB
6967
7570
  # * `list_append (operand, operand)` - evaluates to a list with a new
6968
7571
  # element added to it. You can append the new element to the start
6969
7572
  # or the end of the list by reversing the order of the operands.
6970
- #
6971
7573
  # These function names are case-sensitive.
6972
7574
  #
6973
7575
  # * `REMOVE` - Removes one or more attributes from an item.
@@ -7007,7 +7609,6 @@ module Aws::DynamoDB
7007
7609
  # Both sets must have the same primitive data type. For example, if
7008
7610
  # the existing data type is a set of strings, the `Value` must also
7009
7611
  # be a set of strings.
7010
- #
7011
7612
  # The `ADD` action only supports Number and set data types. In
7012
7613
  # addition, `ADD` can only be used on top-level attributes, not nested
7013
7614
  # attributes.
@@ -7081,7 +7682,7 @@ module Aws::DynamoDB
7081
7682
  # Developer Guide*.) To work around this, you could specify the
7082
7683
  # following for `ExpressionAttributeNames`:
7083
7684
  #
7084
- # * `\{"#P":"Percentile"\}`
7685
+ # * `{"#P":"Percentile"}`
7085
7686
  #
7086
7687
  # ^
7087
7688
  #
@@ -7117,8 +7718,8 @@ module Aws::DynamoDB
7117
7718
  # You would first need to specify `ExpressionAttributeValues` as
7118
7719
  # follows:
7119
7720
  #
7120
- # `\{ ":avail":\{"S":"Available"\}, ":back":\{"S":"Backordered"\},
7121
- # ":disc":\{"S":"Discontinued"\} \}`
7721
+ # `{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"},
7722
+ # ":disc":{"S":"Discontinued"} }`
7122
7723
  #
7123
7724
  # You could then use these values in an expression, such as this:
7124
7725
  #
@@ -7182,7 +7783,7 @@ module Aws::DynamoDB
7182
7783
  # @example Request syntax with placeholder values
7183
7784
  #
7184
7785
  # resp = client.update_item({
7185
- # table_name: "TableName", # required
7786
+ # table_name: "TableArn", # required
7186
7787
  # key: { # required
7187
7788
  # "AttributeName" => "value", # value <Hash,Array,String,Numeric,Boolean,IO,Set,nil>
7188
7789
  # },
@@ -7248,11 +7849,56 @@ module Aws::DynamoDB
7248
7849
  req.send_request(options)
7249
7850
  end
7250
7851
 
7852
+ # The command to update the Kinesis stream destination.
7853
+ #
7854
+ # @option params [required, String] :table_name
7855
+ # The table name for the Kinesis streaming destination input. You can
7856
+ # also provide the ARN of the table in this parameter.
7857
+ #
7858
+ # @option params [required, String] :stream_arn
7859
+ # The Amazon Resource Name (ARN) for the Kinesis stream input.
7860
+ #
7861
+ # @option params [Types::UpdateKinesisStreamingConfiguration] :update_kinesis_streaming_configuration
7862
+ # The command to update the Kinesis stream configuration.
7863
+ #
7864
+ # @return [Types::UpdateKinesisStreamingDestinationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7865
+ #
7866
+ # * {Types::UpdateKinesisStreamingDestinationOutput#table_name #table_name} => String
7867
+ # * {Types::UpdateKinesisStreamingDestinationOutput#stream_arn #stream_arn} => String
7868
+ # * {Types::UpdateKinesisStreamingDestinationOutput#destination_status #destination_status} => String
7869
+ # * {Types::UpdateKinesisStreamingDestinationOutput#update_kinesis_streaming_configuration #update_kinesis_streaming_configuration} => Types::UpdateKinesisStreamingConfiguration
7870
+ #
7871
+ # @example Request syntax with placeholder values
7872
+ #
7873
+ # resp = client.update_kinesis_streaming_destination({
7874
+ # table_name: "TableArn", # required
7875
+ # stream_arn: "StreamArn", # required
7876
+ # update_kinesis_streaming_configuration: {
7877
+ # approximate_creation_date_time_precision: "MILLISECOND", # accepts MILLISECOND, MICROSECOND
7878
+ # },
7879
+ # })
7880
+ #
7881
+ # @example Response structure
7882
+ #
7883
+ # resp.table_name #=> String
7884
+ # resp.stream_arn #=> String
7885
+ # resp.destination_status #=> String, one of "ENABLING", "ACTIVE", "DISABLING", "DISABLED", "ENABLE_FAILED", "UPDATING"
7886
+ # resp.update_kinesis_streaming_configuration.approximate_creation_date_time_precision #=> String, one of "MILLISECOND", "MICROSECOND"
7887
+ #
7888
+ # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateKinesisStreamingDestination AWS API Documentation
7889
+ #
7890
+ # @overload update_kinesis_streaming_destination(params = {})
7891
+ # @param [Hash] params ({})
7892
+ def update_kinesis_streaming_destination(params = {}, options = {})
7893
+ req = build_request(:update_kinesis_streaming_destination, params)
7894
+ req.send_request(options)
7895
+ end
7896
+
7251
7897
  # Modifies the provisioned throughput settings, global secondary
7252
7898
  # indexes, or DynamoDB Streams settings for a given table.
7253
7899
  #
7254
- # This operation only applies to [Version 2019.11.21 (Current)][1] of
7255
- # global tables.
7900
+ # For global tables, this operation only applies to global tables using
7901
+ # Version 2019.11.21 (Current version).
7256
7902
  #
7257
7903
  # You can only perform one of the following operations at once:
7258
7904
  #
@@ -7264,16 +7910,12 @@ module Aws::DynamoDB
7264
7910
  # begins backfilling, you can use `UpdateTable` to perform other
7265
7911
  # operations.
7266
7912
  #
7267
- # `UpdateTable` is an asynchronous operation; while it is executing, the
7268
- # table status changes from `ACTIVE` to `UPDATING`. While it is
7269
- # `UPDATING`, you cannot issue another `UpdateTable` request. When the
7913
+ # `UpdateTable` is an asynchronous operation; while it's executing, the
7914
+ # table status changes from `ACTIVE` to `UPDATING`. While it's
7915
+ # `UPDATING`, you can't issue another `UpdateTable` request. When the
7270
7916
  # table returns to the `ACTIVE` state, the `UpdateTable` operation is
7271
7917
  # complete.
7272
7918
  #
7273
- #
7274
- #
7275
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
7276
- #
7277
7919
  # @option params [Array<Types::AttributeDefinition>] :attribute_definitions
7278
7920
  # An array of attributes that describe the key schema for the table and
7279
7921
  # indexes. If you are adding a new global secondary index to the table,
@@ -7281,7 +7923,8 @@ module Aws::DynamoDB
7281
7923
  # index.
7282
7924
  #
7283
7925
  # @option params [required, String] :table_name
7284
- # The name of the table to be updated.
7926
+ # The name of the table to be updated. You can also provide the Amazon
7927
+ # Resource Name (ARN) of the table in this parameter.
7285
7928
  #
7286
7929
  # @option params [String] :billing_mode
7287
7930
  # Controls how you are charged for read and write throughput and how you
@@ -7293,16 +7936,16 @@ module Aws::DynamoDB
7293
7936
  #
7294
7937
  # * `PROVISIONED` - We recommend using `PROVISIONED` for predictable
7295
7938
  # workloads. `PROVISIONED` sets the billing mode to [Provisioned
7296
- # Mode][1].
7939
+ # capacity mode][1].
7297
7940
  #
7298
7941
  # * `PAY_PER_REQUEST` - We recommend using `PAY_PER_REQUEST` for
7299
7942
  # unpredictable workloads. `PAY_PER_REQUEST` sets the billing mode to
7300
- # [On-Demand Mode][2].
7943
+ # [On-demand capacity mode][2].
7301
7944
  #
7302
7945
  #
7303
7946
  #
7304
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
7305
- # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.OnDemand
7947
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html
7948
+ # [2]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/on-demand-capacity-mode.html
7306
7949
  #
7307
7950
  # @option params [Types::ProvisionedThroughput] :provisioned_throughput
7308
7951
  # The new provisioned throughput settings for the specified table or
@@ -7332,9 +7975,9 @@ module Aws::DynamoDB
7332
7975
  # @option params [Types::StreamSpecification] :stream_specification
7333
7976
  # Represents the DynamoDB Streams configuration for the table.
7334
7977
  #
7335
- # <note markdown="1"> You receive a `ResourceInUseException` if you try to enable a stream
7336
- # on a table that already has a stream, or if you try to disable a
7337
- # stream on a table that doesn't have a stream.
7978
+ # <note markdown="1"> You receive a `ValidationException` if you try to enable a stream on a
7979
+ # table that already has a stream, or if you try to disable a stream on
7980
+ # a table that doesn't have a stream.
7338
7981
  #
7339
7982
  # </note>
7340
7983
  #
@@ -7345,15 +7988,11 @@ module Aws::DynamoDB
7345
7988
  # A list of replica update actions (create, delete, or update) for the
7346
7989
  # table.
7347
7990
  #
7348
- # <note markdown="1"> This property only applies to [Version 2019.11.21 (Current)][1] of
7349
- # global tables.
7991
+ # <note markdown="1"> For global tables, this property only applies to global tables using
7992
+ # Version 2019.11.21 (Current version).
7350
7993
  #
7351
7994
  # </note>
7352
7995
  #
7353
- #
7354
- #
7355
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
7356
- #
7357
7996
  # @option params [String] :table_class
7358
7997
  # The table class of the table to be updated. Valid values are
7359
7998
  # `STANDARD` and `STANDARD_INFREQUENT_ACCESS`.
@@ -7362,6 +8001,43 @@ module Aws::DynamoDB
7362
8001
  # Indicates whether deletion protection is to be enabled (true) or
7363
8002
  # disabled (false) on the table.
7364
8003
  #
8004
+ # @option params [String] :multi_region_consistency
8005
+ # Specifies the consistency mode for a new global table. This parameter
8006
+ # is only valid when you create a global table by specifying one or more
8007
+ # [Create][1] actions in the [ReplicaUpdates][2] action list.
8008
+ #
8009
+ # You can specify one of the following consistency modes:
8010
+ #
8011
+ # * `EVENTUAL`: Configures a new global table for multi-Region eventual
8012
+ # consistency. This is the default consistency mode for global tables.
8013
+ #
8014
+ # * `STRONG`: Configures a new global table for multi-Region strong
8015
+ # consistency (preview).
8016
+ #
8017
+ # <note markdown="1"> Multi-Region strong consistency (MRSC) is a new DynamoDB global
8018
+ # tables capability currently available in preview mode. For more
8019
+ # information, see [Global tables multi-Region strong consistency][3].
8020
+ #
8021
+ # </note>
8022
+ #
8023
+ # If you don't specify this parameter, the global table consistency
8024
+ # mode defaults to `EVENTUAL`.
8025
+ #
8026
+ #
8027
+ #
8028
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ReplicationGroupUpdate.html#DDB-Type-ReplicationGroupUpdate-Create
8029
+ # [2]: https://docs.aws.amazon.com/https:/docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html#DDB-UpdateTable-request-ReplicaUpdates
8030
+ # [3]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/PreviewFeatures.html#multi-region-strong-consistency-gt
8031
+ #
8032
+ # @option params [Types::OnDemandThroughput] :on_demand_throughput
8033
+ # Updates the maximum number of read and write units for the specified
8034
+ # table in on-demand capacity mode. If you use this parameter, you must
8035
+ # specify `MaxReadRequestUnits`, `MaxWriteRequestUnits`, or both.
8036
+ #
8037
+ # @option params [Types::WarmThroughput] :warm_throughput
8038
+ # Represents the warm throughput (in read units per second and write
8039
+ # units per second) for updating a table.
8040
+ #
7365
8041
  # @return [Types::UpdateTableOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7366
8042
  #
7367
8043
  # * {Types::UpdateTableOutput#table_description #table_description} => Types::TableDescription
@@ -7425,7 +8101,7 @@ module Aws::DynamoDB
7425
8101
  # attribute_type: "S", # required, accepts S, N, B
7426
8102
  # },
7427
8103
  # ],
7428
- # table_name: "TableName", # required
8104
+ # table_name: "TableArn", # required
7429
8105
  # billing_mode: "PROVISIONED", # accepts PROVISIONED, PAY_PER_REQUEST
7430
8106
  # provisioned_throughput: {
7431
8107
  # read_capacity_units: 1, # required
@@ -7435,10 +8111,18 @@ module Aws::DynamoDB
7435
8111
  # {
7436
8112
  # update: {
7437
8113
  # index_name: "IndexName", # required
7438
- # provisioned_throughput: { # required
8114
+ # provisioned_throughput: {
7439
8115
  # read_capacity_units: 1, # required
7440
8116
  # write_capacity_units: 1, # required
7441
8117
  # },
8118
+ # on_demand_throughput: {
8119
+ # max_read_request_units: 1,
8120
+ # max_write_request_units: 1,
8121
+ # },
8122
+ # warm_throughput: {
8123
+ # read_units_per_second: 1,
8124
+ # write_units_per_second: 1,
8125
+ # },
7442
8126
  # },
7443
8127
  # create: {
7444
8128
  # index_name: "IndexName", # required
@@ -7456,6 +8140,14 @@ module Aws::DynamoDB
7456
8140
  # read_capacity_units: 1, # required
7457
8141
  # write_capacity_units: 1, # required
7458
8142
  # },
8143
+ # on_demand_throughput: {
8144
+ # max_read_request_units: 1,
8145
+ # max_write_request_units: 1,
8146
+ # },
8147
+ # warm_throughput: {
8148
+ # read_units_per_second: 1,
8149
+ # write_units_per_second: 1,
8150
+ # },
7459
8151
  # },
7460
8152
  # delete: {
7461
8153
  # index_name: "IndexName", # required
@@ -7479,12 +8171,18 @@ module Aws::DynamoDB
7479
8171
  # provisioned_throughput_override: {
7480
8172
  # read_capacity_units: 1,
7481
8173
  # },
8174
+ # on_demand_throughput_override: {
8175
+ # max_read_request_units: 1,
8176
+ # },
7482
8177
  # global_secondary_indexes: [
7483
8178
  # {
7484
8179
  # index_name: "IndexName", # required
7485
8180
  # provisioned_throughput_override: {
7486
8181
  # read_capacity_units: 1,
7487
8182
  # },
8183
+ # on_demand_throughput_override: {
8184
+ # max_read_request_units: 1,
8185
+ # },
7488
8186
  # },
7489
8187
  # ],
7490
8188
  # table_class_override: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -7495,12 +8193,18 @@ module Aws::DynamoDB
7495
8193
  # provisioned_throughput_override: {
7496
8194
  # read_capacity_units: 1,
7497
8195
  # },
8196
+ # on_demand_throughput_override: {
8197
+ # max_read_request_units: 1,
8198
+ # },
7498
8199
  # global_secondary_indexes: [
7499
8200
  # {
7500
8201
  # index_name: "IndexName", # required
7501
8202
  # provisioned_throughput_override: {
7502
8203
  # read_capacity_units: 1,
7503
8204
  # },
8205
+ # on_demand_throughput_override: {
8206
+ # max_read_request_units: 1,
8207
+ # },
7504
8208
  # },
7505
8209
  # ],
7506
8210
  # table_class_override: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
@@ -7512,6 +8216,15 @@ module Aws::DynamoDB
7512
8216
  # ],
7513
8217
  # table_class: "STANDARD", # accepts STANDARD, STANDARD_INFREQUENT_ACCESS
7514
8218
  # deletion_protection_enabled: false,
8219
+ # multi_region_consistency: "EVENTUAL", # accepts EVENTUAL, STRONG
8220
+ # on_demand_throughput: {
8221
+ # max_read_request_units: 1,
8222
+ # max_write_request_units: 1,
8223
+ # },
8224
+ # warm_throughput: {
8225
+ # read_units_per_second: 1,
8226
+ # write_units_per_second: 1,
8227
+ # },
7515
8228
  # })
7516
8229
  #
7517
8230
  # @example Response structure
@@ -7565,6 +8278,11 @@ module Aws::DynamoDB
7565
8278
  # resp.table_description.global_secondary_indexes[0].index_size_bytes #=> Integer
7566
8279
  # resp.table_description.global_secondary_indexes[0].item_count #=> Integer
7567
8280
  # resp.table_description.global_secondary_indexes[0].index_arn #=> String
8281
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_read_request_units #=> Integer
8282
+ # resp.table_description.global_secondary_indexes[0].on_demand_throughput.max_write_request_units #=> Integer
8283
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
8284
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
8285
+ # resp.table_description.global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
7568
8286
  # resp.table_description.stream_specification.stream_enabled #=> Boolean
7569
8287
  # resp.table_description.stream_specification.stream_view_type #=> String, one of "NEW_IMAGE", "OLD_IMAGE", "NEW_AND_OLD_IMAGES", "KEYS_ONLY"
7570
8288
  # resp.table_description.latest_stream_label #=> String
@@ -7577,9 +8295,17 @@ module Aws::DynamoDB
7577
8295
  # resp.table_description.replicas[0].replica_status_percent_progress #=> String
7578
8296
  # resp.table_description.replicas[0].kms_master_key_id #=> String
7579
8297
  # resp.table_description.replicas[0].provisioned_throughput_override.read_capacity_units #=> Integer
8298
+ # resp.table_description.replicas[0].on_demand_throughput_override.max_read_request_units #=> Integer
8299
+ # resp.table_description.replicas[0].warm_throughput.read_units_per_second #=> Integer
8300
+ # resp.table_description.replicas[0].warm_throughput.write_units_per_second #=> Integer
8301
+ # resp.table_description.replicas[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
7580
8302
  # resp.table_description.replicas[0].global_secondary_indexes #=> Array
7581
8303
  # resp.table_description.replicas[0].global_secondary_indexes[0].index_name #=> String
7582
8304
  # resp.table_description.replicas[0].global_secondary_indexes[0].provisioned_throughput_override.read_capacity_units #=> Integer
8305
+ # resp.table_description.replicas[0].global_secondary_indexes[0].on_demand_throughput_override.max_read_request_units #=> Integer
8306
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.read_units_per_second #=> Integer
8307
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.write_units_per_second #=> Integer
8308
+ # resp.table_description.replicas[0].global_secondary_indexes[0].warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE"
7583
8309
  # resp.table_description.replicas[0].replica_inaccessible_date_time #=> Time
7584
8310
  # resp.table_description.replicas[0].replica_table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
7585
8311
  # resp.table_description.replicas[0].replica_table_class_summary.last_update_date_time #=> Time
@@ -7597,6 +8323,12 @@ module Aws::DynamoDB
7597
8323
  # resp.table_description.table_class_summary.table_class #=> String, one of "STANDARD", "STANDARD_INFREQUENT_ACCESS"
7598
8324
  # resp.table_description.table_class_summary.last_update_date_time #=> Time
7599
8325
  # resp.table_description.deletion_protection_enabled #=> Boolean
8326
+ # resp.table_description.on_demand_throughput.max_read_request_units #=> Integer
8327
+ # resp.table_description.on_demand_throughput.max_write_request_units #=> Integer
8328
+ # resp.table_description.warm_throughput.read_units_per_second #=> Integer
8329
+ # resp.table_description.warm_throughput.write_units_per_second #=> Integer
8330
+ # resp.table_description.warm_throughput.status #=> String, one of "CREATING", "UPDATING", "DELETING", "ACTIVE", "INACCESSIBLE_ENCRYPTION_CREDENTIALS", "ARCHIVING", "ARCHIVED"
8331
+ # resp.table_description.multi_region_consistency #=> String, one of "EVENTUAL", "STRONG"
7600
8332
  #
7601
8333
  # @see http://docs.aws.amazon.com/goto/WebAPI/dynamodb-2012-08-10/UpdateTable AWS API Documentation
7602
8334
  #
@@ -7609,19 +8341,16 @@ module Aws::DynamoDB
7609
8341
 
7610
8342
  # Updates auto scaling settings on your global tables at once.
7611
8343
  #
7612
- # This operation only applies to [Version 2019.11.21 (Current)][1] of
7613
- # global tables.
7614
- #
7615
- #
7616
- #
7617
- # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables.V2.html
8344
+ # For global tables, this operation only applies to global tables using
8345
+ # Version 2019.11.21 (Current version).
7618
8346
  #
7619
8347
  # @option params [Array<Types::GlobalSecondaryIndexAutoScalingUpdate>] :global_secondary_index_updates
7620
8348
  # Represents the auto scaling settings of the global secondary indexes
7621
8349
  # of the replica to be updated.
7622
8350
  #
7623
8351
  # @option params [required, String] :table_name
7624
- # The name of the global table to be updated.
8352
+ # The name of the global table to be updated. You can also provide the
8353
+ # Amazon Resource Name (ARN) of the table in this parameter.
7625
8354
  #
7626
8355
  # @option params [Types::AutoScalingSettingsUpdate] :provisioned_write_capacity_auto_scaling_update
7627
8356
  # Represents the auto scaling settings to be modified for a global table
@@ -7658,7 +8387,7 @@ module Aws::DynamoDB
7658
8387
  # },
7659
8388
  # },
7660
8389
  # ],
7661
- # table_name: "TableName", # required
8390
+ # table_name: "TableArn", # required
7662
8391
  # provisioned_write_capacity_auto_scaling_update: {
7663
8392
  # minimum_units: 1,
7664
8393
  # maximum_units: 1,
@@ -7814,7 +8543,8 @@ module Aws::DynamoDB
7814
8543
  # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/TTL.html
7815
8544
  #
7816
8545
  # @option params [required, String] :table_name
7817
- # The name of the table to be configured.
8546
+ # The name of the table to be configured. You can also provide the
8547
+ # Amazon Resource Name (ARN) of the table in this parameter.
7818
8548
  #
7819
8549
  # @option params [required, Types::TimeToLiveSpecification] :time_to_live_specification
7820
8550
  # Represents the settings used to enable or disable Time to Live for the
@@ -7827,7 +8557,7 @@ module Aws::DynamoDB
7827
8557
  # @example Request syntax with placeholder values
7828
8558
  #
7829
8559
  # resp = client.update_time_to_live({
7830
- # table_name: "TableName", # required
8560
+ # table_name: "TableArn", # required
7831
8561
  # time_to_live_specification: { # required
7832
8562
  # enabled: false, # required
7833
8563
  # attribute_name: "TimeToLiveAttributeName", # required
@@ -7854,14 +8584,19 @@ module Aws::DynamoDB
7854
8584
  # @api private
7855
8585
  def build_request(operation_name, params = {})
7856
8586
  handlers = @handlers.for(operation_name)
8587
+ tracer = config.telemetry_provider.tracer_provider.tracer(
8588
+ Aws::Telemetry.module_to_tracer_name('Aws::DynamoDB')
8589
+ )
7857
8590
  context = Seahorse::Client::RequestContext.new(
7858
8591
  operation_name: operation_name,
7859
8592
  operation: config.api.operation(operation_name),
7860
8593
  client: self,
7861
8594
  params: params,
7862
- config: config)
8595
+ config: config,
8596
+ tracer: tracer
8597
+ )
7863
8598
  context[:gem_name] = 'aws-sdk-dynamodb'
7864
- context[:gem_version] = '1.96.0'
8599
+ context[:gem_version] = '1.132.0'
7865
8600
  Seahorse::Client::Request.new(handlers, context)
7866
8601
  end
7867
8602