aws-sdk-sqs 1.39.0 → 1.86.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,18 +22,22 @@ 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'
28
29
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
30
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
- require 'aws-sdk-core/plugins/signature_v4.rb'
31
- require 'aws-sdk-core/plugins/protocols/query.rb'
31
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
32
+ require 'aws-sdk-core/plugins/request_compression.rb'
33
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
34
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
35
+ require 'aws-sdk-core/plugins/telemetry.rb'
36
+ require 'aws-sdk-core/plugins/sign.rb'
37
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
32
38
  require 'aws-sdk-sqs/plugins/queue_urls.rb'
33
39
  require 'aws-sdk-sqs/plugins/md5s.rb'
34
40
 
35
- Aws::Plugins::GlobalConfiguration.add_identifier(:sqs)
36
-
37
41
  module Aws::SQS
38
42
  # An API client for SQS. To construct a client, you need to configure a `:region` and `:credentials`.
39
43
  #
@@ -70,18 +74,30 @@ module Aws::SQS
70
74
  add_plugin(Aws::Plugins::ResponsePaging)
71
75
  add_plugin(Aws::Plugins::StubResponses)
72
76
  add_plugin(Aws::Plugins::IdempotencyToken)
77
+ add_plugin(Aws::Plugins::InvocationId)
73
78
  add_plugin(Aws::Plugins::JsonvalueConverter)
74
79
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
75
80
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
76
81
  add_plugin(Aws::Plugins::TransferEncoding)
77
82
  add_plugin(Aws::Plugins::HttpChecksum)
78
- add_plugin(Aws::Plugins::SignatureV4)
79
- add_plugin(Aws::Plugins::Protocols::Query)
83
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
84
+ add_plugin(Aws::Plugins::RequestCompression)
85
+ add_plugin(Aws::Plugins::DefaultsMode)
86
+ add_plugin(Aws::Plugins::RecursionDetection)
87
+ add_plugin(Aws::Plugins::Telemetry)
88
+ add_plugin(Aws::Plugins::Sign)
89
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
80
90
  add_plugin(Aws::SQS::Plugins::QueueUrls)
81
91
  add_plugin(Aws::SQS::Plugins::Md5s)
92
+ add_plugin(Aws::SQS::Plugins::Endpoints)
82
93
 
83
94
  # @overload initialize(options)
84
95
  # @param [Hash] options
96
+ #
97
+ # @option options [Array<Seahorse::Client::Plugin>] :plugins ([]])
98
+ # A list of plugins to apply to the client. Each plugin is either a
99
+ # class name or an instance of a plugin class.
100
+ #
85
101
  # @option options [required, Aws::CredentialProvider] :credentials
86
102
  # Your AWS credentials. This can be an instance of any one of the
87
103
  # following classes:
@@ -116,14 +132,18 @@ module Aws::SQS
116
132
  # locations will be searched for credentials:
117
133
  #
118
134
  # * `Aws.config[:credentials]`
119
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
120
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
135
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
136
+ # `:account_id` options.
137
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
138
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
121
139
  # * `~/.aws/credentials`
122
140
  # * `~/.aws/config`
123
141
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
124
142
  # are very aggressive. Construct and pass an instance of
125
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
126
- # enable retries and extended timeouts.
143
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
144
+ # enable retries and extended timeouts. Instance profile credential
145
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
146
+ # to true.
127
147
  #
128
148
  # @option options [required, String] :region
129
149
  # The AWS region to connect to. The configured `:region` is
@@ -139,6 +159,8 @@ module Aws::SQS
139
159
  #
140
160
  # @option options [String] :access_key_id
141
161
  #
162
+ # @option options [String] :account_id
163
+ #
142
164
  # @option options [Boolean] :active_endpoint_cache (false)
143
165
  # When set to `true`, a thread polling for endpoints will be running in
144
166
  # the background every 60 secs (default). Defaults to `false`.
@@ -177,14 +199,28 @@ module Aws::SQS
177
199
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
178
200
  # a clock skew correction and retry requests with skewed client clocks.
179
201
  #
202
+ # @option options [String] :defaults_mode ("legacy")
203
+ # See {Aws::DefaultsModeConfiguration} for a list of the
204
+ # accepted modes and the configuration defaults that are included.
205
+ #
180
206
  # @option options [Boolean] :disable_host_prefix_injection (false)
181
207
  # Set to true to disable SDK automatically adding host prefix
182
208
  # to default service endpoint when available.
183
209
  #
184
- # @option options [String] :endpoint
185
- # The client endpoint is normally constructed from the `:region`
186
- # option. You should only configure an `:endpoint` when connecting
187
- # to test or custom endpoints. This should be a valid HTTP(S) URI.
210
+ # @option options [Boolean] :disable_request_compression (false)
211
+ # When set to 'true' the request body will not be compressed
212
+ # for supported operations.
213
+ #
214
+ # @option options [String, URI::HTTPS, URI::HTTP] :endpoint
215
+ # Normally you should not configure the `:endpoint` option
216
+ # directly. This is normally constructed from the `:region`
217
+ # option. Configuring `:endpoint` is normally reserved for
218
+ # connecting to test or custom endpoints. The endpoint should
219
+ # be a URI formatted like:
220
+ #
221
+ # 'http://example.com'
222
+ # 'https://example.com'
223
+ # 'http://example.com:123'
188
224
  #
189
225
  # @option options [Integer] :endpoint_cache_max_entries (1000)
190
226
  # Used for the maximum size limit of the LRU cache storing endpoints data
@@ -201,6 +237,10 @@ module Aws::SQS
201
237
  # @option options [Boolean] :endpoint_discovery (false)
202
238
  # When set to `true`, endpoint discovery will be enabled for operations when available.
203
239
  #
240
+ # @option options [Boolean] :ignore_configured_endpoint_urls
241
+ # Setting to true disables use of endpoint URLs provided via environment
242
+ # variables and the shared configuration file.
243
+ #
204
244
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
205
245
  # The log formatter.
206
246
  #
@@ -221,6 +261,11 @@ module Aws::SQS
221
261
  # Used when loading credentials from the shared credentials file
222
262
  # at HOME/.aws/credentials. When not specified, 'default' is used.
223
263
  #
264
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
265
+ # The minimum size in bytes that triggers compression for request
266
+ # bodies. The value must be non-negative integer value between 0
267
+ # and 10485780 bytes inclusive.
268
+ #
224
269
  # @option options [Proc] :retry_backoff
225
270
  # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
226
271
  # This option is only used in the `legacy` retry mode.
@@ -265,11 +310,32 @@ module Aws::SQS
265
310
  # throttling. This is a provisional mode that may change behavior
266
311
  # in the future.
267
312
  #
313
+ # @option options [String] :sdk_ua_app_id
314
+ # A unique and opaque application ID that is appended to the
315
+ # User-Agent header as app/sdk_ua_app_id. It should have a
316
+ # maximum length of 50. This variable is sourced from environment
317
+ # variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.
268
318
  #
269
319
  # @option options [String] :secret_access_key
270
320
  #
271
321
  # @option options [String] :session_token
272
322
  #
323
+ # @option options [Array] :sigv4a_signing_region_set
324
+ # A list of regions that should be signed with SigV4a signing. When
325
+ # not passed, a default `:sigv4a_signing_region_set` is searched for
326
+ # in the following locations:
327
+ #
328
+ # * `Aws.config[:sigv4a_signing_region_set]`
329
+ # * `ENV['AWS_SIGV4A_SIGNING_REGION_SET']`
330
+ # * `~/.aws/config`
331
+ #
332
+ # @option options [Boolean] :simple_json (false)
333
+ # Disables request parameter conversion, validation, and formatting.
334
+ # Also disables response data type conversions. The request parameters
335
+ # hash must be formatted exactly as the API expects.This option is useful
336
+ # when you want to ensure the highest level of performance by avoiding
337
+ # overhead of walking request parameters and response data structures.
338
+ #
273
339
  # @option options [Boolean] :stub_responses (false)
274
340
  # Causes the client to return stubbed responses. By default
275
341
  # fake responses are generated and returned. You can specify
@@ -279,6 +345,38 @@ module Aws::SQS
279
345
  # ** Please note ** When response stubbing is enabled, no HTTP
280
346
  # requests are made, and retries are disabled.
281
347
  #
348
+ # @option options [Aws::Telemetry::TelemetryProviderBase] :telemetry_provider (Aws::Telemetry::NoOpTelemetryProvider)
349
+ # Allows you to provide a telemetry provider, which is used to
350
+ # emit telemetry data. By default, uses `NoOpTelemetryProvider` which
351
+ # will not record or emit any telemetry data. The SDK supports the
352
+ # following telemetry providers:
353
+ #
354
+ # * OpenTelemetry (OTel) - To use the OTel provider, install and require the
355
+ # `opentelemetry-sdk` gem and then, pass in an instance of a
356
+ # `Aws::Telemetry::OTelProvider` for telemetry provider.
357
+ #
358
+ # @option options [Aws::TokenProvider] :token_provider
359
+ # A Bearer Token Provider. This can be an instance of any one of the
360
+ # following classes:
361
+ #
362
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
363
+ # tokens.
364
+ #
365
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
366
+ # access token generated from `aws login`.
367
+ #
368
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
369
+ # will be used to search for tokens configured for your profile in shared configuration files.
370
+ #
371
+ # @option options [Boolean] :use_dualstack_endpoint
372
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
373
+ # will be used if available.
374
+ #
375
+ # @option options [Boolean] :use_fips_endpoint
376
+ # When set to `true`, fips compatible endpoints will be used if available.
377
+ # When a `fips` region is used, the region is normalized and this config
378
+ # is set to `true`.
379
+ #
282
380
  # @option options [Boolean] :validate_params (true)
283
381
  # When `true`, request parameters are validated before
284
382
  # sending the request.
@@ -289,47 +387,76 @@ module Aws::SQS
289
387
  # `Aws::Errors::Checksum` errors are raised for cases where checksums do
290
388
  # not match.
291
389
  #
