aws-sdk-sqs 1.39.0 → 1.86.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,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