292
- # @option options [URI::HTTP,String] :http_proxy A proxy to send
293
- # requests through. Formatted like 'http://proxy.com:123'.
294
- #
295
- # @option options [Float] :http_open_timeout (15) The number of
296
- # seconds to wait when opening a HTTP session before raising a
297
- # `Timeout::Error`.
298
- #
299
- # @option options [Integer] :http_read_timeout (60) The default
300
- # number of seconds to wait for response data. This value can
301
- # safely be set per-request on the session.
390
+ # @option options [Aws::SQS::EndpointProvider] :endpoint_provider
391
+ # The endpoint provider used to resolve endpoints. Any object that responds to
392
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
393
+ # `Aws::SQS::EndpointParameters`.
394
+ #
395
+ # @option options [Float] :http_continue_timeout (1)
396
+ # The number of seconds to wait for a 100-continue response before sending the
397
+ # request body. This option has no effect unless the request has "Expect"
398
+ # header set to "100-continue". Defaults to `nil` which disables this
399
+ # behaviour. This value can safely be set per request on the session.
400
+ #
401
+ # @option options [Float] :http_idle_timeout (5)
402
+ # The number of seconds a connection is allowed to sit idle before it
403
+ # is considered stale. Stale connections are closed and removed from the
404
+ # pool before making a request.
405
+ #
406
+ # @option options [Float] :http_open_timeout (15)
407
+ # The default number of seconds to wait for response data.
408
+ # This value can safely be set per-request on the session.
409
+ #
410
+ # @option options [URI::HTTP,String] :http_proxy
411
+ # A proxy to send requests through. Formatted like 'http://proxy.com:123'.
412
+ #
413
+ # @option options [Float] :http_read_timeout (60)
414
+ # The default number of seconds to wait for response data.
415
+ # This value can safely be set per-request on the session.
416
+ #
417
+ # @option options [Boolean] :http_wire_trace (false)
418
+ # When `true`, HTTP debug output will be sent to the `:logger`.
419
+ #
420
+ # @option options [Proc] :on_chunk_received
421
+ # When a Proc object is provided, it will be used as callback when each chunk
422
+ # of the response body is received. It provides three arguments: the chunk,
423
+ # the number of bytes received, and the total number of
424
+ # bytes in the response (or nil if the server did not send a `content-length`).
425
+ #
426
+ # @option options [Proc] :on_chunk_sent
427
+ # When a Proc object is provided, it will be used as callback when each chunk
428
+ # of the request body is sent. It provides three arguments: the chunk,
429
+ # the number of bytes read from the body, and the total number of
430
+ # bytes in the body.
431
+ #
432
+ # @option options [Boolean] :raise_response_errors (true)
433
+ # When `true`, response errors are raised.
434
+ #
435
+ # @option options [String] :ssl_ca_bundle
436
+ # Full path to the SSL certificate authority bundle file that should be used when
437
+ # verifying peer certificates. If you do not pass `:ssl_ca_bundle` or
438
+ # `:ssl_ca_directory` the the system default will be used if available.
439
+ #
440
+ # @option options [String] :ssl_ca_directory
441
+ # Full path of the directory that contains the unbundled SSL certificate
442
+ # authority files for verifying peer certificates. If you do
443
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the system
444
+ # default will be used if available.
302
445
  #
303
- # @option options [Float] :http_idle_timeout (5) The number of
304
- # seconds a connection is allowed to sit idle before it is
305
- # considered stale. Stale connections are closed and removed
306
- # from the pool before making a request.
446
+ # @option options [String] :ssl_ca_store
447
+ # Sets the X509::Store to verify peer certificate.
307
448
  #
308
- # @option options [Float] :http_continue_timeout (1) The number of
309
- # seconds to wait for a 100-continue response before sending the
310
- # request body. This option has no effect unless the request has
311
- # "Expect" header set to "100-continue". Defaults to `nil` which
312
- # disables this behaviour. This value can safely be set per
313
- # request on the session.
449
+ # @option options [OpenSSL::X509::Certificate] :ssl_cert
450
+ # Sets a client certificate when creating http connections.
314
451
  #
315
- # @option options [Boolean] :http_wire_trace (false) When `true`,
316
- # HTTP debug output will be sent to the `:logger`.
452
+ # @option options [OpenSSL::PKey] :ssl_key
453
+ # Sets a client key when creating http connections.
317
454
  #
318
- # @option options [Boolean] :ssl_verify_peer (true) When `true`,
319
- # SSL peer certificates are verified when establishing a
320
- # connection.
455
+ # @option options [Float] :ssl_timeout
456
+ # Sets the SSL timeout in seconds
321
457
  #
322
- # @option options [String] :ssl_ca_bundle Full path to the SSL
323
- # certificate authority bundle file that should be used when
324
- # verifying peer certificates. If you do not pass
325
- # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
326
- # will be used if available.
327
- #
328
- # @option options [String] :ssl_ca_directory Full path of the
329
- # directory that contains the unbundled SSL certificate
330
- # authority files for verifying peer certificates. If you do
331
- # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
332
- # system default will be used if available.
458
+ # @option options [Boolean] :ssl_verify_peer (true)
459
+ # When `true`, SSL peer certificates are verified when establishing a connection.
333
460
  #
334
461
  def initialize(*args)
335
462
  super
@@ -343,33 +470,29 @@ module Aws::SQS
343
470
  # When you create a queue, you have full control access rights for the
344
471
  # queue. Only you, the owner of the queue, can grant or deny permissions
345
472
  # to the queue. For more information about these permissions, see [Allow
346
- # Developers to Write Messages to a Shared Queue][2] in the *Amazon
347
- # Simple Queue Service Developer Guide*.
473
+ # Developers to Write Messages to a Shared Queue][2] in the *Amazon SQS
474
+ # Developer Guide*.
348
475
  #
349
476
  # <note markdown="1"> * `AddPermission` generates a policy for you. You can use `
350
477
  # SetQueueAttributes ` to upload your policy. For more information,
351
478
  # see [Using Custom Policies with the Amazon SQS Access Policy
352
- # Language][3] in the *Amazon Simple Queue Service Developer Guide*.
479
+ # Language][3] in the *Amazon SQS Developer Guide*.
353
480
  #
354
- # * An Amazon SQS policy can have a maximum of 7 actions.
481
+ # * An Amazon SQS policy can have a maximum of seven actions per
482
+ # statement.
355
483
  #
356
484
  # * To remove the ability to change queue permissions, you must deny
357
485
  # permission to the `AddPermission`, `RemovePermission`, and
358
486
  # `SetQueueAttributes` actions in your IAM policy.
359
487
  #
360
- # </note>
361
- #
362
- # Some actions take lists of parameters. These lists are specified using
363
- # the `param.n` notation. Values of `n` are integers starting from 1.
364
- # For example, a parameter list with two elements looks like this:
488
+ # * Amazon SQS `AddPermission` does not support adding a non-account
489
+ # principal.
365
490
  #
366
- # `&AttributeName.1=first`
367
- #
368
- # `&AttributeName.2=second`
491
+ # </note>
369
492
  #
370
493
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
371
- # information, see [Grant cross-account permissions to a role and a user
372
- # name][4] in the *Amazon Simple Queue Service Developer Guide*.
494
+ # information, see [Grant cross-account permissions to a role and a
495
+ # username][4] in the *Amazon SQS Developer Guide*.
373
496
  #
374
497
  # </note>
375
498
  #
@@ -392,11 +515,10 @@ module Aws::SQS
392
515
  # underscores (`_`).
393
516
  #
394
517
  # @option params [required, Array<String>] :aws_account_ids
395
- # The AWS account number of the [principal][1] who is given permission.
396
- # The principal must have an AWS account, but does not need to be signed
397
- # up for Amazon SQS. For information about locating the AWS account
398
- # identification, see [Your AWS Identifiers][2] in the *Amazon Simple
399
- # Queue Service Developer Guide*.
518
+ # The Amazon Web Services account numbers of the [principals][1] who are
519
+ # to receive permission. For information about locating the Amazon Web
520
+ # Services account identification, see [Your Amazon Web Services
521
+ # Identifiers][2] in the *Amazon SQS Developer Guide*.
400
522
  #
401
523
  #
402
524
  #
@@ -409,7 +531,7 @@ module Aws::SQS
409
531
  #
410
532
  # For more information about these actions, see [Overview of Managing
411
533
  # Access Permissions to Your Amazon Simple Queue Service Resource][1] in
412
- # the *Amazon Simple Queue Service Developer Guide*.
534
+ # the *Amazon SQS Developer Guide*.
413
535
  #
414
536
  # Specifying `SendMessage`, `DeleteMessage`, or
415
537
  # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
@@ -441,18 +563,66 @@ module Aws::SQS
441
563
  req.send_request(options)
442
564
  end
443
565
 
566
+ # Cancels a specified message movement task. A message movement can only
567
+ # be cancelled when the current status is RUNNING. Cancelling a message
568
+ # movement task does not revert the messages that have already been
569
+ # moved. It can only stop the messages that have not been moved yet.
570
+ #
571
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
572
+ # [dead-letter queues (DLQs)][1] only. In this context, the source
573
+ # queue is the dead-letter queue (DLQ), while the destination queue
574
+ # can be the original source queue (from which the messages were
575
+ # driven to the dead-letter-queue), or a custom destination queue.
576
+ #
577
+ # * Only one active message movement task is supported per queue at any
578
+ # given time.
579
+ #
580
+ # </note>
581
+ #
582
+ #
583
+ #
584
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
585
+ #
586
+ # @option params [required, String] :task_handle
587
+ # An identifier associated with a message movement task.
588
+ #
589
+ # @return [Types::CancelMessageMoveTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
590
+ #
591
+ # * {Types::CancelMessageMoveTaskResult#approximate_number_of_messages_moved #approximate_number_of_messages_moved} => Integer
592
+ #
593
+ # @example Request syntax with placeholder values
594
+ #
595
+ # resp = client.cancel_message_move_task({
596
+ # task_handle: "String", # required
597
+ # })
598
+ #
599
+ # @example Response structure
600
+ #
601
+ # resp.approximate_number_of_messages_moved #=> Integer
602
+ #
603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTask AWS API Documentation
604
+ #
605
+ # @overload cancel_message_move_task(params = {})
606
+ # @param [Hash] params ({})
607
+ def cancel_message_move_task(params = {}, options = {})
608
+ req = build_request(:cancel_message_move_task, params)
609
+ req.send_request(options)
610
+ end
611
+
444
612
  # Changes the visibility timeout of a specified message in a queue to a
445
613
  # new value. The default visibility timeout for a message is 30 seconds.
446
614
  # The minimum is 0 seconds. The maximum is 12 hours. For more
447
- # information, see [Visibility Timeout][1] in the *Amazon Simple Queue
448
- # Service Developer Guide*.
449
- #
450
- # For example, you have a message with a visibility timeout of 5
451
- # minutes. After 3 minutes, you call `ChangeMessageVisibility` with a
452
- # timeout of 10 minutes. You can continue to call
453
- # `ChangeMessageVisibility` to extend the visibility timeout to the
454
- # maximum allowed time. If you try to extend the visibility timeout
455
- # beyond the maximum, your request is rejected.
615
+ # information, see [Visibility Timeout][1] in the *Amazon SQS Developer
616
+ # Guide*.
617
+ #
618
+ # For example, if the default timeout for a queue is 60 seconds, 15
619
+ # seconds have elapsed since you received the message, and you send a
620
+ # ChangeMessageVisibility call with `VisibilityTimeout` set to 10
621
+ # seconds, the 10 seconds begin to count from the time that you make the
622
+ # `ChangeMessageVisibility` call. Thus, any attempt to change the
623
+ # visibility timeout or to delete that message 10 seconds after you
624
+ # initially change the visibility timeout (a total of 25 seconds) might
625
+ # result in an error.
456
626
  #
457
627
  # An Amazon SQS message has three basic states:
458
628
  #
@@ -468,13 +638,13 @@ module Aws::SQS
468
638
  # messages. A message is considered to be *in flight* after it is
469
639
  # received from a queue by a consumer, but not yet deleted from the
470
640
  # queue (that is, between states 2 and 3). There is a limit to the
471
- # number of inflight messages.
641
+ # number of in flight messages.
472
642
  #
473
- # Limits that apply to inflight messages are unrelated to the
643
+ # Limits that apply to in flight messages are unrelated to the
474
644
  # *unlimited* number of stored messages.
475
645
  #
476
646
  # For most standard queues (depending on queue traffic and message
477
- # backlog), there can be a maximum of approximately 120,000 inflight
647
+ # backlog), there can be a maximum of approximately 120,000 in flight
478
648
  # messages (received from a queue by a consumer, but not yet deleted
479
649
  # from the queue). If you reach this limit, Amazon SQS returns the
480
650
  # `OverLimit` error message. To avoid reaching the limit, you should
@@ -482,7 +652,7 @@ module Aws::SQS
482
652
  # increase the number of queues you use to process your messages. To
483
653
  # request a limit increase, [file a support request][2].
484
654
  #
485
- # For FIFO queues, there can be a maximum of 20,000 inflight messages
655
+ # For FIFO queues, there can be a maximum of 20,000 in flight messages
486
656
  # (received from a queue by a consumer, but not yet deleted from the
487
657
  # queue). If you reach this limit, Amazon SQS returns no error messages.
488
658
  #
@@ -511,7 +681,7 @@ module Aws::SQS
511
681
  # Queue URLs and names are case-sensitive.
512
682
  #
513
683
  # @option params [required, String] :receipt_handle
514
- # The receipt handle associated with the message whose visibility
684
+ # The receipt handle associated with the message, whose visibility
515
685
  # timeout is changed. This parameter is returned by the ` ReceiveMessage
516
686
  # ` action.
517
687
  #
@@ -548,14 +718,6 @@ module Aws::SQS
548
718
  # and unsuccessful actions, you should check for batch errors even when
549
719
  # the call returns an HTTP status code of `200`.
550
720
  #
551
- # Some actions take lists of parameters. These lists are specified using
552
- # the `param.n` notation. Values of `n` are integers starting from 1.
553
- # For example, a parameter list with two elements looks like this:
554
- #
555
- # `&AttributeName.1=first`
556
- #
557
- # `&AttributeName.2=second`
558
- #
559
721
  # @option params [required, String] :queue_url
560
722
  # The URL of the Amazon SQS queue whose messages' visibility is
561
723
  # changed.
@@ -563,7 +725,7 @@ module Aws::SQS
563
725
  # Queue URLs and names are case-sensitive.
564
726
  #
565
727
  # @option params [required, Array<Types::ChangeMessageVisibilityBatchRequestEntry>] :entries
566
- # A list of receipt handles of the messages for which the visibility
728
+ # Lists the receipt handles of the messages for which the visibility
567
729
  # timeout must be changed.
568
730
  #
569
731
  # @return [Types::ChangeMessageVisibilityBatchResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -614,7 +776,7 @@ module Aws::SQS
614
776
  # either create a new FIFO queue for your application or delete your
615
777
  # existing standard queue and recreate it as a FIFO queue. For more
616
778
  # information, see [Moving From a Standard Queue to a FIFO Queue][1]
617
- # in the *Amazon Simple Queue Service Developer Guide*.
779
+ # in the *Amazon SQS Developer Guide*.
618
780
  #
619
781
  # </note>
620
782
  #
@@ -644,17 +806,9 @@ module Aws::SQS
644
806
  # * If the queue name, attribute names, or attribute values don't match
645
807
  # an existing queue, `CreateQueue` returns an error.
646
808
  #
647
- # Some actions take lists of parameters. These lists are specified using
648
- # the `param.n` notation. Values of `n` are integers starting from 1.
649
- # For example, a parameter list with two elements looks like this:
650
- #
651
- # `&AttributeName.1=first`
652
- #
653
- # `&AttributeName.2=second`
654
- #
655
809
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
656
- # information, see [Grant cross-account permissions to a role and a user
657
- # name][3] in the *Amazon Simple Queue Service Developer Guide*.
810
+ # information, see [Grant cross-account permissions to a role and a
811
+ # username][3] in the *Amazon SQS Developer Guide*.
658
812
  #
659
813
  # </note>
660
814
  #
@@ -694,63 +848,101 @@ module Aws::SQS
694
848
  # * `MessageRetentionPeriod` – The length of time, in seconds, for which
695
849
  # Amazon SQS retains a message. Valid values: An integer from 60
696
850
  # seconds (1 minute) to 1,209,600 seconds (14 days). Default: 345,600
697
- # (4 days).
698
- #
699
- # * `Policy` The queue's policy. A valid AWS policy. For more
700
- # information about policy structure, see [Overview of AWS IAM
701
- # Policies][1] in the *Amazon IAM User Guide*.
851
+ # (4 days). When you change a queue's attributes, the change can take
852
+ # up to 60 seconds for most of the attributes to propagate throughout
853
+ # the Amazon SQS system. Changes made to the `MessageRetentionPeriod`
854
+ # attribute can take up to 15 minutes and will impact existing
855
+ # messages in the queue potentially causing them to be expired and
856
+ # deleted if the `MessageRetentionPeriod` is reduced below the age of
857
+ # existing messages.
858
+ #
859
+ # * `Policy` – The queue's policy. A valid Amazon Web Services policy.
860
+ # For more information about policy structure, see [Overview of Amazon
861
+ # Web Services IAM Policies][1] in the *IAM User Guide*.
702
862
  #
703
863
  # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
704
864
  # for which a ` ReceiveMessage ` action waits for a message to arrive.
705
865
  # Valid values: An integer from 0 to 20 (seconds). Default: 0.
706
866
  #
867
+ # * `VisibilityTimeout` – The visibility timeout for the queue, in
868
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
869
+ # Default: 30. For more information about the visibility timeout, see
870
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
871
+ #
872
+ # The following attributes apply only to [dead-letter queues:][3]
873
+ #
707
874
  # * `RedrivePolicy` – The string that includes the parameters for the
708
875
  # dead-letter queue functionality of the source queue as a JSON
709
- # object. For more information about the redrive policy and
710
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2] in
711
- # the *Amazon Simple Queue Service Developer Guide*.
876
+ # object. The parameters are as follows:
712
877
  #
713
878
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
714
879
  # dead-letter queue to which Amazon SQS moves messages after the
715
880
  # value of `maxReceiveCount` is exceeded.
716
881
  #
717
882
  # * `maxReceiveCount` – The number of times a message is delivered to
718
- # the source queue before being moved to the dead-letter queue. When
719
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
720
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
883
+ # the source queue before being moved to the dead-letter queue.
884
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
885
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
886
+ # dead-letter-queue.
887
+ #
888
+ # * `RedriveAllowPolicy` – The string that includes the parameters for
889
+ # the permissions for the dead-letter queue redrive permission and
890
+ # which source queues can specify dead-letter queues as a JSON object.
891
+ # The parameters are as follows:
892
+ #
893
+ # * `redrivePermission` – The permission type that defines which
894
+ # source queues can specify the current queue as the dead-letter
895
+ # queue. Valid values are:
896
+ #
897
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
898
+ # Services account in the same Region can specify this queue as
899
+ # the dead-letter queue.
900
+ #
901
+ # * `denyAll` – No source queues can specify this queue as the
902
+ # dead-letter queue.
903
+ #
904
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
905
+ # parameter can specify this queue as the dead-letter queue.
906
+ #
907
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the source
908
+ # queues that can specify this queue as the dead-letter queue and
909
+ # redrive messages. You can specify this parameter only when the
910
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
911
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
912
+ # specify dead-letter queues, set the `redrivePermission` parameter
913
+ # to `allowAll`.
914
+ #
915
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
916
+ # Similarly, the dead-letter queue of a standard queue must also be a
917
+ # standard queue.
721
918
  #
722
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
723
- # Similarly, the dead-letter queue of a standard queue must also be a
724
- # standard queue.
725
- #
726
- # </note>
727
- #
728
- # * `VisibilityTimeout` – The visibility timeout for the queue, in
729
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
730
- # Default: 30. For more information about the visibility timeout, see
731
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
732
- # Developer Guide*.
919
+ # </note>
733
920
  #
734
- # The following attributes apply only to [server-side-encryption][4]\:
921
+ # The following attributes apply only to [server-side-encryption][4]:
735
922
  #
736
- # * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
737
- # (CMK) for Amazon SQS or a custom CMK. For more information, see [Key
738
- # Terms][5]. While the alias of the AWS-managed CMK for Amazon SQS is
739
- # always `alias/aws/sqs`, the alias of a custom CMK can, for example,
740
- # be `alias/MyAlias `. For more examples, see [KeyId][6] in the *AWS
741
- # Key Management Service API Reference*.
923
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed customer
924
+ # master key (CMK) for Amazon SQS or a custom CMK. For more
925
+ # information, see [Key Terms][5]. While the alias of the Amazon Web
926
+ # Services managed CMK for Amazon SQS is always `alias/aws/sqs`, the
927
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
928
+ # more examples, see [KeyId][6] in the *Key Management Service API
929
+ # Reference*.
742
930
  #
743
931
  # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds, for
744
932
  # which Amazon SQS can reuse a [data key][7] to encrypt or decrypt
745
- # messages before calling AWS KMS again. An integer representing
746
- # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
747
- # hours). Default: 300 (5 minutes). A shorter time period provides
748
- # better security but results in more calls to KMS which might incur
749
- # charges after Free Tier. For more information, see [How Does the
750
- # Data Key Reuse Period Work?][8].
933
+ # messages before calling KMS again. An integer representing seconds,
934
+ # between 60 seconds (1 minute) and 86,400 seconds (24 hours).
935
+ # Default: 300 (5 minutes). A shorter time period provides better
936
+ # security but results in more calls to KMS which might incur charges
937
+ # after Free Tier. For more information, see [How Does the Data Key
938
+ # Reuse Period Work?][8]
939
+ #
940
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption using
941
+ # SQS owned encryption keys. Only one server-side encryption option is
942
+ # supported per queue (for example, [SSE-KMS][9] or [SSE-SQS][10]).
751
943
  #
752
944
  # The following attributes apply only to [FIFO (first-in-first-out)
753
- # queues][9]\:
945
+ # queues][11]:
754
946
  #
755
947
  # * `FifoQueue` – Designates a queue as FIFO. Valid values are `true`
756
948
  # and `false`. If you don't specify the `FifoQueue` attribute, Amazon
@@ -759,13 +951,13 @@ module Aws::SQS
759
951
  # When you set this attribute, you must also provide the
760
952
  # `MessageGroupId` for your messages explicitly.
761
953
  #
762
- # For more information, see [FIFO queue logic][10] in the *Amazon
763
- # Simple Queue Service Developer Guide*.
954
+ # For more information, see [FIFO queue logic][12] in the *Amazon SQS
955
+ # Developer Guide*.
764
956
  #
765
957
  # * `ContentBasedDeduplication` – Enables content-based deduplication.
766
958
  # Valid values are `true` and `false`. For more information, see
767
- # [Exactly-once processing][11] in the *Amazon Simple Queue Service
768
- # Developer Guide*. Note the following:
959
+ # [Exactly-once processing][13] in the *Amazon SQS Developer Guide*.
960
+ # Note the following:
769
961
  #
770
962
  # * Every message must have a unique `MessageDeduplicationId`.
771
963
  #
@@ -796,7 +988,7 @@ module Aws::SQS
796
988
  # duplicates and only one copy of the message is delivered.
797
989
  #
798
990
  # The following attributes apply only to [high throughput for FIFO
799
- # queues][12]\:
991
+ # queues][14]:
800
992
  #
801
993
  # * `DeduplicationScope` – Specifies whether message deduplication
802
994
  # occurs at the message group or queue level. Valid values are
@@ -819,28 +1011,30 @@ module Aws::SQS
819
1011
  # deduplication occurs as specified.
820
1012
  #
821
1013
  # For information on throughput quotas, see [Quotas related to
822
- # messages][13] in the *Amazon Simple Queue Service Developer Guide*.
1014
+ # messages][15] in the *Amazon SQS Developer Guide*.
823
1015
  #
824
1016
  #
825
1017
  #
826
1018
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
827
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
828
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1019
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1020
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
829
1021
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
830
1022
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
831
1023
  # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
832
1024
  # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
833
1025
  # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
834
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
835
- # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
836
- # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
837
- # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
838
- # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1026
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1027
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1028
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1029
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
1030
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
1031
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
1032
+ # [15]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
839
1033
  #
840
1034
  # @option params [Hash<String,String>] :tags
841
1035
  # Add cost allocation tags to the specified Amazon SQS queue. For an
842
- # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
843
- # Simple Queue Service Developer Guide*.
1036
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
1037
+ # Developer Guide*.
844
1038
  #
845
1039
  # When you use queue tags, keep the following guidelines in mind:
846
1040
  #
@@ -854,15 +1048,15 @@ module Aws::SQS
854
1048
  # * A new tag with a key identical to that of an existing tag overwrites
855
1049
  # the existing tag.
856
1050
  #
857
- # For a full list of tag restrictions, see [Limits Related to Queues][2]
858
- # in the *Amazon Simple Queue Service Developer Guide*.
1051
+ # For a full list of tag restrictions, see [Quotas related to queues][2]
1052
+ # in the *Amazon SQS Developer Guide*.
859
1053
  #
860
1054
  # <note markdown="1"> To be able to tag a queue on creation, you must have the
861
1055
  # `sqs:CreateQueue` and `sqs:TagQueue` permissions.
862
1056
  #
863
1057
  # Cross-account permissions don't apply to this action. For more
864
- # information, see [Grant cross-account permissions to a role and a user
865
- # name][3] in the *Amazon Simple Queue Service Developer Guide*.
1058
+ # information, see [Grant cross-account permissions to a role and a
1059
+ # username][3] in the *Amazon SQS Developer Guide*.
866
1060
  #
867
1061
  # </note>
868
1062
  #
@@ -914,7 +1108,7 @@ module Aws::SQS
914
1108
  # `ReceiptHandle` is different each time you receive a message. When you
915
1109
  # use the `DeleteMessage` action, you must provide the most recently
916
1110
  # received `ReceiptHandle` for the message (otherwise, the request
917
- # succeeds, but the message might not be deleted).
1111
+ # succeeds, but the message will not be deleted).
918
1112
  #
919
1113
  # For standard queues, it is possible to receive a message even after
920
1114
  # you delete it. This might happen on rare occasions if one of the
@@ -960,21 +1154,13 @@ module Aws::SQS
960
1154
  # and unsuccessful actions, you should check for batch errors even when
961
1155
  # the call returns an HTTP status code of `200`.
962
1156
  #
963
- # Some actions take lists of parameters. These lists are specified using
964
- # the `param.n` notation. Values of `n` are integers starting from 1.
965
- # For example, a parameter list with two elements looks like this:
966
- #
967
- # `&AttributeName.1=first`
968
- #
969
- # `&AttributeName.2=second`
970
- #
971
1157
  # @option params [required, String] :queue_url
972
1158
  # The URL of the Amazon SQS queue from which messages are deleted.
973
1159
  #
974
1160
  # Queue URLs and names are case-sensitive.
975
1161
  #
976
1162
  # @option params [required, Array<Types::DeleteMessageBatchRequestEntry>] :entries
977
- # A list of receipt handles for the messages to be deleted.
1163
+ # Lists the receipt handles for the messages to be deleted.
978
1164
  #
979
1165
  # @return [Types::DeleteMessageBatchResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
980
1166
  #
@@ -1027,8 +1213,10 @@ module Aws::SQS
1027
1213
  # creating a queue with the same name.
1028
1214
  #
1029
1215
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1030
- # information, see [Grant cross-account permissions to a role and a user
1031
- # name][1] in the *Amazon Simple Queue Service Developer Guide*.
1216
+ # information, see [Grant cross-account permissions to a role and a
1217
+ # username][1] in the *Amazon SQS Developer Guide*.
1218
+ #
1219
+ # The delete operation uses the HTTP `GET` verb.
1032
1220
  #
1033
1221
  # </note>
1034
1222
  #
@@ -1078,6 +1266,9 @@ module Aws::SQS
1078
1266
  # @option params [Array<String>] :attribute_names
1079
1267
  # A list of attributes for which to retrieve information.
1080
1268
  #
1269
+ # The `AttributeNames` parameter is optional, but if you don't specify
1270
+ # values for this parameter, the request returns empty results.
1271
+ #
1081
1272
  # <note markdown="1"> In the future, new attributes might be added. If you write code that
1082
1273
  # calls this action, we recommend that you structure your code so that
1083
1274
  # it can handle new attributes gracefully.
@@ -1088,10 +1279,10 @@ module Aws::SQS
1088
1279
  #
1089
1280
  # The `ApproximateNumberOfMessagesDelayed`,
1090
1281
  # `ApproximateNumberOfMessagesNotVisible`, and
1091
- # `ApproximateNumberOfMessagesVisible` metrics may not achieve
1092
- # consistency until at least 1 minute after the producers stop sending
1093
- # messages. This period is required for the queue metadata to reach
1094
- # eventual consistency.
1282
+ # `ApproximateNumberOfMessages` metrics may not achieve consistency
1283
+ # until at least 1 minute after the producers stop sending messages.
1284
+ # This period is required for the queue metadata to reach eventual
1285
+ # consistency.
1095
1286
  #
1096
1287
  # * `All` – Returns all values.
1097
1288
  #
@@ -1121,7 +1312,14 @@ module Aws::SQS
1121
1312
  # can contain before Amazon SQS rejects it.
1122
1313
  #
1123
1314
  # * `MessageRetentionPeriod` – Returns the length of time, in seconds,
1124
- # for which Amazon SQS retains a message.
1315
+ # for which Amazon SQS retains a message. When you change a queue's
1316
+ # attributes, the change can take up to 60 seconds for most of the
1317
+ # attributes to propagate throughout the Amazon SQS system. Changes
1318
+ # made to the `MessageRetentionPeriod` attribute can take up to 15
1319
+ # minutes and will impact existing messages in the queue potentially
1320
+ # causing them to be expired and deleted if the
1321
+ # `MessageRetentionPeriod` is reduced below the age of existing
1322
+ # messages.
1125
1323
  #
1126
1324
  # * `Policy` – Returns the policy of the queue.
1127
1325
  #
@@ -1131,55 +1329,93 @@ module Aws::SQS
1131
1329
  # seconds, for which the `ReceiveMessage` action waits for a message
1132
1330
  # to arrive.
1133
1331
  #
1332
+ # * `VisibilityTimeout` – Returns the visibility timeout for the queue.
1333
+ # For more information about the visibility timeout, see [Visibility
1334
+ # Timeout][2] in the *Amazon SQS Developer Guide*.
1335
+ #
1336
+ # The following attributes apply only to [dead-letter queues:][3]
1337
+ #
1134
1338
  # * `RedrivePolicy` – The string that includes the parameters for the
1135
1339
  # dead-letter queue functionality of the source queue as a JSON
1136
- # object. For more information about the redrive policy and
1137
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2] in
1138
- # the *Amazon Simple Queue Service Developer Guide*.
1340
+ # object. The parameters are as follows:
1139
1341
  #
1140
1342
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
1141
1343
  # dead-letter queue to which Amazon SQS moves messages after the
1142
1344
  # value of `maxReceiveCount` is exceeded.
1143
1345
  #
1144
1346
  # * `maxReceiveCount` – The number of times a message is delivered to
1145
- # the source queue before being moved to the dead-letter queue. When
1146
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
1147
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
1347
+ # the source queue before being moved to the dead-letter queue.
1348
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
1349
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
1350
+ # dead-letter-queue.
1351
+ #
1352
+ # * `RedriveAllowPolicy` – The string that includes the parameters for
1353
+ # the permissions for the dead-letter queue redrive permission and
1354
+ # which source queues can specify dead-letter queues as a JSON object.
1355
+ # The parameters are as follows:
1356
+ #
1357
+ # * `redrivePermission` – The permission type that defines which
1358
+ # source queues can specify the current queue as the dead-letter
1359
+ # queue. Valid values are:
1360
+ #
1361
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
1362
+ # Services account in the same Region can specify this queue as
1363
+ # the dead-letter queue.
1364
+ #
1365
+ # * `denyAll` – No source queues can specify this queue as the
1366
+ # dead-letter queue.
1367
+ #
1368
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
1369
+ # parameter can specify this queue as the dead-letter queue.
1370
+ #
1371
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the source
1372
+ # queues that can specify this queue as the dead-letter queue and
1373
+ # redrive messages. You can specify this parameter only when the
1374
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
1375
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
1376
+ # specify dead-letter queues, set the `redrivePermission` parameter
1377
+ # to `allowAll`.
1378
+ #
1379
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
1380
+ # Similarly, the dead-letter queue of a standard queue must also be a
1381
+ # standard queue.
1148
1382
  #
1149
- # * `VisibilityTimeout` – Returns the visibility timeout for the queue.
1150
- # For more information about the visibility timeout, see [Visibility
1151
- # Timeout][3] in the *Amazon Simple Queue Service Developer Guide*.
1383
+ # </note>
1152
1384
  #
1153
- # The following attributes apply only to [server-side-encryption][4]\:
1385
+ # The following attributes apply only to [server-side-encryption][4]:
1154
1386
  #
1155
- # * `KmsMasterKeyId` – Returns the ID of an AWS-managed customer master
1156
- # key (CMK) for Amazon SQS or a custom CMK. For more information, see
1157
- # [Key Terms][5].
1387
+ # * `KmsMasterKeyId` – Returns the ID of an Amazon Web Services managed
1388
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
1389
+ # information, see [Key Terms][5].
1158
1390
  #
1159
1391
  # * `KmsDataKeyReusePeriodSeconds` – Returns the length of time, in
1160
1392
  # seconds, for which Amazon SQS can reuse a data key to encrypt or
1161
- # decrypt messages before calling AWS KMS again. For more information,
1162
- # see [How Does the Data Key Reuse Period Work?][6].
1393
+ # decrypt messages before calling KMS again. For more information, see
1394
+ # [How Does the Data Key Reuse Period Work?][6].
1395
+ #
1396
+ # * `SqsManagedSseEnabled` – Returns information about whether the queue
1397
+ # is using SSE-SQS encryption using SQS owned encryption keys. Only
1398
+ # one server-side encryption option is supported per queue (for
1399
+ # example, [SSE-KMS][7] or [SSE-SQS][8]).
1163
1400
  #
1164
1401
  # The following attributes apply only to [FIFO (first-in-first-out)
1165
- # queues][7]\:
1402
+ # queues][9]:
1166
1403
  #
1167
1404
  # * `FifoQueue` – Returns information about whether the queue is FIFO.
1168
- # For more information, see [FIFO queue logic][8] in the *Amazon
1169
- # Simple Queue Service Developer Guide*.
1405
+ # For more information, see [FIFO queue logic][10] in the *Amazon SQS
1406
+ # Developer Guide*.
1170
1407
  #
1171
- # <note markdown="1"> To determine whether a queue is [FIFO][7], you can check whether
1408
+ # <note markdown="1"> To determine whether a queue is [FIFO][9], you can check whether
1172
1409
  # `QueueName` ends with the `.fifo` suffix.
1173
1410
  #
1174
1411
  # </note>
1175
1412
  #
1176
1413
  # * `ContentBasedDeduplication` – Returns whether content-based
1177
1414
  # deduplication is enabled for the queue. For more information, see
1178
- # [Exactly-once processing][9] in the *Amazon Simple Queue Service
1179
- # Developer Guide*.
1415
+ # [Exactly-once processing][11] in the *Amazon SQS Developer Guide*.
1180
1416
  #
1181
1417
  # The following attributes apply only to [high throughput for FIFO
1182
- # queues][10]\:
1418
+ # queues][12]:
1183
1419
  #
1184
1420
  # * `DeduplicationScope` – Specifies whether message deduplication
1185
1421
  # occurs at the message group or queue level. Valid values are
@@ -1202,21 +1438,23 @@ module Aws::SQS
1202
1438
  # deduplication occurs as specified.
1203
1439
  #
1204
1440
  # For information on throughput quotas, see [Quotas related to
1205
- # messages][11] in the *Amazon Simple Queue Service Developer Guide*.
1441
+ # messages][13] in the *Amazon SQS Developer Guide*.
1206
1442
  #
1207
1443
  #
1208
1444
  #
1209
1445
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1210
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1211
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1446
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1447
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1212
1448
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
1213
1449
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
1214
1450
  # [6]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
1215
- # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1216
- # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
1217
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
1218
- # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
1219
- # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1451
+ # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1452
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1453
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1454
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
1455
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
1456
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
1457
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1220
1458
  #
1221
1459
  # @return [Types::GetQueueAttributesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1222
1460
  #
@@ -1226,7 +1464,7 @@ module Aws::SQS
1226
1464
  #
1227
1465
  # resp = client.get_queue_attributes({
1228
1466
  # queue_url: "String", # required
1229
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds, DeduplicationScope, FifoThroughputLimit
1467
+ # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds, DeduplicationScope, FifoThroughputLimit, RedriveAllowPolicy, SqsManagedSseEnabled
1230
1468
  # })
1231
1469
  #
1232
1470
  # @example Response structure
@@ -1250,7 +1488,7 @@ module Aws::SQS
1250
1488
  # queue's owner. The queue's owner must grant you permission to access
1251
1489
  # the queue. For more information about shared queue access, see `
1252
1490
  # AddPermission ` or see [Allow Developers to Write Messages to a Shared
1253
- # Queue][1] in the *Amazon Simple Queue Service Developer Guide*.
1491
+ # Queue][1] in the *Amazon SQS Developer Guide*.
1254
1492
  #
1255
1493
  #
1256
1494
  #
@@ -1264,7 +1502,8 @@ module Aws::SQS
1264
1502
  # Queue URLs and names are case-sensitive.
1265
1503
  #
1266
1504
  # @option params [String] :queue_owner_aws_account_id
1267
- # The AWS account ID of the account that created the queue.
1505
+ # The Amazon Web Services account ID of the account that created the
1506
+ # queue.
1268
1507
  #
1269
1508
  # @return [Types::GetQueueUrlResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1270
1509
  #
@@ -1303,8 +1542,7 @@ module Aws::SQS
1303
1542
  # receive the next page of results.
1304
1543
  #
1305
1544
  # For more information about using dead-letter queues, see [Using Amazon
1306
- # SQS Dead-Letter Queues][1] in the *Amazon Simple Queue Service
1307
- # Developer Guide*.
1545
+ # SQS Dead-Letter Queues][1] in the *Amazon SQS Developer Guide*.
1308
1546
  #
1309
1547
  #
1310
1548
  #
@@ -1353,13 +1591,72 @@ module Aws::SQS
1353
1591
  req.send_request(options)
1354
1592
  end
1355
1593
 
1594
+ # Gets the most recent message movement tasks (up to 10) under a
1595
+ # specific source queue.
1596
+ #
1597
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
1598
+ # [dead-letter queues (DLQs)][1] only. In this context, the source
1599
+ # queue is the dead-letter queue (DLQ), while the destination queue
1600
+ # can be the original source queue (from which the messages were
1601
+ # driven to the dead-letter-queue), or a custom destination queue.
1602
+ #
1603
+ # * Only one active message movement task is supported per queue at any
1604
+ # given time.
1605
+ #
1606
+ # </note>
1607
+ #
1608
+ #
1609
+ #
1610
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1611
+ #
1612
+ # @option params [required, String] :source_arn
1613
+ # The ARN of the queue whose message movement tasks are to be listed.
1614
+ #
1615
+ # @option params [Integer] :max_results
1616
+ # The maximum number of results to include in the response. The default
1617
+ # is 1, which provides the most recent message movement task. The upper
1618
+ # limit is 10.
1619
+ #
1620
+ # @return [Types::ListMessageMoveTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1621
+ #
1622
+ # * {Types::ListMessageMoveTasksResult#results #results} => Array&lt;Types::ListMessageMoveTasksResultEntry&gt;
1623
+ #
1624
+ # @example Request syntax with placeholder values
1625
+ #
1626
+ # resp = client.list_message_move_tasks({
1627
+ # source_arn: "String", # required
1628
+ # max_results: 1,
1629
+ # })
1630
+ #
1631
+ # @example Response structure
1632
+ #
1633
+ # resp.results #=> Array
1634
+ # resp.results[0].task_handle #=> String
1635
+ # resp.results[0].status #=> String
1636
+ # resp.results[0].source_arn #=> String
1637
+ # resp.results[0].destination_arn #=> String
1638
+ # resp.results[0].max_number_of_messages_per_second #=> Integer
1639
+ # resp.results[0].approximate_number_of_messages_moved #=> Integer
1640
+ # resp.results[0].approximate_number_of_messages_to_move #=> Integer
1641
+ # resp.results[0].failure_reason #=> String
1642
+ # resp.results[0].started_timestamp #=> Integer
1643
+ #
1644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasks AWS API Documentation
1645
+ #
1646
+ # @overload list_message_move_tasks(params = {})
1647
+ # @param [Hash] params ({})
1648
+ def list_message_move_tasks(params = {}, options = {})
1649
+ req = build_request(:list_message_move_tasks, params)
1650
+ req.send_request(options)
1651
+ end
1652
+
1356
1653
  # List all cost allocation tags added to the specified Amazon SQS queue.
1357
1654
  # For an overview, see [Tagging Your Amazon SQS Queues][1] in the
1358
- # *Amazon Simple Queue Service Developer Guide*.
1655
+ # *Amazon SQS Developer Guide*.
1359
1656
  #
1360
1657
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1361
- # information, see [Grant cross-account permissions to a role and a user
1362
- # name][2] in the *Amazon Simple Queue Service Developer Guide*.
1658
+ # information, see [Grant cross-account permissions to a role and a
1659
+ # username][2] in the *Amazon SQS Developer Guide*.
1363
1660
  #
1364
1661
  # </note>
1365
1662
  #
@@ -1409,8 +1706,8 @@ module Aws::SQS
1409
1706
  # request to `listQueues` to receive the next page of results.
1410
1707
  #
1411
1708
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1412
- # information, see [Grant cross-account permissions to a role and a user
1413
- # name][1] in the *Amazon Simple Queue Service Developer Guide*.
1709
+ # information, see [Grant cross-account permissions to a role and a
1710
+ # username][1] in the *Amazon SQS Developer Guide*.
1414
1711
  #
1415
1712
  # </note>
1416
1713
  #
@@ -1462,7 +1759,8 @@ module Aws::SQS
1462
1759
  req.send_request(options)
1463
1760
  end
1464
1761
 
1465
- # Deletes the messages in a queue specified by the `QueueURL` parameter.
1762
+ # Deletes available messages in a queue (including in-flight messages)
1763
+ # specified by the `QueueURL` parameter.
1466
1764
  #
1467
1765
  # When you use the `PurgeQueue` action, you can't retrieve any messages
1468
1766
  # deleted from a queue.
@@ -1501,8 +1799,8 @@ module Aws::SQS
1501
1799
 
1502
1800
  # Retrieves one or more messages (up to 10), from the specified queue.
1503
1801
  # Using the `WaitTimeSeconds` parameter enables long-poll support. For
1504
- # more information, see [Amazon SQS Long Polling][1] in the *Amazon
1505
- # Simple Queue Service Developer Guide*.
1802
+ # more information, see [Amazon SQS Long Polling][1] in the *Amazon SQS
1803
+ # Developer Guide*.
1506
1804
  #
1507
1805
  # Short poll is the default behavior where a weighted random set of
1508
1806
  # machines is sampled on a `ReceiveMessage` call. Thus, only the
@@ -1530,14 +1828,14 @@ module Aws::SQS
1530
1828
  #
1531
1829
  # The receipt handle is the identifier you must provide when deleting
1532
1830
  # the message. For more information, see [Queue and Message
1533
- # Identifiers][3] in the *Amazon Simple Queue Service Developer Guide*.
1831
+ # Identifiers][3] in the *Amazon SQS Developer Guide*.
1534
1832
  #
1535
1833
  # You can provide the `VisibilityTimeout` parameter in your request. The
1536
1834
  # parameter is applied to the messages that Amazon SQS returns in the
1537
1835
  # response. If you don't include the parameter, the overall visibility
1538
1836
  # timeout for the queue is used for the returned messages. For more
1539
- # information, see [Visibility Timeout][4] in the *Amazon Simple Queue
1540
- # Service Developer Guide*.
1837
+ # information, see [Visibility Timeout][4] in the *Amazon SQS Developer
1838
+ # Guide*.
1541
1839
  #
1542
1840
  # A message that isn't deleted or a message whose visibility isn't
1543
1841
  # extended before the visibility timeout expires counts as a failed
@@ -1563,6 +1861,10 @@ module Aws::SQS
1563
1861
  # Queue URLs and names are case-sensitive.
1564
1862
  #
1565
1863
  # @option params [Array<String>] :attribute_names
1864
+ # This parameter has been deprecated but will be supported for backward
1865
+ # compatibility. To provide attribute names, you are encouraged to use
1866
+ # `MessageSystemAttributeNames`.
1867
+ #
1566
1868
  # A list of attributes that need to be returned along with each message.
1567
1869
  # These attributes include:
1568
1870
  #
@@ -1574,11 +1876,11 @@ module Aws::SQS
1574
1876
  # * `ApproximateReceiveCount` – Returns the number of times a message
1575
1877
  # has been received across all queues but not deleted.
1576
1878
  #
1577
- # * `AWSTraceHeader` – Returns the AWS X-Ray trace header string.
1879
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1578
1880
  #
1579
1881
  # * `SenderId`
1580
1882
  #
1581
- # * For an IAM user, returns the IAM user ID, for example
1883
+ # * For a user, returns the user ID, for example
1582
1884
  # `ABCDEFGHI1JKLMNOPQ23R`.
1583
1885
  #
1584
1886
  # * For an IAM role, returns the IAM role ID, for example
@@ -1587,6 +1889,10 @@ module Aws::SQS
1587
1889
  # * `SentTimestamp` – Returns the time the message was sent to the queue
1588
1890
  # ([epoch time][1] in milliseconds).
1589
1891
  #
1892
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption using
1893
+ # SQS owned encryption keys. Only one server-side encryption option is
1894
+ # supported per queue (for example, [SSE-KMS][2] or [SSE-SQS][3]).
1895
+ #
1590
1896
  # * `MessageDeduplicationId` – Returns the value provided by the
1591
1897
  # producer that calls the ` SendMessage ` action.
1592
1898
  #
@@ -1599,6 +1905,52 @@ module Aws::SQS
1599
1905
  #
1600
1906
  #
1601
1907
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1908
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1909
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1910
+ #
1911
+ # @option params [Array<String>] :message_system_attribute_names
1912
+ # A list of attributes that need to be returned along with each message.
1913
+ # These attributes include:
1914
+ #
1915
+ # * `All` – Returns all values.
1916
+ #
1917
+ # * `ApproximateFirstReceiveTimestamp` – Returns the time the message
1918
+ # was first received from the queue ([epoch time][1] in milliseconds).
1919
+ #
1920
+ # * `ApproximateReceiveCount` – Returns the number of times a message
1921
+ # has been received across all queues but not deleted.
1922
+ #
1923
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1924
+ #
1925
+ # * `SenderId`
1926
+ #
1927
+ # * For a user, returns the user ID, for example
1928
+ # `ABCDEFGHI1JKLMNOPQ23R`.
1929
+ #
1930
+ # * For an IAM role, returns the IAM role ID, for example
1931
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1932
+ #
1933
+ # * `SentTimestamp` – Returns the time the message was sent to the queue
1934
+ # ([epoch time][1] in milliseconds).
1935
+ #
1936
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption using
1937
+ # SQS owned encryption keys. Only one server-side encryption option is
1938
+ # supported per queue (for example, [SSE-KMS][2] or [SSE-SQS][3]).
1939
+ #
1940
+ # * `MessageDeduplicationId` – Returns the value provided by the
1941
+ # producer that calls the ` SendMessage ` action.
1942
+ #
1943
+ # * `MessageGroupId` – Returns the value provided by the producer that
1944
+ # calls the ` SendMessage ` action. Messages with the same
1945
+ # `MessageGroupId` are returned in sequence.
1946
+ #
1947
+ # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1948
+ #
1949
+ #
1950
+ #
1951
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
1952
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1953
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1602
1954
  #
1603
1955
  # @option params [Array<String>] :message_attribute_names
1604
1956
  # The name of the message attribute, where *N* is the index.
@@ -1636,8 +1988,8 @@ module Aws::SQS
1636
1988
  # The duration (in seconds) for which the call waits for a message to
1637
1989
  # arrive in the queue before returning. If a message is available, the
1638
1990
  # call returns sooner than `WaitTimeSeconds`. If no messages are
1639
- # available and the wait time expires, the call returns successfully
1640
- # with an empty list of messages.
1991
+ # available and the wait time expires, the call does not return a
1992
+ # message list.
1641
1993
  #
1642
1994
  # To avoid HTTP errors, ensure that the HTTP response timeout for
1643
1995
  # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
@@ -1666,10 +2018,6 @@ module Aws::SQS
1666
2018
  # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1667
2019
  # can provide a `ReceiveRequestAttemptId` explicitly.
1668
2020
  #
1669
- # * If a caller of the `ReceiveMessage` action doesn't provide a
1670
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
1671
- # `ReceiveRequestAttemptId`.
1672
- #
1673
2021
  # * It is possible to retry the `ReceiveMessage` action with the same
1674
2022
  # `ReceiveRequestAttemptId` if none of the messages have been modified
1675
2023
  # (deleted or had their visibility changes).
@@ -1678,7 +2026,7 @@ module Aws::SQS
1678
2026
  # `ReceiveRequestAttemptId` return the same messages and receipt
1679
2027
  # handles. If a retry occurs within the deduplication interval, it
1680
2028
  # resets the visibility timeout. For more information, see [Visibility
1681
- # Timeout][1] in the *Amazon Simple Queue Service Developer Guide*.
2029
+ # Timeout][1] in the *Amazon SQS Developer Guide*.
1682
2030
  #
1683
2031
  # If a caller of the `ReceiveMessage` action still processes messages
1684
2032
  # when the visibility timeout expires and messages become visible,
@@ -1707,8 +2055,8 @@ module Aws::SQS
1707
2055
  # ``).
1708
2056
  #
1709
2057
  # For best practices of using `ReceiveRequestAttemptId`, see [Using the
1710
- # ReceiveRequestAttemptId Request Parameter][2] in the *Amazon Simple
1711
- # Queue Service Developer Guide*.
2058
+ # ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
2059
+ # Developer Guide*.
1712
2060
  #
1713
2061
  #
1714
2062
  #
@@ -1723,7 +2071,8 @@ module Aws::SQS
1723
2071
  #
1724
2072
  # resp = client.receive_message({
1725
2073
  # queue_url: "String", # required
1726
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds, DeduplicationScope, FifoThroughputLimit
2074
+ # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds, DeduplicationScope, FifoThroughputLimit, RedriveAllowPolicy, SqsManagedSseEnabled
2075
+ # message_system_attribute_names: ["All"], # accepts All, SenderId, SentTimestamp, ApproximateReceiveCount, ApproximateFirstReceiveTimestamp, SequenceNumber, MessageDeduplicationId, MessageGroupId, AWSTraceHeader, DeadLetterQueueSourceArn
1727
2076
  # message_attribute_names: ["MessageAttributeName"],
1728
2077
  # max_number_of_messages: 1,
1729
2078
  # visibility_timeout: 1,
@@ -1766,7 +2115,7 @@ module Aws::SQS
1766
2115
  #
1767
2116
  # * Cross-account permissions don't apply to this action. For more
1768
2117
  # information, see [Grant cross-account permissions to a role and a
1769
- # user name][1] in the *Amazon Simple Queue Service Developer Guide*.
2118
+ # username][1] in the *Amazon SQS Developer Guide*.
1770
2119
  #
1771
2120
  # * To remove the ability to change queue permissions, you must deny
1772
2121
  # permission to the `AddPermission`, `RemovePermission`, and
@@ -1808,13 +2157,17 @@ module Aws::SQS
1808
2157
  # Delivers a message to the specified queue.
1809
2158
  #
1810
2159
  # A message can include only XML, JSON, and unformatted text. The
1811
- # following Unicode characters are allowed:
2160
+ # following Unicode characters are allowed. For more information, see
2161
+ # the [W3C specification for characters][1].
1812
2162
  #
1813
2163
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to `#xFFFD`
1814
2164
  # \| `#x10000` to `#x10FFFF`
1815
2165
  #
1816
- # Any characters not included in this list will be rejected. For more
1817
- # information, see the [W3C specification for characters][1].
2166
+ # Amazon SQS does not throw an exception or completely reject the
2167
+ # message if it contains invalid characters. Instead, it replaces those
2168
+ # invalid characters with `U+FFFD` before storing the message in the
2169
+ # queue, as long as the message body contains at least one valid
2170
+ # character.
1818
2171
  #
1819
2172
  #
1820
2173
  #
@@ -1827,16 +2180,20 @@ module Aws::SQS
1827
2180
  #
1828
2181
  # @option params [required, String] :message_body
1829
2182
  # The message to send. The minimum size is one character. The maximum
1830
- # size is 256 KB.
2183
+ # size is 256 KiB.
1831
2184
  #
1832
2185
  # A message can include only XML, JSON, and unformatted text. The
1833
- # following Unicode characters are allowed:
2186
+ # following Unicode characters are allowed. For more information, see
2187
+ # the [W3C specification for characters][1].
1834
2188
  #
1835
2189
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to `#xFFFD`
1836
2190
  # \| `#x10000` to `#x10FFFF`
1837
2191
  #
1838
- # Any characters not included in this list will be rejected. For more
1839
- # information, see the [W3C specification for characters][1].
2192
+ # Amazon SQS does not throw an exception or completely reject the
2193
+ # message if it contains invalid characters. Instead, it replaces those
2194
+ # invalid characters with `U+FFFD` before storing the message in the
2195
+ # queue, as long as the message body contains at least one valid
2196
+ # character.
1840
2197
  #
1841
2198
  #
1842
2199
  #
@@ -1856,8 +2213,8 @@ module Aws::SQS
1856
2213
  #
1857
2214
  # @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
1858
2215
  # Each message attribute consists of a `Name`, `Type`, and `Value`. For
1859
- # more information, see [Amazon SQS Message Attributes][1] in the
1860
- # *Amazon Simple Queue Service Developer Guide*.
2216
+ # more information, see [Amazon SQS message attributes][1] in the
2217
+ # *Amazon SQS Developer Guide*.
1861
2218
  #
1862
2219
  #
1863
2220
  #
@@ -1869,7 +2226,7 @@ module Aws::SQS
1869
2226
  #
1870
2227
  # * Currently, the only supported message system attribute is
1871
2228
  # `AWSTraceHeader`. Its type must be `String` and its value must be a
1872
- # correctly formatted AWS X-Ray trace header string.
2229
+ # correctly formatted X-Ray trace header string.
1873
2230
  #
1874
2231
  # * The size of a message system attribute doesn't count towards the
1875
2232
  # total size of a message.
@@ -1881,8 +2238,8 @@ module Aws::SQS
1881
2238
  # particular `MessageDeduplicationId` is sent successfully, any messages
1882
2239
  # sent with the same `MessageDeduplicationId` are accepted successfully
1883
2240
  # but aren't delivered during the 5-minute deduplication interval. For
1884
- # more information, see [ Exactly-once processing][1] in the *Amazon
1885
- # Simple Queue Service Developer Guide*.
2241
+ # more information, see [ Exactly-once processing][1] in the *Amazon SQS
2242
+ # Developer Guide*.
1886
2243
  #
1887
2244
  # * Every message must have a unique `MessageDeduplicationId`,
1888
2245
  #
@@ -1928,8 +2285,8 @@ module Aws::SQS
1928
2285
  # ``).
1929
2286
  #
1930
2287
  # For best practices of using `MessageDeduplicationId`, see [Using the
1931
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1932
- # Service Developer Guide*.
2288
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2289
+ # Guide*.
1933
2290
  #
1934
2291
  #
1935
2292
  #
@@ -1955,13 +2312,12 @@ module Aws::SQS
1955
2312
  # `MessageGroupId` values. For each `MessageGroupId`, the messages are
1956
2313
  # sorted by time sent. The caller can't specify a `MessageGroupId`.
1957
2314
  #
1958
- # The length of `MessageGroupId` is 128 characters. Valid values:
1959
- # alphanumeric characters and punctuation ``
2315
+ # The maximum length of `MessageGroupId` is 128 characters. Valid
2316
+ # values: alphanumeric characters and punctuation ``
1960
2317
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1961
2318
  #
1962
2319
  # For best practices of using `MessageGroupId`, see [Using the
1963
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1964
- # Developer Guide*.
2320
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1965
2321
  #
1966
2322
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1967
2323
  # Standard queues.
@@ -2023,7 +2379,9 @@ module Aws::SQS
2023
2379
  req.send_request(options)
2024
2380
  end
2025
2381
 
2026
- # Delivers up to ten messages to the specified queue. This is a batch
2382
+ # You can use `SendMessageBatch` to send up to 10 messages to the
2383
+ # specified queue by assigning either identical or different values to
2384
+ # each message (or by not assigning values at all). This is a batch
2027
2385
  # version of ` SendMessage.` For a FIFO queue, multiple messages within
2028
2386
  # a single batch are enqueued in the order they are sent.
2029
2387
  #
@@ -2034,28 +2392,24 @@ module Aws::SQS
2034
2392
  #
2035
2393
  # The maximum allowed individual message size and the maximum total
2036
2394
  # payload size (the sum of the individual lengths of all of the batched
2037
- # messages) are both 256 KB (262,144 bytes).
2395
+ # messages) are both 256 KiB (262,144 bytes).
2038
2396
  #
2039
2397
  # A message can include only XML, JSON, and unformatted text. The
2040
- # following Unicode characters are allowed:
2398
+ # following Unicode characters are allowed. For more information, see
2399
+ # the [W3C specification for characters][1].
2041
2400
  #
2042
2401
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to `#xFFFD`
2043
2402
  # \| `#x10000` to `#x10FFFF`
2044
2403
  #
2045
- # Any characters not included in this list will be rejected. For more
2046
- # information, see the [W3C specification for characters][1].
2404
+ # Amazon SQS does not throw an exception or completely reject the
2405
+ # message if it contains invalid characters. Instead, it replaces those
2406
+ # invalid characters with `U+FFFD` before storing the message in the
2407
+ # queue, as long as the message body contains at least one valid
2408
+ # character.
2047
2409
  #
2048
2410
  # If you don't specify the `DelaySeconds` parameter for an entry,
2049
2411
  # Amazon SQS uses the default value for the queue.
2050
2412
  #
2051
- # Some actions take lists of parameters. These lists are specified using
2052
- # the `param.n` notation. Values of `n` are integers starting from 1.
2053
- # For example, a parameter list with two elements looks like this:
2054
- #
2055
- # `&AttributeName.1=first`
2056
- #
2057
- # `&AttributeName.2=second`
2058
- #
2059
2413
  #
2060
2414
  #
2061
2415
  # [1]: http://www.w3.org/TR/REC-xml/#charsets
@@ -2130,11 +2484,14 @@ module Aws::SQS
2130
2484
  req.send_request(options)
2131
2485
  end
2132
2486
 
2133
- # Sets the value of one or more queue attributes. When you change a
2134
- # queue's attributes, the change can take up to 60 seconds for most of
2135
- # the attributes to propagate throughout the Amazon SQS system. Changes
2136
- # made to the `MessageRetentionPeriod` attribute can take up to 15
2137
- # minutes.
2487
+ # Sets the value of one or more queue attributes, like a policy. When
2488
+ # you change a queue's attributes, the change can take up to 60 seconds
2489
+ # for most of the attributes to propagate throughout the Amazon SQS
2490
+ # system. Changes made to the `MessageRetentionPeriod` attribute can
2491
+ # take up to 15 minutes and will impact existing messages in the queue
2492
+ # potentially causing them to be expired and deleted if the
2493
+ # `MessageRetentionPeriod` is reduced below the age of existing
2494
+ # messages.
2138
2495
  #
2139
2496
  # <note markdown="1"> * In the future, new attributes might be added. If you write code that
2140
2497
  # calls this action, we recommend that you structure your code so that
@@ -2142,7 +2499,7 @@ module Aws::SQS
2142
2499
  #
2143
2500
  # * Cross-account permissions don't apply to this action. For more
2144
2501
  # information, see [Grant cross-account permissions to a role and a
2145
- # user name][1] in the *Amazon Simple Queue Service Developer Guide*.
2502
+ # username][1] in the *Amazon SQS Developer Guide*.
2146
2503
  #
2147
2504
  # * To remove the ability to change queue permissions, you must deny
2148
2505
  # permission to the `AddPermission`, `RemovePermission`, and
@@ -2177,67 +2534,105 @@ module Aws::SQS
2177
2534
  # * `MessageRetentionPeriod` – The length of time, in seconds, for which
2178
2535
  # Amazon SQS retains a message. Valid values: An integer representing
2179
2536
  # seconds, from 60 (1 minute) to 1,209,600 (14 days). Default: 345,600
2180
- # (4 days).
2181
- #
2182
- # * `Policy` The queue's policy. A valid AWS policy. For more
2183
- # information about policy structure, see [Overview of AWS IAM
2184
- # Policies][1] in the *Amazon IAM User Guide*.
2537
+ # (4 days). When you change a queue's attributes, the change can take
2538
+ # up to 60 seconds for most of the attributes to propagate throughout
2539
+ # the Amazon SQS system. Changes made to the `MessageRetentionPeriod`
2540
+ # attribute can take up to 15 minutes and will impact existing
2541
+ # messages in the queue potentially causing them to be expired and
2542
+ # deleted if the `MessageRetentionPeriod` is reduced below the age of
2543
+ # existing messages.
2544
+ #
2545
+ # * `Policy` – The queue's policy. A valid Amazon Web Services policy.
2546
+ # For more information about policy structure, see [Overview of Amazon
2547
+ # Web Services IAM Policies][1] in the *Identity and Access Management
2548
+ # User Guide*.
2185
2549
  #
2186
2550
  # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
2187
2551
  # for which a ` ReceiveMessage ` action waits for a message to arrive.
2188
2552
  # Valid values: An integer from 0 to 20 (seconds). Default: 0.
2189
2553
  #
2554
+ # * `VisibilityTimeout` – The visibility timeout for the queue, in
2555
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2556
+ # Default: 30. For more information about the visibility timeout, see
2557
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
2558
+ #
2559
+ # The following attributes apply only to [dead-letter queues:][3]
2560
+ #
2190
2561
  # * `RedrivePolicy` – The string that includes the parameters for the
2191
2562
  # dead-letter queue functionality of the source queue as a JSON
2192
- # object. For more information about the redrive policy and
2193
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2] in
2194
- # the *Amazon Simple Queue Service Developer Guide*.
2563
+ # object. The parameters are as follows:
2195
2564
  #
2196
2565
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
2197
2566
  # dead-letter queue to which Amazon SQS moves messages after the
2198
2567
  # value of `maxReceiveCount` is exceeded.
2199
2568
  #
2200
2569
  # * `maxReceiveCount` – The number of times a message is delivered to
2201
- # the source queue before being moved to the dead-letter queue. When
2202
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
2203
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
2204
- #
2205
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2206
- # Similarly, the dead-letter queue of a standard queue must also be a
2207
- # standard queue.
2208
- #
2209
- # </note>
2570
+ # the source queue before being moved to the dead-letter queue.
2571
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
2572
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
2573
+ # dead-letter-queue.
2574
+ #
2575
+ # * `RedriveAllowPolicy` The string that includes the parameters for
2576
+ # the permissions for the dead-letter queue redrive permission and
2577
+ # which source queues can specify dead-letter queues as a JSON object.
2578
+ # The parameters are as follows:
2579
+ #
2580
+ # * `redrivePermission` – The permission type that defines which
2581
+ # source queues can specify the current queue as the dead-letter
2582
+ # queue. Valid values are:
2583
+ #
2584
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
2585
+ # Services account in the same Region can specify this queue as
2586
+ # the dead-letter queue.
2587
+ #
2588
+ # * `denyAll` – No source queues can specify this queue as the
2589
+ # dead-letter queue.
2590
+ #
2591
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
2592
+ # parameter can specify this queue as the dead-letter queue.
2593
+ #
2594
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the source
2595
+ # queues that can specify this queue as the dead-letter queue and
2596
+ # redrive messages. You can specify this parameter only when the
2597
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
2598
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
2599
+ # specify dead-letter queues, set the `redrivePermission` parameter
2600
+ # to `allowAll`.
2601
+ #
2602
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2603
+ # Similarly, the dead-letter queue of a standard queue must also be a
2604
+ # standard queue.
2210
2605
  #
2211
- # * `VisibilityTimeout` – The visibility timeout for the queue, in
2212
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2213
- # Default: 30. For more information about the visibility timeout, see
2214
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
2215
- # Developer Guide*.
2606
+ # </note>
2216
2607
  #
2217
- # The following attributes apply only to [server-side-encryption][4]\:
2608
+ # The following attributes apply only to [server-side-encryption][4]:
2218
2609
  #
2219
- # * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
2220
- # (CMK) for Amazon SQS or a custom CMK. For more information, see [Key
2221
- # Terms][5]. While the alias of the AWS-managed CMK for Amazon SQS is
2222
- # always `alias/aws/sqs`, the alias of a custom CMK can, for example,
2223
- # be `alias/MyAlias `. For more examples, see [KeyId][6] in the *AWS
2224
- # Key Management Service API Reference*.
2610
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed customer
2611
+ # master key (CMK) for Amazon SQS or a custom CMK. For more
2612
+ # information, see [Key Terms][5]. While the alias of the AWS-managed
2613
+ # CMK for Amazon SQS is always `alias/aws/sqs`, the alias of a custom
2614
+ # CMK can, for example, be `alias/MyAlias `. For more examples, see
2615
+ # [KeyId][6] in the *Key Management Service API Reference*.
2225
2616
  #
2226
2617
  # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds, for
2227
2618
  # which Amazon SQS can reuse a [data key][7] to encrypt or decrypt
2228
- # messages before calling AWS KMS again. An integer representing
2229
- # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
2230
- # hours). Default: 300 (5 minutes). A shorter time period provides
2231
- # better security but results in more calls to KMS which might incur
2232
- # charges after Free Tier. For more information, see [How Does the
2233
- # Data Key Reuse Period Work?][8].
2619
+ # messages before calling KMS again. An integer representing seconds,
2620
+ # between 60 seconds (1 minute) and 86,400 seconds (24 hours).
2621
+ # Default: 300 (5 minutes). A shorter time period provides better
2622
+ # security but results in more calls to KMS which might incur charges
2623
+ # after Free Tier. For more information, see [How Does the Data Key
2624
+ # Reuse Period Work?][8].
2625
+ #
2626
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption using
2627
+ # SQS owned encryption keys. Only one server-side encryption option is
2628
+ # supported per queue (for example, [SSE-KMS][9] or [SSE-SQS][10]).
2234
2629
  #
2235
2630
  # The following attribute applies only to [FIFO (first-in-first-out)
2236
- # queues][9]\:
2631
+ # queues][11]:
2237
2632
  #
2238
2633
  # * `ContentBasedDeduplication` – Enables content-based deduplication.
2239
- # For more information, see [Exactly-once processing][10] in the
2240
- # *Amazon Simple Queue Service Developer Guide*. Note the following:
2634
+ # For more information, see [Exactly-once processing][12] in the
2635
+ # *Amazon SQS Developer Guide*. Note the following:
2241
2636
  #
2242
2637
  # * Every message must have a unique `MessageDeduplicationId`.
2243
2638
  #
@@ -2268,7 +2663,7 @@ module Aws::SQS
2268
2663
  # duplicates and only one copy of the message is delivered.
2269
2664
  #
2270
2665
  # The following attributes apply only to [high throughput for FIFO
2271
- # queues][11]\:
2666
+ # queues][13]:
2272
2667
  #
2273
2668
  # * `DeduplicationScope` – Specifies whether message deduplication
2274
2669
  # occurs at the message group or queue level. Valid values are
@@ -2291,22 +2686,24 @@ module Aws::SQS
2291
2686
  # deduplication occurs as specified.
2292
2687
  #
2293
2688
  # For information on throughput quotas, see [Quotas related to
2294
- # messages][12] in the *Amazon Simple Queue Service Developer Guide*.
2689
+ # messages][14] in the *Amazon SQS Developer Guide*.
2295
2690
  #
2296
2691
  #
2297
2692
  #
2298
2693
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
2299
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2300
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2694
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2695
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2301
2696
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
2302
2697
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
2303
2698
  # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2304
2699
  # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
2305
2700
  # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
2306
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2307
- # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2308
- # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2309
- # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
2701
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
2702
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
2703
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2704
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2705
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2706
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
2310
2707
  #
2311
2708
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2312
2709
  #
@@ -2328,9 +2725,78 @@ module Aws::SQS
2328
2725
  req.send_request(options)
2329
2726
  end
2330
2727
 
2728
+ # Starts an asynchronous task to move messages from a specified source
2729
+ # queue to a specified destination queue.
2730
+ #
2731
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
2732
+ # queues that are configured as [dead-letter queues (DLQs)][1] of
2733
+ # other Amazon SQS queues only. Non-SQS queue sources of dead-letter
2734
+ # queues, such as Lambda or Amazon SNS topics, are currently not
2735
+ # supported.
2736
+ #
2737
+ # * In dead-letter queues redrive context, the `StartMessageMoveTask`
2738
+ # the source queue is the DLQ, while the destination queue can be the
2739
+ # original source queue (from which the messages were driven to the
2740
+ # dead-letter-queue), or a custom destination queue.
2741
+ #
2742
+ # * Only one active message movement task is supported per queue at any
2743
+ # given time.
2744
+ #
2745
+ # </note>
2746
+ #
2747
+ #
2748
+ #
2749
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2750
+ #
2751
+ # @option params [required, String] :source_arn
2752
+ # The ARN of the queue that contains the messages to be moved to another
2753
+ # queue. Currently, only ARNs of dead-letter queues (DLQs) whose sources
2754
+ # are other Amazon SQS queues are accepted. DLQs whose sources are
2755
+ # non-SQS queues, such as Lambda or Amazon SNS topics, are not currently
2756
+ # supported.
2757
+ #
2758
+ # @option params [String] :destination_arn
2759
+ # The ARN of the queue that receives the moved messages. You can use
2760
+ # this field to specify the destination queue where you would like to
2761
+ # redrive messages. If this field is left blank, the messages will be
2762
+ # redriven back to their respective original source queues.
2763
+ #
2764
+ # @option params [Integer] :max_number_of_messages_per_second
2765
+ # The number of messages to be moved per second (the message movement
2766
+ # rate). You can use this field to define a fixed message movement rate.
2767
+ # The maximum value for messages per second is 500. If this field is
2768
+ # left blank, the system will optimize the rate based on the queue
2769
+ # message backlog size, which may vary throughout the duration of the
2770
+ # message movement task.
2771
+ #
2772
+ # @return [Types::StartMessageMoveTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2773
+ #
2774
+ # * {Types::StartMessageMoveTaskResult#task_handle #task_handle} => String
2775
+ #
2776
+ # @example Request syntax with placeholder values
2777
+ #
2778
+ # resp = client.start_message_move_task({
2779
+ # source_arn: "String", # required
2780
+ # destination_arn: "String",
2781
+ # max_number_of_messages_per_second: 1,
2782
+ # })
2783
+ #
2784
+ # @example Response structure
2785
+ #
2786
+ # resp.task_handle #=> String
2787
+ #
2788
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTask AWS API Documentation
2789
+ #
2790
+ # @overload start_message_move_task(params = {})
2791
+ # @param [Hash] params ({})
2792
+ def start_message_move_task(params = {}, options = {})
2793
+ req = build_request(:start_message_move_task, params)
2794
+ req.send_request(options)
2795
+ end
2796
+
2331
2797
  # Add cost allocation tags to the specified Amazon SQS queue. For an
2332
- # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
2333
- # Simple Queue Service Developer Guide*.
2798
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
2799
+ # Developer Guide*.
2334
2800
  #
2335
2801
  # When you use queue tags, keep the following guidelines in mind:
2336
2802
  #
@@ -2344,12 +2810,12 @@ module Aws::SQS
2344
2810
  # * A new tag with a key identical to that of an existing tag overwrites
2345
2811
  # the existing tag.
2346
2812
  #
2347
- # For a full list of tag restrictions, see [Limits Related to Queues][2]
2348
- # in the *Amazon Simple Queue Service Developer Guide*.
2813
+ # For a full list of tag restrictions, see [Quotas related to queues][2]
2814
+ # in the *Amazon SQS Developer Guide*.
2349
2815
  #
2350
2816
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
2351
- # information, see [Grant cross-account permissions to a role and a user
2352
- # name][3] in the *Amazon Simple Queue Service Developer Guide*.
2817
+ # information, see [Grant cross-account permissions to a role and a
2818
+ # username][3] in the *Amazon SQS Developer Guide*.
2353
2819
  #
2354
2820
  # </note>
2355
2821
  #
@@ -2387,11 +2853,11 @@ module Aws::SQS
2387
2853
 
2388
2854
  # Remove cost allocation tags from the specified Amazon SQS queue. For
2389
2855
  # an overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
2390
- # Simple Queue Service Developer Guide*.
2856
+ # SQS Developer Guide*.
2391
2857
  #
2392
2858
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
2393
- # information, see [Grant cross-account permissions to a role and a user
2394
- # name][2] in the *Amazon Simple Queue Service Developer Guide*.
2859
+ # information, see [Grant cross-account permissions to a role and a
2860
+ # username][2] in the *Amazon SQS Developer Guide*.
2395
2861
  #
2396
2862
  # </note>
2397
2863
  #
@@ -2430,14 +2896,19 @@ module Aws::SQS
2430
2896
  # @api private
2431
2897
  def build_request(operation_name, params = {})
2432
2898
  handlers = @handlers.for(operation_name)
2899
+ tracer = config.telemetry_provider.tracer_provider.tracer(
2900
+ Aws::Telemetry.module_to_tracer_name('Aws::SQS')
2901
+ )
2433
2902
  context = Seahorse::Client::RequestContext.new(
2434
2903
  operation_name: operation_name,
2435
2904
  operation: config.api.operation(operation_name),
2436
2905
  client: self,
2437
2906
  params: params,
2438
- config: config)
2907
+ config: config,
2908
+ tracer: tracer
2909
+ )
2439
2910
  context[:gem_name] = 'aws-sdk-sqs'
2440
- context[:gem_version] = '1.39.0'
2911
+ context[:gem_version] = '1.86.0'
2441
2912
  Seahorse::Client::Request.new(handlers, context)
2442
2913
  end
2443
2914