aws-sdk-sqs 1.9.0 → 1.70.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,9 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
4
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
@@ -15,20 +17,40 @@ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
17
  require 'aws-sdk-core/plugins/retry_errors.rb'
16
18
  require 'aws-sdk-core/plugins/global_configuration.rb'
17
19
  require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
18
22
  require 'aws-sdk-core/plugins/response_paging.rb'
19
23
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
24
  require 'aws-sdk-core/plugins/idempotency_token.rb'
21
25
  require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
22
26
  require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
23
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
24
- require 'aws-sdk-core/plugins/signature_v4.rb'
25
- require 'aws-sdk-core/plugins/protocols/query.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/checksum_algorithm.rb'
31
+ require 'aws-sdk-core/plugins/request_compression.rb'
32
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
33
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
34
+ require 'aws-sdk-core/plugins/sign.rb'
35
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
26
36
  require 'aws-sdk-sqs/plugins/queue_urls.rb'
27
37
  require 'aws-sdk-sqs/plugins/md5s.rb'
28
38
 
29
39
  Aws::Plugins::GlobalConfiguration.add_identifier(:sqs)
30
40
 
31
41
  module Aws::SQS
42
+ # An API client for SQS. To construct a client, you need to configure a `:region` and `:credentials`.
43
+ #
44
+ # client = Aws::SQS::Client.new(
45
+ # region: region_name,
46
+ # credentials: credentials,
47
+ # # ...
48
+ # )
49
+ #
50
+ # For details on configuring region and credentials see
51
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
52
+ #
53
+ # See {#initialize} for a full list of supported configuration options.
32
54
  class Client < Seahorse::Client::Base
33
55
 
34
56
  include Aws::ClientStubs
@@ -47,16 +69,25 @@ module Aws::SQS
47
69
  add_plugin(Aws::Plugins::RetryErrors)
48
70
  add_plugin(Aws::Plugins::GlobalConfiguration)
49
71
  add_plugin(Aws::Plugins::RegionalEndpoint)
72
+ add_plugin(Aws::Plugins::EndpointDiscovery)
73
+ add_plugin(Aws::Plugins::EndpointPattern)
50
74
  add_plugin(Aws::Plugins::ResponsePaging)
51
75
  add_plugin(Aws::Plugins::StubResponses)
52
76
  add_plugin(Aws::Plugins::IdempotencyToken)
53
77
  add_plugin(Aws::Plugins::JsonvalueConverter)
54
78
  add_plugin(Aws::Plugins::ClientMetricsPlugin)
55
79
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
56
- add_plugin(Aws::Plugins::SignatureV4)
57
- add_plugin(Aws::Plugins::Protocols::Query)
80
+ add_plugin(Aws::Plugins::TransferEncoding)
81
+ add_plugin(Aws::Plugins::HttpChecksum)
82
+ add_plugin(Aws::Plugins::ChecksumAlgorithm)
83
+ add_plugin(Aws::Plugins::RequestCompression)
84
+ add_plugin(Aws::Plugins::DefaultsMode)
85
+ add_plugin(Aws::Plugins::RecursionDetection)
86
+ add_plugin(Aws::Plugins::Sign)
87
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
58
88
  add_plugin(Aws::SQS::Plugins::QueueUrls)
59
89
  add_plugin(Aws::SQS::Plugins::Md5s)
90
+ add_plugin(Aws::SQS::Plugins::Endpoints)
60
91
 
61
92
  # @overload initialize(options)
62
93
  # @param [Hash] options
@@ -67,13 +98,28 @@ module Aws::SQS
67
98
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
68
99
  # credentials.
69
100
  #
101
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
102
+ # shared file, such as `~/.aws/config`.
103
+ #
104
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
105
+ #
106
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
107
+ # assume a role after providing credentials via the web.
108
+ #
109
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
110
+ # access token generated from `aws login`.
111
+ #
112
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
113
+ # process that outputs to stdout.
114
+ #
70
115
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
71
116
  # from an EC2 IMDS on an EC2 instance.
72
117
  #
73
- # * `Aws::SharedCredentials` - Used for loading credentials from a
74
- # shared file, such as `~/.aws/config`.
118
+ # * `Aws::ECSCredentials` - Used for loading credentials from
119
+ # instances running in ECS.
75
120
  #
76
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
121
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
122
+ # from the Cognito Identity service.
77
123
  #
78
124
  # When `:credentials` are not configured directly, the following
79
125
  # locations will be searched for credentials:
@@ -83,15 +129,17 @@ module Aws::SQS
83
129
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
84
130
  # * `~/.aws/credentials`
85
131
  # * `~/.aws/config`
86
- # * EC2 IMDS instance profile - When used by default, the timeouts are
87
- # very aggressive. Construct and pass an instance of
88
- # `Aws::InstanceProfileCredentails` to enable retries and extended
89
- # timeouts.
132
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
133
+ # are very aggressive. Construct and pass an instance of
134
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
135
+ # enable retries and extended timeouts. Instance profile credential
136
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
137
+ # to true.
90
138
  #
91
139
  # @option options [required, String] :region
92
140
  # The AWS region to connect to. The configured `:region` is
93
141
  # used to determine the service `:endpoint`. When not passed,
94
- # a default `:region` is search for in the following locations:
142
+ # a default `:region` is searched for in the following locations:
95
143
  #
96
144
  # * `Aws.config[:region]`
97
145
  # * `ENV['AWS_REGION']`
@@ -102,6 +150,16 @@ module Aws::SQS
102
150
  #
103
151
  # @option options [String] :access_key_id
104
152
  #
153
+ # @option options [Boolean] :active_endpoint_cache (false)
154
+ # When set to `true`, a thread polling for endpoints will be running in
155
+ # the background every 60 secs (default). Defaults to `false`.
156
+ #
157
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
158
+ # Used only in `adaptive` retry mode. When true, the request will sleep
159
+ # until there is sufficent client side capacity to retry the request.
160
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
161
+ # not retry instead of sleeping.
162
+ #
105
163
  # @option options [Boolean] :client_side_monitoring (false)
106
164
  # When `true`, client-side metrics will be collected for all API requests from
107
165
  # this client.
@@ -110,6 +168,10 @@ module Aws::SQS
110
168
  # Allows you to provide an identifier for this client which will be attached to
111
169
  # all generated client side metrics. Defaults to an empty string.
112
170
  #
171
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
172
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
173
+ # side monitoring agent is running on, where client metrics will be published via UDP.
174
+ #
113
175
  # @option options [Integer] :client_side_monitoring_port (31000)
114
176
  # Required for publishing client metrics. The port that the client side monitoring
115
177
  # agent is running on, where client metrics will be published via UDP.
@@ -122,10 +184,45 @@ module Aws::SQS
122
184
  # When `true`, an attempt is made to coerce request parameters into
123
185
  # the required types.
124
186
  #
187
+ # @option options [Boolean] :correct_clock_skew (true)
188
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
189
+ # a clock skew correction and retry requests with skewed client clocks.
190
+ #
191
+ # @option options [String] :defaults_mode ("legacy")
192
+ # See {Aws::DefaultsModeConfiguration} for a list of the
193
+ # accepted modes and the configuration defaults that are included.
194
+ #
195
+ # @option options [Boolean] :disable_host_prefix_injection (false)
196
+ # Set to true to disable SDK automatically adding host prefix
197
+ # to default service endpoint when available.
198
+ #
199
+ # @option options [Boolean] :disable_request_compression (false)
200
+ # When set to 'true' the request body will not be compressed
201
+ # for supported operations.
202
+ #
125
203
  # @option options [String] :endpoint
126
204
  # The client endpoint is normally constructed from the `:region`
127
205
  # option. You should only configure an `:endpoint` when connecting
128
- # to test endpoints. This should be avalid HTTP(S) URI.
206
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
207
+ #
208
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
209
+ # Used for the maximum size limit of the LRU cache storing endpoints data
210
+ # for endpoint discovery enabled operations. Defaults to 1000.
211
+ #
212
+ # @option options [Integer] :endpoint_cache_max_threads (10)
213
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
214
+ #
215
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
216
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
217
+ # Use this option to config the time interval in seconds for making
218
+ # requests fetching endpoints information. Defaults to 60 sec.
219
+ #
220
+ # @option options [Boolean] :endpoint_discovery (false)
221
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
222
+ #
223
+ # @option options [Boolean] :ignore_configured_endpoint_urls
224
+ # Setting to true disables use of endpoint URLs provided via environment
225
+ # variables and the shared configuration file.
129
226
  #
130
227
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
131
228
  # The log formatter.
@@ -137,15 +234,34 @@ module Aws::SQS
137
234
  # The Logger instance to send log messages to. If this option
138
235
  # is not set, logging will be disabled.
139
236
  #
237
+ # @option options [Integer] :max_attempts (3)
238
+ # An integer representing the maximum number attempts that will be made for
239
+ # a single request, including the initial attempt. For example,
240
+ # setting this value to 5 will result in a request being retried up to
241
+ # 4 times. Used in `standard` and `adaptive` retry modes.
242
+ #
140
243
  # @option options [String] :profile ("default")
141
244
  # Used when loading credentials from the shared credentials file
142
245
  # at HOME/.aws/credentials. When not specified, 'default' is used.
143
246
  #
247
+ # @option options [Integer] :request_min_compression_size_bytes (10240)
248
+ # The minimum size in bytes that triggers compression for request
249
+ # bodies. The value must be non-negative integer value between 0
250
+ # and 10485780 bytes inclusive.
251
+ #
252
+ # @option options [Proc] :retry_backoff
253
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
254
+ # This option is only used in the `legacy` retry mode.
255
+ #
144
256
  # @option options [Float] :retry_base_delay (0.3)
145
- # The base delay in seconds used by the default backoff function.
257
+ # The base delay in seconds used by the default backoff function. This option
258
+ # is only used in the `legacy` retry mode.
146
259
  #
147
260
  # @option options [Symbol] :retry_jitter (:none)
148
- # A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number.
261
+ # A delay randomiser function used by the default backoff function.
262
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
263
+ # otherwise a Proc that takes and returns a number. This option is only used
264
+ # in the `legacy` retry mode.
149
265
  #
150
266
  # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
151
267
  #
@@ -153,16 +269,50 @@ module Aws::SQS
153
269
  # The maximum number of times to retry failed requests. Only
154
270
  # ~ 500 level server errors and certain ~ 400 level client errors
155
271
  # are retried. Generally, these are throttling errors, data
156
- # checksum errors, networking errors, timeout errors and auth
157
- # errors from expired credentials.
272
+ # checksum errors, networking errors, timeout errors, auth errors,
273
+ # endpoint discovery, and errors from expired credentials.
274
+ # This option is only used in the `legacy` retry mode.
158
275
  #
159
276
  # @option options [Integer] :retry_max_delay (0)
160
- # The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function.
277
+ # The maximum number of seconds to delay between retries (0 for no limit)
278
+ # used by the default backoff function. This option is only used in the
279
+ # `legacy` retry mode.
280
+ #
281
+ # @option options [String] :retry_mode ("legacy")
282
+ # Specifies which retry algorithm to use. Values are:
283
+ #
284
+ # * `legacy` - The pre-existing retry behavior. This is default value if
285
+ # no retry mode is provided.
286
+ #
287
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
288
+ # This includes support for retry quotas, which limit the number of
289
+ # unsuccessful retries a client can make.
290
+ #
291
+ # * `adaptive` - An experimental retry mode that includes all the
292
+ # functionality of `standard` mode along with automatic client side
293
+ # throttling. This is a provisional mode that may change behavior
294
+ # in the future.
295
+ #
296
+ #
297
+ # @option options [String] :sdk_ua_app_id
298
+ # A unique and opaque application ID that is appended to the
299
+ # User-Agent header as app/<sdk_ua_app_id>. It should have a
300
+ # maximum length of 50.
161
301
  #
162
302
  # @option options [String] :secret_access_key
163
303
  #
164
304
  # @option options [String] :session_token
165
305
  #
306
+ # @option options [Boolean] :simple_json (false)
307
+ # Disables request parameter conversion, validation, and formatting.
308
+ # Also disable response data type conversions. This option is useful
309
+ # when you want to ensure the highest level of performance by
310
+ # avoiding overhead of walking request parameters and response data
311
+ # structures.
312
+ #
313
+ # When `:simple_json` is enabled, the request parameters hash must
314
+ # be formatted exactly as the DynamoDB API expects.
315
+ #
166
316
  # @option options [Boolean] :stub_responses (false)
167
317
  # Causes the client to return stubbed responses. By default
168
318
  # fake responses are generated and returned. You can specify
@@ -172,6 +322,28 @@ module Aws::SQS
172
322
  # ** Please note ** When response stubbing is enabled, no HTTP
173
323
  # requests are made, and retries are disabled.
174
324
  #
325
+ # @option options [Aws::TokenProvider] :token_provider
326
+ # A Bearer Token Provider. This can be an instance of any one of the
327
+ # following classes:
328
+ #
329
+ # * `Aws::StaticTokenProvider` - Used for configuring static, non-refreshing
330
+ # tokens.
331
+ #
332
+ # * `Aws::SSOTokenProvider` - Used for loading tokens from AWS SSO using an
333
+ # access token generated from `aws login`.
334
+ #
335
+ # When `:token_provider` is not configured directly, the `Aws::TokenProviderChain`
336
+ # will be used to search for tokens configured for your profile in shared configuration files.
337
+ #
338
+ # @option options [Boolean] :use_dualstack_endpoint
339
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
340
+ # will be used if available.
341
+ #
342
+ # @option options [Boolean] :use_fips_endpoint
343
+ # When set to `true`, fips compatible endpoints will be used if available.
344
+ # When a `fips` region is used, the region is normalized and this config
345
+ # is set to `true`.
346
+ #
175
347
  # @option options [Boolean] :validate_params (true)
176
348
  # When `true`, request parameters are validated before
177
349
  # sending the request.
@@ -182,6 +354,54 @@ module Aws::SQS
182
354
  # `Aws::Errors::Checksum` errors are raised for cases where checksums do
183
355
  # not match.
184
356
  #
357
+ # @option options [Aws::SQS::EndpointProvider] :endpoint_provider
358
+ # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::SQS::EndpointParameters`
359
+ #
360
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
361
+ # requests through. Formatted like 'http://proxy.com:123'.
362
+ #
363
+ # @option options [Float] :http_open_timeout (15) The number of
364
+ # seconds to wait when opening a HTTP session before raising a
365
+ # `Timeout::Error`.
366
+ #
367
+ # @option options [Float] :http_read_timeout (60) The default
368
+ # number of seconds to wait for response data. This value can
369
+ # safely be set per-request on the session.
370
+ #
371
+ # @option options [Float] :http_idle_timeout (5) The number of
372
+ # seconds a connection is allowed to sit idle before it is
373
+ # considered stale. Stale connections are closed and removed
374
+ # from the pool before making a request.
375
+ #
376
+ # @option options [Float] :http_continue_timeout (1) The number of
377
+ # seconds to wait for a 100-continue response before sending the
378
+ # request body. This option has no effect unless the request has
379
+ # "Expect" header set to "100-continue". Defaults to `nil` which
380
+ # disables this behaviour. This value can safely be set per
381
+ # request on the session.
382
+ #
383
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
384
+ # in seconds.
385
+ #
386
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
387
+ # HTTP debug output will be sent to the `:logger`.
388
+ #
389
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
390
+ # SSL peer certificates are verified when establishing a
391
+ # connection.
392
+ #
393
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
394
+ # certificate authority bundle file that should be used when
395
+ # verifying peer certificates. If you do not pass
396
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
397
+ # will be used if available.
398
+ #
399
+ # @option options [String] :ssl_ca_directory Full path of the
400
+ # directory that contains the unbundled SSL certificate
401
+ # authority files for verifying peer certificates. If you do
402
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
403
+ # system default will be used if available.
404
+ #
185
405
  def initialize(*args)
186
406
  super
187
407
  end
@@ -194,39 +414,38 @@ module Aws::SQS
194
414
  # When you create a queue, you have full control access rights for the
195
415
  # queue. Only you, the owner of the queue, can grant or deny permissions
196
416
  # to the queue. For more information about these permissions, see [Allow
197
- # Developers to Write Messages to a Shared Queue][2] in the *Amazon
198
- # Simple Queue Service Developer Guide*.
417
+ # Developers to Write Messages to a Shared Queue][2] in the *Amazon SQS
418
+ # Developer Guide*.
199
419
  #
200
- # <note markdown="1"> `AddPermission` writes an Amazon-SQS-generated policy. If you want to
201
- # write your own policy, use ` SetQueueAttributes ` to upload your
202
- # policy. For more information about writing your own policy, see [Using
203
- # Custom Policies with the Amazon SQS Access Policy Language][3] in the
204
- # *Amazon Simple Queue Service Developer Guide*.
420
+ # <note markdown="1"> * `AddPermission` generates a policy for you. You can use `
421
+ # SetQueueAttributes ` to upload your policy. For more information,
422
+ # see [Using Custom Policies with the Amazon SQS Access Policy
423
+ # Language][3] in the *Amazon SQS Developer Guide*.
205
424
  #
206
- # An Amazon SQS policy can have a maximum of 7 actions.
425
+ # * An Amazon SQS policy can have a maximum of seven actions per
426
+ # statement.
207
427
  #
208
- # </note>
428
+ # * To remove the ability to change queue permissions, you must deny
429
+ # permission to the `AddPermission`, `RemovePermission`, and
430
+ # `SetQueueAttributes` actions in your IAM policy.
209
431
  #
210
- # Some actions take lists of parameters. These lists are specified using
211
- # the `param.n` notation. Values of `n` are integers starting from 1.
212
- # For example, a parameter list with two elements looks like this:
432
+ # * Amazon SQS `AddPermission` does not support adding a non-account
433
+ # principal.
213
434
  #
214
- # `&Attribute.1=first`
215
- #
216
- # `&Attribute.2=second`
435
+ # </note>
217
436
  #
218
437
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
219
- # information, see see [Grant Cross-Account Permissions to a Role and a
220
- # User Name][4] in the *Amazon Simple Queue Service Developer Guide*.
438
+ # information, see [Grant cross-account permissions to a role and a
439
+ # username][4] in the *Amazon SQS Developer Guide*.
221
440
  #
222
441
  # </note>
223
442
  #
224
443
  #
225
444
  #
226
- # [1]: http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
227
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue
228
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html
229
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
445
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
446
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue
447
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-creating-custom-policies.html
448
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
230
449
  #
231
450
  # @option params [required, String] :queue_url
232
451
  # The URL of the Amazon SQS queue to which permissions are added.
@@ -240,16 +459,15 @@ module Aws::SQS
240
459
  # underscores (`_`).
241
460
  #
242
461
  # @option params [required, Array<String>] :aws_account_ids
243
- # The AWS account number of the [principal][1] who is given permission.
244
- # The principal must have an AWS account, but does not need to be signed
245
- # up for Amazon SQS. For information about locating the AWS account
246
- # identification, see [Your AWS Identifiers][2] in the *Amazon Simple
247
- # Queue Service Developer Guide*.
462
+ # The Amazon Web Services account numbers of the [principals][1] who are
463
+ # to receive permission. For information about locating the Amazon Web
464
+ # Services account identification, see [Your Amazon Web Services
465
+ # Identifiers][2] in the *Amazon SQS Developer Guide*.
248
466
  #
249
467
  #
250
468
  #
251
- # [1]: http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
252
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication
469
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
470
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication
253
471
  #
254
472
  # @option params [required, Array<String>] :actions
255
473
  # The action the client wants to allow for the specified principal.
@@ -257,7 +475,7 @@ module Aws::SQS
257
475
  #
258
476
  # For more information about these actions, see [Overview of Managing
259
477
  # Access Permissions to Your Amazon Simple Queue Service Resource][1] in
260
- # the *Amazon Simple Queue Service Developer Guide*.
478
+ # the *Amazon SQS Developer Guide*.
261
479
  #
262
480
  # Specifying `SendMessage`, `DeleteMessage`, or
263
481
  # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
@@ -267,7 +485,7 @@ module Aws::SQS
267
485
  #
268
486
  #
269
487
  #
270
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html
488
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html
271
489
  #
272
490
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
273
491
  #
@@ -289,30 +507,100 @@ module Aws::SQS
289
507
  req.send_request(options)
290
508
  end
291
509
 
510
+ # Cancels a specified message movement task. A message movement can only
511
+ # be cancelled when the current status is RUNNING. Cancelling a message
512
+ # movement task does not revert the messages that have already been
513
+ # moved. It can only stop the messages that have not been moved yet.
514
+ #
515
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
516
+ # [dead-letter queues (DLQs)][1] only. In this context, the source
517
+ # queue is the dead-letter queue (DLQ), while the destination queue
518
+ # can be the original source queue (from which the messages were
519
+ # driven to the dead-letter-queue), or a custom destination queue.
520
+ #
521
+ # * Currently, only standard queues are supported.
522
+ #
523
+ # * Only one active message movement task is supported per queue at any
524
+ # given time.
525
+ #
526
+ # </note>
527
+ #
528
+ #
529
+ #
530
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
531
+ #
532
+ # @option params [required, String] :task_handle
533
+ # An identifier associated with a message movement task.
534
+ #
535
+ # @return [Types::CancelMessageMoveTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
536
+ #
537
+ # * {Types::CancelMessageMoveTaskResult#approximate_number_of_messages_moved #approximate_number_of_messages_moved} => Integer
538
+ #
539
+ # @example Request syntax with placeholder values
540
+ #
541
+ # resp = client.cancel_message_move_task({
542
+ # task_handle: "String", # required
543
+ # })
544
+ #
545
+ # @example Response structure
546
+ #
547
+ # resp.approximate_number_of_messages_moved #=> Integer
548
+ #
549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTask AWS API Documentation
550
+ #
551
+ # @overload cancel_message_move_task(params = {})
552
+ # @param [Hash] params ({})
553
+ def cancel_message_move_task(params = {}, options = {})
554
+ req = build_request(:cancel_message_move_task, params)
555
+ req.send_request(options)
556
+ end
557
+
292
558
  # Changes the visibility timeout of a specified message in a queue to a
293
- # new value. The maximum allowed timeout value is 12 hours. For more
294
- # information, see [Visibility Timeout][1] in the *Amazon Simple Queue
295
- # Service Developer Guide*.
296
- #
297
- # For example, you have a message with a visibility timeout of 5
298
- # minutes. After 3 minutes, you call `ChangeMessageVisibility` with a
299
- # timeout of 10 minutes. You can continue to call
300
- # `ChangeMessageVisibility` to extend the visibility timeout to a
301
- # maximum of 12 hours. If you try to extend the visibility timeout
302
- # beyond 12 hours, your request is rejected.
303
- #
304
- # A message is considered to be *in flight* after it's received from a
305
- # queue by a consumer, but not yet deleted from the queue.
306
- #
307
- # For standard queues, there can be a maximum of 120,000 inflight
308
- # messages per queue. If you reach this limit, Amazon SQS returns the
559
+ # new value. The default visibility timeout for a message is 30 seconds.
560
+ # The minimum is 0 seconds. The maximum is 12 hours. For more
561
+ # information, see [Visibility Timeout][1] in the *Amazon SQS Developer
562
+ # Guide*.
563
+ #
564
+ # For example, if the default timeout for a queue is 60 seconds, 15
565
+ # seconds have elapsed since you received the message, and you send a
566
+ # ChangeMessageVisibility call with `VisibilityTimeout` set to 10
567
+ # seconds, the 10 seconds begin to count from the time that you make the
568
+ # `ChangeMessageVisibility` call. Thus, any attempt to change the
569
+ # visibility timeout or to delete that message 10 seconds after you
570
+ # initially change the visibility timeout (a total of 25 seconds) might
571
+ # result in an error.
572
+ #
573
+ # An Amazon SQS message has three basic states:
574
+ #
575
+ # 1. Sent to a queue by a producer.
576
+ #
577
+ # 2. Received from the queue by a consumer.
578
+ #
579
+ # 3. Deleted from the queue.
580
+ #
581
+ # A message is considered to be *stored* after it is sent to a queue by
582
+ # a producer, but not yet received from the queue by a consumer (that
583
+ # is, between states 1 and 2). There is no limit to the number of stored
584
+ # messages. A message is considered to be *in flight* after it is
585
+ # received from a queue by a consumer, but not yet deleted from the
586
+ # queue (that is, between states 2 and 3). There is a limit to the
587
+ # number of in flight messages.
588
+ #
589
+ # Limits that apply to in flight messages are unrelated to the
590
+ # *unlimited* number of stored messages.
591
+ #
592
+ # For most standard queues (depending on queue traffic and message
593
+ # backlog), there can be a maximum of approximately 120,000 in flight
594
+ # messages (received from a queue by a consumer, but not yet deleted
595
+ # from the queue). If you reach this limit, Amazon SQS returns the
309
596
  # `OverLimit` error message. To avoid reaching the limit, you should
310
597
  # delete messages from the queue after they're processed. You can also
311
- # increase the number of queues you use to process your messages.
598
+ # increase the number of queues you use to process your messages. To
599
+ # request a limit increase, [file a support request][2].
312
600
  #
313
- # For FIFO queues, there can be a maximum of 20,000 inflight messages
314
- # per queue. If you reach this limit, Amazon SQS returns no error
315
- # messages.
601
+ # For FIFO queues, there can be a maximum of 20,000 in flight messages
602
+ # (received from a queue by a consumer, but not yet deleted from the
603
+ # queue). If you reach this limit, Amazon SQS returns no error messages.
316
604
  #
317
605
  # If you attempt to set the `VisibilityTimeout` to a value greater than
318
606
  # the maximum time left, Amazon SQS returns an error. Amazon SQS
@@ -329,7 +617,8 @@ module Aws::SQS
329
617
  #
330
618
  #
331
619
  #
332
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
620
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
621
+ # [2]: https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&amp;limitType=service-code-sqs
333
622
  #
334
623
  # @option params [required, String] :queue_url
335
624
  # The URL of the Amazon SQS queue whose message's visibility is
@@ -338,13 +627,13 @@ module Aws::SQS
338
627
  # Queue URLs and names are case-sensitive.
339
628
  #
340
629
  # @option params [required, String] :receipt_handle
341
- # The receipt handle associated with the message whose visibility
630
+ # The receipt handle associated with the message, whose visibility
342
631
  # timeout is changed. This parameter is returned by the ` ReceiveMessage
343
632
  # ` action.
344
633
  #
345
634
  # @option params [required, Integer] :visibility_timeout
346
635
  # The new value for the message's visibility timeout (in seconds).
347
- # Values values: `0` to `43200`. Maximum: 12 hours.
636
+ # Values range: `0` to `43200`. Maximum: 12 hours.
348
637
  #
349
638
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
350
639
  #
@@ -375,14 +664,6 @@ module Aws::SQS
375
664
  # and unsuccessful actions, you should check for batch errors even when
376
665
  # the call returns an HTTP status code of `200`.
377
666
  #
378
- # Some actions take lists of parameters. These lists are specified using
379
- # the `param.n` notation. Values of `n` are integers starting from 1.
380
- # For example, a parameter list with two elements looks like this:
381
- #
382
- # `&Attribute.1=first`
383
- #
384
- # `&Attribute.2=second`
385
- #
386
667
  # @option params [required, String] :queue_url
387
668
  # The URL of the Amazon SQS queue whose messages' visibility is
388
669
  # changed.
@@ -390,7 +671,7 @@ module Aws::SQS
390
671
  # Queue URLs and names are case-sensitive.
391
672
  #
392
673
  # @option params [required, Array<Types::ChangeMessageVisibilityBatchRequestEntry>] :entries
393
- # A list of receipt handles of the messages for which the visibility
674
+ # Lists the receipt handles of the messages for which the visibility
394
675
  # timeout must be changed.
395
676
  #
396
677
  # @return [Types::ChangeMessageVisibilityBatchResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -431,7 +712,7 @@ module Aws::SQS
431
712
  end
432
713
 
433
714
  # Creates a new standard or FIFO queue. You can pass one or more
434
- # attributes in the request. Keep the following caveats in mind:
715
+ # attributes in the request. Keep the following in mind:
435
716
  #
436
717
  # * If you don't specify the `FifoQueue` attribute, Amazon SQS creates
437
718
  # a standard queue.
@@ -441,7 +722,7 @@ module Aws::SQS
441
722
  # either create a new FIFO queue for your application or delete your
442
723
  # existing standard queue and recreate it as a FIFO queue. For more
443
724
  # information, see [Moving From a Standard Queue to a FIFO Queue][1]
444
- # in the *Amazon Simple Queue Service Developer Guide*.
725
+ # in the *Amazon SQS Developer Guide*.
445
726
  #
446
727
  # </note>
447
728
  #
@@ -455,6 +736,11 @@ module Aws::SQS
455
736
  # adheres to the [limits related to queues][2] and is unique within the
456
737
  # scope of your queues.
457
738
  #
739
+ # <note markdown="1"> After you create a queue, you must wait at least one second after the
740
+ # queue is created to be able to use the queue.
741
+ #
742
+ # </note>
743
+ #
458
744
  # To get the queue URL, use the ` GetQueueUrl ` action. ` GetQueueUrl `
459
745
  # requires only the `QueueName` parameter. be aware of existing queue
460
746
  # names:
@@ -466,25 +752,17 @@ module Aws::SQS
466
752
  # * If the queue name, attribute names, or attribute values don't match
467
753
  # an existing queue, `CreateQueue` returns an error.
468
754
  #
469
- # Some actions take lists of parameters. These lists are specified using
470
- # the `param.n` notation. Values of `n` are integers starting from 1.
471
- # For example, a parameter list with two elements looks like this:
472
- #
473
- # `&Attribute.1=first`
474
- #
475
- # `&Attribute.2=second`
476
- #
477
755
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
478
- # information, see see [Grant Cross-Account Permissions to a Role and a
479
- # User Name][3] in the *Amazon Simple Queue Service Developer Guide*.
756
+ # information, see [Grant cross-account permissions to a role and a
757
+ # username][3] in the *Amazon SQS Developer Guide*.
480
758
  #
481
759
  # </note>
482
760
  #
483
761
  #
484
762
  #
485
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-moving
486
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html
487
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
763
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-moving
764
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/limits-queues.html
765
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
488
766
  #
489
767
  # @option params [required, String] :queue_name
490
768
  # The name of the new queue. The following limits apply to this name:
@@ -504,91 +782,130 @@ module Aws::SQS
504
782
  # The following lists the names, descriptions, and values of the special
505
783
  # request parameters that the `CreateQueue` action uses:
506
784
  #
507
- # * `DelaySeconds` - The length of time, in seconds, for which the
785
+ # * `DelaySeconds` The length of time, in seconds, for which the
508
786
  # delivery of all messages in the queue is delayed. Valid values: An
509
787
  # integer from 0 to 900 seconds (15 minutes). Default: 0.
510
788
  #
511
- # * `MaximumMessageSize` - The limit of how many bytes a message can
789
+ # * `MaximumMessageSize` The limit of how many bytes a message can
512
790
  # contain before Amazon SQS rejects it. Valid values: An integer from
513
791
  # 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). Default: 262,144
514
792
  # (256 KiB).
515
793
  #
516
- # * `MessageRetentionPeriod` - The length of time, in seconds, for which
794
+ # * `MessageRetentionPeriod` The length of time, in seconds, for which
517
795
  # Amazon SQS retains a message. Valid values: An integer from 60
518
796
  # seconds (1 minute) to 1,209,600 seconds (14 days). Default: 345,600
519
- # (4 days).
520
- #
521
- # * `Policy` - The queue's policy. A valid AWS policy. For more
522
- # information about policy structure, see [Overview of AWS IAM
523
- # Policies][1] in the *Amazon IAM User Guide*.
524
- #
525
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
797
+ # (4 days). When you change a queue's attributes, the change can take
798
+ # up to 60 seconds for most of the attributes to propagate throughout
799
+ # the Amazon SQS system. Changes made to the `MessageRetentionPeriod`
800
+ # attribute can take up to 15 minutes and will impact existing
801
+ # messages in the queue potentially causing them to be expired and
802
+ # deleted if the `MessageRetentionPeriod` is reduced below the age of
803
+ # existing messages.
804
+ #
805
+ # * `Policy` – The queue's policy. A valid Amazon Web Services policy.
806
+ # For more information about policy structure, see [Overview of Amazon
807
+ # Web Services IAM Policies][1] in the *IAM User Guide*.
808
+ #
809
+ # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
526
810
  # for which a ` ReceiveMessage ` action waits for a message to arrive.
527
811
  # Valid values: An integer from 0 to 20 (seconds). Default: 0.
528
812
  #
529
- # * `RedrivePolicy` - The string that includes the parameters for the
530
- # dead-letter queue functionality of the source queue. For more
531
- # information about the redrive policy and dead-letter queues, see
532
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple Queue
533
- # Service Developer Guide*.
813
+ # * `VisibilityTimeout` The visibility timeout for the queue, in
814
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
815
+ # Default: 30. For more information about the visibility timeout, see
816
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
817
+ #
818
+ # The following attributes apply only to [dead-letter queues:][3]
534
819
  #
535
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
820
+ # * `RedrivePolicy` The string that includes the parameters for the
821
+ # dead-letter queue functionality of the source queue as a JSON
822
+ # object. The parameters are as follows:
823
+ #
824
+ # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
536
825
  # dead-letter queue to which Amazon SQS moves messages after the
537
826
  # value of `maxReceiveCount` is exceeded.
538
827
  #
539
- # * `maxReceiveCount` - The number of times a message is delivered to
540
- # the source queue before being moved to the dead-letter queue. When
541
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
542
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
828
+ # * `maxReceiveCount` The number of times a message is delivered to
829
+ # the source queue before being moved to the dead-letter queue.
830
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
831
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
832
+ # dead-letter-queue.
543
833
  #
544
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
545
- # Similarly, the dead-letter queue of a standard queue must also be a
546
- # standard queue.
834
+ # * `RedriveAllowPolicy` The string that includes the parameters for
835
+ # the permissions for the dead-letter queue redrive permission and
836
+ # which source queues can specify dead-letter queues as a JSON object.
837
+ # The parameters are as follows:
547
838
  #
548
- # </note>
839
+ # * `redrivePermission` – The permission type that defines which
840
+ # source queues can specify the current queue as the dead-letter
841
+ # queue. Valid values are:
549
842
  #
550
- # * `VisibilityTimeout` - The visibility timeout for the queue, in
551
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
552
- # Default: 30. For more information about the visibility timeout, see
553
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
554
- # Developer Guide*.
843
+ # * `allowAll` (Default) Any source queues in this Amazon Web
844
+ # Services account in the same Region can specify this queue as
845
+ # the dead-letter queue.
846
+ #
847
+ # * `denyAll` – No source queues can specify this queue as the
848
+ # dead-letter queue.
849
+ #
850
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
851
+ # parameter can specify this queue as the dead-letter queue.
555
852
  #
556
- # The following attributes apply only to [server-side-encryption][4]\:
853
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the source
854
+ # queues that can specify this queue as the dead-letter queue and
855
+ # redrive messages. You can specify this parameter only when the
856
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
857
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
858
+ # specify dead-letter queues, set the `redrivePermission` parameter
859
+ # to `allowAll`.
557
860
  #
558
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
559
- # (CMK) for Amazon SQS or a custom CMK. For more information, see [Key
560
- # Terms][5]. While the alias of the AWS-managed CMK for Amazon SQS is
561
- # always `alias/aws/sqs`, the alias of a custom CMK can, for example,
562
- # be `alias/MyAlias `. For more examples, see [KeyId][6] in the *AWS
563
- # Key Management Service API Reference*.
861
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
862
+ # Similarly, the dead-letter queue of a standard queue must also be a
863
+ # standard queue.
564
864
  #
565
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds, for
865
+ # </note>
866
+ #
867
+ # The following attributes apply only to [server-side-encryption][4]:
868
+ #
869
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed customer
870
+ # master key (CMK) for Amazon SQS or a custom CMK. For more
871
+ # information, see [Key Terms][5]. While the alias of the Amazon Web
872
+ # Services managed CMK for Amazon SQS is always `alias/aws/sqs`, the
873
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
874
+ # more examples, see [KeyId][6] in the *Key Management Service API
875
+ # Reference*.
876
+ #
877
+ # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds, for
566
878
  # which Amazon SQS can reuse a [data key][7] to encrypt or decrypt
567
- # messages before calling AWS KMS again. An integer representing
568
- # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
569
- # hours). Default: 300 (5 minutes). A shorter time period provides
570
- # better security but results in more calls to KMS which might incur
571
- # charges after Free Tier. For more information, see [How Does the
572
- # Data Key Reuse Period Work?][8].
879
+ # messages before calling KMS again. An integer representing seconds,
880
+ # between 60 seconds (1 minute) and 86,400 seconds (24 hours).
881
+ # Default: 300 (5 minutes). A shorter time period provides better
882
+ # security but results in more calls to KMS which might incur charges
883
+ # after Free Tier. For more information, see [How Does the Data Key
884
+ # Reuse Period Work?][8]
573
885
  #
574
- # The following attributes apply only to [FIFO (first-in-first-out)
575
- # queues][9]\:
886
+ # * `SqsManagedSseEnabled` Enables server-side queue encryption using
887
+ # SQS owned encryption keys. Only one server-side encryption option is
888
+ # supported per queue (for example, [SSE-KMS][9] or [SSE-SQS][10]).
576
889
  #
577
- # * `FifoQueue` - Designates a queue as FIFO. Valid values: `true`,
578
- # `false`. You can provide this attribute only during queue creation.
579
- # You can't change it for an existing queue. When you set this
580
- # attribute, you must also provide the `MessageGroupId` for your
581
- # messages explicitly.
890
+ # The following attributes apply only to [FIFO (first-in-first-out)
891
+ # queues][11]:
582
892
  #
583
- # For more information, see [FIFO Queue Logic][10] in the *Amazon
584
- # Simple Queue Service Developer Guide*.
893
+ # * `FifoQueue` Designates a queue as FIFO. Valid values are `true`
894
+ # and `false`. If you don't specify the `FifoQueue` attribute, Amazon
895
+ # SQS creates a standard queue. You can provide this attribute only
896
+ # during queue creation. You can't change it for an existing queue.
897
+ # When you set this attribute, you must also provide the
898
+ # `MessageGroupId` for your messages explicitly.
585
899
  #
586
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
587
- # Valid values: `true`, `false`. For more information, see
588
- # [Exactly-Once Processing][11] in the *Amazon Simple Queue Service
900
+ # For more information, see [FIFO queue logic][12] in the *Amazon SQS
589
901
  # Developer Guide*.
590
902
  #
591
- # * Every message must have a unique `MessageDeduplicationId`,
903
+ # * `ContentBasedDeduplication` Enables content-based deduplication.
904
+ # Valid values are `true` and `false`. For more information, see
905
+ # [Exactly-once processing][13] in the *Amazon SQS Developer Guide*.
906
+ # Note the following:
907
+ #
908
+ # * Every message must have a unique `MessageDeduplicationId`.
592
909
  #
593
910
  # * You may provide a `MessageDeduplicationId` explicitly.
594
911
  #
@@ -616,19 +933,84 @@ module Aws::SQS
616
933
  # `MessageDeduplicationId`, the two messages are treated as
617
934
  # duplicates and only one copy of the message is delivered.
618
935
  #
936
+ # The following attributes apply only to [high throughput for FIFO
937
+ # queues][14]:
938
+ #
939
+ # * `DeduplicationScope` – Specifies whether message deduplication
940
+ # occurs at the message group or queue level. Valid values are
941
+ # `messageGroup` and `queue`.
942
+ #
943
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue throughput
944
+ # quota applies to the entire queue or per message group. Valid values
945
+ # are `perQueue` and `perMessageGroupId`. The `perMessageGroupId`
946
+ # value is allowed only when the value for `DeduplicationScope` is
947
+ # `messageGroup`.
948
+ #
949
+ # To enable high throughput for FIFO queues, do the following:
950
+ #
951
+ # * Set `DeduplicationScope` to `messageGroup`.
952
+ #
953
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
954
+ #
955
+ # If you set these attributes to anything other than the values shown
956
+ # for enabling high throughput, normal throughput is in effect and
957
+ # deduplication occurs as specified.
958
+ #
959
+ # For information on throughput quotas, see [Quotas related to
960
+ # messages][15] in the *Amazon SQS Developer Guide*.
619
961
  #
620
962
  #
621
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
622
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
623
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
624
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
625
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
626
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
627
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
628
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
629
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
630
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
631
- # [11]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
963
+ #
964
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
965
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
966
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
967
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
968
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
969
+ # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
970
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
971
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
972
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
973
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
974
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
975
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
976
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
977
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
978
+ # [15]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
979
+ #
980
+ # @option params [Hash<String,String>] :tags
981
+ # Add cost allocation tags to the specified Amazon SQS queue. For an
982
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
983
+ # Developer Guide*.
984
+ #
985
+ # When you use queue tags, keep the following guidelines in mind:
986
+ #
987
+ # * Adding more than 50 tags to a queue isn't recommended.
988
+ #
989
+ # * Tags don't have any semantic meaning. Amazon SQS interprets tags as
990
+ # character strings.
991
+ #
992
+ # * Tags are case-sensitive.
993
+ #
994
+ # * A new tag with a key identical to that of an existing tag overwrites
995
+ # the existing tag.
996
+ #
997
+ # For a full list of tag restrictions, see [Quotas related to queues][2]
998
+ # in the *Amazon SQS Developer Guide*.
999
+ #
1000
+ # <note markdown="1"> To be able to tag a queue on creation, you must have the
1001
+ # `sqs:CreateQueue` and `sqs:TagQueue` permissions.
1002
+ #
1003
+ # Cross-account permissions don't apply to this action. For more
1004
+ # information, see [Grant cross-account permissions to a role and a
1005
+ # username][3] in the *Amazon SQS Developer Guide*.
1006
+ #
1007
+ # </note>
1008
+ #
1009
+ #
1010
+ #
1011
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
1012
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
1013
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
632
1014
  #
633
1015
  # @return [Types::CreateQueueResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
634
1016
  #
@@ -641,6 +1023,9 @@ module Aws::SQS
641
1023
  # attributes: {
642
1024
  # "All" => "String",
643
1025
  # },
1026
+ # tags: {
1027
+ # "TagKey" => "TagValue",
1028
+ # },
644
1029
  # })
645
1030
  #
646
1031
  # @example Response structure
@@ -669,7 +1054,7 @@ module Aws::SQS
669
1054
  # `ReceiptHandle` is different each time you receive a message. When you
670
1055
  # use the `DeleteMessage` action, you must provide the most recently
671
1056
  # received `ReceiptHandle` for the message (otherwise, the request
672
- # succeeds, but the message might not be deleted).
1057
+ # succeeds, but the message will not be deleted).
673
1058
  #
674
1059
  # For standard queues, it is possible to receive a message even after
675
1060
  # you delete it. This might happen on rare occasions if one of the
@@ -715,21 +1100,13 @@ module Aws::SQS
715
1100
  # and unsuccessful actions, you should check for batch errors even when
716
1101
  # the call returns an HTTP status code of `200`.
717
1102
  #
718
- # Some actions take lists of parameters. These lists are specified using
719
- # the `param.n` notation. Values of `n` are integers starting from 1.
720
- # For example, a parameter list with two elements looks like this:
721
- #
722
- # `&Attribute.1=first`
723
- #
724
- # `&Attribute.2=second`
725
- #
726
1103
  # @option params [required, String] :queue_url
727
1104
  # The URL of the Amazon SQS queue from which messages are deleted.
728
1105
  #
729
1106
  # Queue URLs and names are case-sensitive.
730
1107
  #
731
1108
  # @option params [required, Array<Types::DeleteMessageBatchRequestEntry>] :entries
732
- # A list of receipt handles for the messages to be deleted.
1109
+ # Lists the receipt handles for the messages to be deleted.
733
1110
  #
734
1111
  # @return [Types::DeleteMessageBatchResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
735
1112
  #
@@ -768,8 +1145,7 @@ module Aws::SQS
768
1145
  end
769
1146
 
770
1147
  # Deletes the queue specified by the `QueueUrl`, regardless of the
771
- # queue's contents. If the specified queue doesn't exist, Amazon SQS
772
- # returns a successful response.
1148
+ # queue's contents.
773
1149
  #
774
1150
  # Be careful with the `DeleteQueue` action: When you delete a queue, any
775
1151
  # messages in the queue are no longer available.
@@ -783,14 +1159,16 @@ module Aws::SQS
783
1159
  # creating a queue with the same name.
784
1160
  #
785
1161
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
786
- # information, see see [Grant Cross-Account Permissions to a Role and a
787
- # User Name][1] in the *Amazon Simple Queue Service Developer Guide*.
1162
+ # information, see [Grant cross-account permissions to a role and a
1163
+ # username][1] in the *Amazon SQS Developer Guide*.
1164
+ #
1165
+ # The delete operation uses the HTTP `GET` verb.
788
1166
  #
789
1167
  # </note>
790
1168
  #
791
1169
  #
792
1170
  #
793
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1171
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
794
1172
  #
795
1173
  # @option params [required, String] :queue_url
796
1174
  # The URL of the Amazon SQS queue to delete.
@@ -821,17 +1199,9 @@ module Aws::SQS
821
1199
  #
822
1200
  # </note>
823
1201
  #
824
- # Some actions take lists of parameters. These lists are specified using
825
- # the `param.n` notation. Values of `n` are integers starting from 1.
826
- # For example, a parameter list with two elements looks like this:
827
- #
828
- # `&Attribute.1=first`
829
- #
830
- # `&Attribute.2=second`
831
1202
  #
832
1203
  #
833
- #
834
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1204
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
835
1205
  #
836
1206
  # @option params [required, String] :queue_url
837
1207
  # The URL of the Amazon SQS queue whose attribute information is
@@ -842,6 +1212,9 @@ module Aws::SQS
842
1212
  # @option params [Array<String>] :attribute_names
843
1213
  # A list of attributes for which to retrieve information.
844
1214
  #
1215
+ # The `AttributeNames` parameter is optional, but if you don't specify
1216
+ # values for this parameter, the request returns empty results.
1217
+ #
845
1218
  # <note markdown="1"> In the future, new attributes might be added. If you write code that
846
1219
  # calls this action, we recommend that you structure your code so that
847
1220
  # it can handle new attributes gracefully.
@@ -850,102 +1223,184 @@ module Aws::SQS
850
1223
  #
851
1224
  # The following attributes are supported:
852
1225
  #
853
- # * `All` - Returns all values.
1226
+ # The `ApproximateNumberOfMessagesDelayed`,
1227
+ # `ApproximateNumberOfMessagesNotVisible`, and
1228
+ # `ApproximateNumberOfMessages` metrics may not achieve consistency
1229
+ # until at least 1 minute after the producers stop sending messages.
1230
+ # This period is required for the queue metadata to reach eventual
1231
+ # consistency.
1232
+ #
1233
+ # * `All` – Returns all values.
854
1234
  #
855
- # * `ApproximateNumberOfMessages` - Returns the approximate number of
1235
+ # * `ApproximateNumberOfMessages` Returns the approximate number of
856
1236
  # messages available for retrieval from the queue.
857
1237
  #
858
- # * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
1238
+ # * `ApproximateNumberOfMessagesDelayed` Returns the approximate
859
1239
  # number of messages in the queue that are delayed and not available
860
1240
  # for reading immediately. This can happen when the queue is
861
1241
  # configured as a delay queue or when a message has been sent with a
862
1242
  # delay parameter.
863
1243
  #
864
- # * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
1244
+ # * `ApproximateNumberOfMessagesNotVisible` Returns the approximate
865
1245
  # number of messages that are in flight. Messages are considered to be
866
1246
  # *in flight* if they have been sent to a client but have not yet been
867
1247
  # deleted or have not yet reached the end of their visibility window.
868
1248
  #
869
- # * `CreatedTimestamp` - Returns the time when the queue was created in
1249
+ # * `CreatedTimestamp` Returns the time when the queue was created in
870
1250
  # seconds ([epoch time][1]).
871
1251
  #
872
- # * `DelaySeconds` - Returns the default delay on the queue in seconds.
1252
+ # * `DelaySeconds` Returns the default delay on the queue in seconds.
873
1253
  #
874
- # * `LastModifiedTimestamp` - Returns the time when the queue was last
1254
+ # * `LastModifiedTimestamp` Returns the time when the queue was last
875
1255
  # changed in seconds ([epoch time][1]).
876
1256
  #
877
- # * `MaximumMessageSize` - Returns the limit of how many bytes a message
1257
+ # * `MaximumMessageSize` Returns the limit of how many bytes a message
878
1258
  # can contain before Amazon SQS rejects it.
879
1259
  #
880
- # * `MessageRetentionPeriod` - Returns the length of time, in seconds,
881
- # for which Amazon SQS retains a message.
1260
+ # * `MessageRetentionPeriod` Returns the length of time, in seconds,
1261
+ # for which Amazon SQS retains a message. When you change a queue's
1262
+ # attributes, the change can take up to 60 seconds for most of the
1263
+ # attributes to propagate throughout the Amazon SQS system. Changes
1264
+ # made to the `MessageRetentionPeriod` attribute can take up to 15
1265
+ # minutes and will impact existing messages in the queue potentially
1266
+ # causing them to be expired and deleted if the
1267
+ # `MessageRetentionPeriod` is reduced below the age of existing
1268
+ # messages.
882
1269
  #
883
- # * `Policy` - Returns the policy of the queue.
1270
+ # * `Policy` Returns the policy of the queue.
884
1271
  #
885
- # * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
1272
+ # * `QueueArn` Returns the Amazon resource name (ARN) of the queue.
886
1273
  #
887
- # * `ReceiveMessageWaitTimeSeconds` - Returns the length of time, in
1274
+ # * `ReceiveMessageWaitTimeSeconds` Returns the length of time, in
888
1275
  # seconds, for which the `ReceiveMessage` action waits for a message
889
1276
  # to arrive.
890
1277
  #
891
- # * `RedrivePolicy` - Returns the string that includes the parameters
892
- # for dead-letter queue functionality of the source queue. For more
893
- # information about the redrive policy and dead-letter queues, see
894
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple Queue
895
- # Service Developer Guide*.
1278
+ # * `VisibilityTimeout` Returns the visibility timeout for the queue.
1279
+ # For more information about the visibility timeout, see [Visibility
1280
+ # Timeout][2] in the *Amazon SQS Developer Guide*.
1281
+ #
1282
+ # The following attributes apply only to [dead-letter queues:][3]
896
1283
  #
897
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
1284
+ # * `RedrivePolicy` The string that includes the parameters for the
1285
+ # dead-letter queue functionality of the source queue as a JSON
1286
+ # object. The parameters are as follows:
1287
+ #
1288
+ # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
898
1289
  # dead-letter queue to which Amazon SQS moves messages after the
899
1290
  # value of `maxReceiveCount` is exceeded.
900
1291
  #
901
- # * `maxReceiveCount` - The number of times a message is delivered to
902
- # the source queue before being moved to the dead-letter queue. When
903
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
904
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
1292
+ # * `maxReceiveCount` The number of times a message is delivered to
1293
+ # the source queue before being moved to the dead-letter queue.
1294
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
1295
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
1296
+ # dead-letter-queue.
905
1297
  #
906
- # * `VisibilityTimeout` - Returns the visibility timeout for the queue.
907
- # For more information about the visibility timeout, see [Visibility
908
- # Timeout][3] in the *Amazon Simple Queue Service Developer Guide*.
1298
+ # * `RedriveAllowPolicy` The string that includes the parameters for
1299
+ # the permissions for the dead-letter queue redrive permission and
1300
+ # which source queues can specify dead-letter queues as a JSON object.
1301
+ # The parameters are as follows:
1302
+ #
1303
+ # * `redrivePermission` – The permission type that defines which
1304
+ # source queues can specify the current queue as the dead-letter
1305
+ # queue. Valid values are:
1306
+ #
1307
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
1308
+ # Services account in the same Region can specify this queue as
1309
+ # the dead-letter queue.
1310
+ #
1311
+ # * `denyAll` – No source queues can specify this queue as the
1312
+ # dead-letter queue.
1313
+ #
1314
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
1315
+ # parameter can specify this queue as the dead-letter queue.
1316
+ #
1317
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the source
1318
+ # queues that can specify this queue as the dead-letter queue and
1319
+ # redrive messages. You can specify this parameter only when the
1320
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
1321
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
1322
+ # specify dead-letter queues, set the `redrivePermission` parameter
1323
+ # to `allowAll`.
1324
+ #
1325
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
1326
+ # Similarly, the dead-letter queue of a standard queue must also be a
1327
+ # standard queue.
1328
+ #
1329
+ # </note>
909
1330
  #
910
- # The following attributes apply only to [server-side-encryption][4]\:
1331
+ # The following attributes apply only to [server-side-encryption][4]:
911
1332
  #
912
- # * `KmsMasterKeyId` - Returns the ID of an AWS-managed customer master
913
- # key (CMK) for Amazon SQS or a custom CMK. For more information, see
914
- # [Key Terms][5].
1333
+ # * `KmsMasterKeyId` Returns the ID of an Amazon Web Services managed
1334
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
1335
+ # information, see [Key Terms][5].
915
1336
  #
916
- # * `KmsDataKeyReusePeriodSeconds` - Returns the length of time, in
1337
+ # * `KmsDataKeyReusePeriodSeconds` Returns the length of time, in
917
1338
  # seconds, for which Amazon SQS can reuse a data key to encrypt or
918
- # decrypt messages before calling AWS KMS again. For more information,
919
- # see [How Does the Data Key Reuse Period Work?][6].
1339
+ # decrypt messages before calling KMS again. For more information, see
1340
+ # [How Does the Data Key Reuse Period Work?][6].
1341
+ #
1342
+ # * `SqsManagedSseEnabled` – Returns information about whether the queue
1343
+ # is using SSE-SQS encryption using SQS owned encryption keys. Only
1344
+ # one server-side encryption option is supported per queue (for
1345
+ # example, [SSE-KMS][7] or [SSE-SQS][8]).
920
1346
  #
921
1347
  # The following attributes apply only to [FIFO (first-in-first-out)
922
- # queues][7]\:
1348
+ # queues][9]:
923
1349
  #
924
- # * `FifoQueue` - Returns whether the queue is FIFO. For more
925
- # information, see [FIFO Queue Logic][8] in the *Amazon Simple Queue
926
- # Service Developer Guide*.
1350
+ # * `FifoQueue` Returns information about whether the queue is FIFO.
1351
+ # For more information, see [FIFO queue logic][10] in the *Amazon SQS
1352
+ # Developer Guide*.
927
1353
  #
928
- # <note markdown="1"> To determine whether a queue is [FIFO][7], you can check whether
1354
+ # <note markdown="1"> To determine whether a queue is [FIFO][9], you can check whether
929
1355
  # `QueueName` ends with the `.fifo` suffix.
930
1356
  #
931
1357
  # </note>
932
1358
  #
933
- # * `ContentBasedDeduplication` - Returns whether content-based
1359
+ # * `ContentBasedDeduplication` Returns whether content-based
934
1360
  # deduplication is enabled for the queue. For more information, see
935
- # [Exactly-Once Processing][9] in the *Amazon Simple Queue Service
936
- # Developer Guide*.
1361
+ # [Exactly-once processing][11] in the *Amazon SQS Developer Guide*.
1362
+ #
1363
+ # The following attributes apply only to [high throughput for FIFO
1364
+ # queues][12]:
1365
+ #
1366
+ # * `DeduplicationScope` – Specifies whether message deduplication
1367
+ # occurs at the message group or queue level. Valid values are
1368
+ # `messageGroup` and `queue`.
1369
+ #
1370
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue throughput
1371
+ # quota applies to the entire queue or per message group. Valid values
1372
+ # are `perQueue` and `perMessageGroupId`. The `perMessageGroupId`
1373
+ # value is allowed only when the value for `DeduplicationScope` is
1374
+ # `messageGroup`.
1375
+ #
1376
+ # To enable high throughput for FIFO queues, do the following:
1377
+ #
1378
+ # * Set `DeduplicationScope` to `messageGroup`.
1379
+ #
1380
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
1381
+ #
1382
+ # If you set these attributes to anything other than the values shown
1383
+ # for enabling high throughput, normal throughput is in effect and
1384
+ # deduplication occurs as specified.
1385
+ #
1386
+ # For information on throughput quotas, see [Quotas related to
1387
+ # messages][13] in the *Amazon SQS Developer Guide*.
937
1388
  #
938
1389
  #
939
1390
  #
940
1391
  # [1]: http://en.wikipedia.org/wiki/Unix_time
941
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
942
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
943
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
944
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
945
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
946
- # [7]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
947
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
948
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1392
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1393
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1394
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
1395
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
1396
+ # [6]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
1397
+ # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1398
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1399
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1400
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
1401
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
1402
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
1403
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
949
1404
  #
950
1405
  # @return [Types::GetQueueAttributesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
951
1406
  #
@@ -955,7 +1410,7 @@ module Aws::SQS
955
1410
  #
956
1411
  # resp = client.get_queue_attributes({
957
1412
  # queue_url: "String", # required
958
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
1413
+ # 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
959
1414
  # })
960
1415
  #
961
1416
  # @example Response structure
@@ -979,11 +1434,11 @@ module Aws::SQS
979
1434
  # queue's owner. The queue's owner must grant you permission to access
980
1435
  # the queue. For more information about shared queue access, see `
981
1436
  # AddPermission ` or see [Allow Developers to Write Messages to a Shared
982
- # Queue][1] in the *Amazon Simple Queue Service Developer Guide*.
1437
+ # Queue][1] in the *Amazon SQS Developer Guide*.
983
1438
  #
984
1439
  #
985
1440
  #
986
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue
1441
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-writing-an-sqs-policy.html#write-messages-to-shared-queue
987
1442
  #
988
1443
  # @option params [required, String] :queue_name
989
1444
  # The name of the queue whose URL must be fetched. Maximum 80
@@ -993,7 +1448,8 @@ module Aws::SQS
993
1448
  # Queue URLs and names are case-sensitive.
994
1449
  #
995
1450
  # @option params [String] :queue_owner_aws_account_id
996
- # The AWS account ID of the account that created the queue.
1451
+ # The Amazon Web Services account ID of the account that created the
1452
+ # queue.
997
1453
  #
998
1454
  # @return [Types::GetQueueUrlResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
999
1455
  #
@@ -1022,33 +1478,55 @@ module Aws::SQS
1022
1478
  # Returns a list of your queues that have the `RedrivePolicy` queue
1023
1479
  # attribute configured with a dead-letter queue.
1024
1480
  #
1481
+ # The `ListDeadLetterSourceQueues` methods supports pagination. Set
1482
+ # parameter `MaxResults` in the request to specify the maximum number of
1483
+ # results to be returned in the response. If you do not set
1484
+ # `MaxResults`, the response includes a maximum of 1,000 results. If you
1485
+ # set `MaxResults` and there are additional results to display, the
1486
+ # response includes a value for `NextToken`. Use `NextToken` as a
1487
+ # parameter in your next request to `ListDeadLetterSourceQueues` to
1488
+ # receive the next page of results.
1489
+ #
1025
1490
  # For more information about using dead-letter queues, see [Using Amazon
1026
- # SQS Dead-Letter Queues][1] in the *Amazon Simple Queue Service
1027
- # Developer Guide*.
1491
+ # SQS Dead-Letter Queues][1] in the *Amazon SQS Developer Guide*.
1028
1492
  #
1029
1493
  #
1030
1494
  #
1031
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1495
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1032
1496
  #
1033
1497
  # @option params [required, String] :queue_url
1034
1498
  # The URL of a dead-letter queue.
1035
1499
  #
1036
1500
  # Queue URLs and names are case-sensitive.
1037
1501
  #
1502
+ # @option params [String] :next_token
1503
+ # Pagination token to request the next set of results.
1504
+ #
1505
+ # @option params [Integer] :max_results
1506
+ # Maximum number of results to include in the response. Value range is 1
1507
+ # to 1000. You must set `MaxResults` to receive a value for `NextToken`
1508
+ # in the response.
1509
+ #
1038
1510
  # @return [Types::ListDeadLetterSourceQueuesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1039
1511
  #
1040
1512
  # * {Types::ListDeadLetterSourceQueuesResult#queue_urls #queue_urls} => Array&lt;String&gt;
1513
+ # * {Types::ListDeadLetterSourceQueuesResult#next_token #next_token} => String
1514
+ #
1515
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1041
1516
  #
1042
1517
  # @example Request syntax with placeholder values
1043
1518
  #
1044
1519
  # resp = client.list_dead_letter_source_queues({
1045
1520
  # queue_url: "String", # required
1521
+ # next_token: "Token",
1522
+ # max_results: 1,
1046
1523
  # })
1047
1524
  #
1048
1525
  # @example Response structure
1049
1526
  #
1050
1527
  # resp.queue_urls #=> Array
1051
1528
  # resp.queue_urls[0] #=> String
1529
+ # resp.next_token #=> String
1052
1530
  #
1053
1531
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueues AWS API Documentation
1054
1532
  #
@@ -1059,41 +1537,81 @@ module Aws::SQS
1059
1537
  req.send_request(options)
1060
1538
  end
1061
1539
 
1062
- # List all cost allocation tags added to the specified Amazon SQS queue.
1063
- # For an overview, see [Tagging Your Amazon SQS Queues][1] in the
1064
- # *Amazon Simple Queue Service Developer Guide*.
1540
+ # Gets the most recent message movement tasks (up to 10) under a
1541
+ # specific source queue.
1065
1542
  #
1066
- # When you use queue tags, keep the following guidelines in mind:
1543
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
1544
+ # [dead-letter queues (DLQs)][1] only. In this context, the source
1545
+ # queue is the dead-letter queue (DLQ), while the destination queue
1546
+ # can be the original source queue (from which the messages were
1547
+ # driven to the dead-letter-queue), or a custom destination queue.
1067
1548
  #
1068
- # * Adding more than 50 tags to a queue isn't recommended.
1549
+ # * Currently, only standard queues are supported.
1069
1550
  #
1070
- # * Tags don't have any semantic meaning. Amazon SQS interprets tags as
1071
- # character strings.
1551
+ # * Only one active message movement task is supported per queue at any
1552
+ # given time.
1072
1553
  #
1073
- # * Tags are case-sensitive.
1554
+ # </note>
1074
1555
  #
1075
- # * A new tag with a key identical to that of an existing tag overwrites
1076
- # the existing tag.
1077
1556
  #
1078
- # * Tagging actions are limited to 5 TPS per AWS account. If your
1079
- # application requires a higher throughput, file a [technical support
1080
- # request][2].
1081
1557
  #
1082
- # For a full list of tag restrictions, see [Limits Related to Queues][3]
1083
- # in the *Amazon Simple Queue Service Developer Guide*.
1558
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1559
+ #
1560
+ # @option params [required, String] :source_arn
1561
+ # The ARN of the queue whose message movement tasks are to be listed.
1562
+ #
1563
+ # @option params [Integer] :max_results
1564
+ # The maximum number of results to include in the response. The default
1565
+ # is 1, which provides the most recent message movement task. The upper
1566
+ # limit is 10.
1567
+ #
1568
+ # @return [Types::ListMessageMoveTasksResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1569
+ #
1570
+ # * {Types::ListMessageMoveTasksResult#results #results} => Array&lt;Types::ListMessageMoveTasksResultEntry&gt;
1571
+ #
1572
+ # @example Request syntax with placeholder values
1573
+ #
1574
+ # resp = client.list_message_move_tasks({
1575
+ # source_arn: "String", # required
1576
+ # max_results: 1,
1577
+ # })
1578
+ #
1579
+ # @example Response structure
1580
+ #
1581
+ # resp.results #=> Array
1582
+ # resp.results[0].task_handle #=> String
1583
+ # resp.results[0].status #=> String
1584
+ # resp.results[0].source_arn #=> String
1585
+ # resp.results[0].destination_arn #=> String
1586
+ # resp.results[0].max_number_of_messages_per_second #=> Integer
1587
+ # resp.results[0].approximate_number_of_messages_moved #=> Integer
1588
+ # resp.results[0].approximate_number_of_messages_to_move #=> Integer
1589
+ # resp.results[0].failure_reason #=> String
1590
+ # resp.results[0].started_timestamp #=> Integer
1591
+ #
1592
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasks AWS API Documentation
1593
+ #
1594
+ # @overload list_message_move_tasks(params = {})
1595
+ # @param [Hash] params ({})
1596
+ def list_message_move_tasks(params = {}, options = {})
1597
+ req = build_request(:list_message_move_tasks, params)
1598
+ req.send_request(options)
1599
+ end
1600
+
1601
+ # List all cost allocation tags added to the specified Amazon SQS queue.
1602
+ # For an overview, see [Tagging Your Amazon SQS Queues][1] in the
1603
+ # *Amazon SQS Developer Guide*.
1084
1604
  #
1085
1605
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1086
- # information, see see [Grant Cross-Account Permissions to a Role and a
1087
- # User Name][4] in the *Amazon Simple Queue Service Developer Guide*.
1606
+ # information, see [Grant cross-account permissions to a role and a
1607
+ # username][2] in the *Amazon SQS Developer Guide*.
1088
1608
  #
1089
1609
  # </note>
1090
1610
  #
1091
1611
  #
1092
1612
  #
1093
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
1094
- # [2]: https://console.aws.amazon.com/support/home#/case/create?issueType=technical
1095
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
1096
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1613
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
1614
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1097
1615
  #
1098
1616
  # @option params [required, String] :queue_url
1099
1617
  # The URL of the queue.
@@ -1122,20 +1640,28 @@ module Aws::SQS
1122
1640
  req.send_request(options)
1123
1641
  end
1124
1642
 
1125
- # Returns a list of your queues. The maximum number of queues that can
1126
- # be returned is 1,000. If you specify a value for the optional
1127
- # `QueueNamePrefix` parameter, only queues with a name that begins with
1128
- # the specified value are returned.
1643
+ # Returns a list of your queues in the current region. The response
1644
+ # includes a maximum of 1,000 results. If you specify a value for the
1645
+ # optional `QueueNamePrefix` parameter, only queues with a name that
1646
+ # begins with the specified value are returned.
1647
+ #
1648
+ # The `listQueues` methods supports pagination. Set parameter
1649
+ # `MaxResults` in the request to specify the maximum number of results
1650
+ # to be returned in the response. If you do not set `MaxResults`, the
1651
+ # response includes a maximum of 1,000 results. If you set `MaxResults`
1652
+ # and there are additional results to display, the response includes a
1653
+ # value for `NextToken`. Use `NextToken` as a parameter in your next
1654
+ # request to `listQueues` to receive the next page of results.
1129
1655
  #
1130
1656
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1131
- # information, see see [Grant Cross-Account Permissions to a Role and a
1132
- # User Name][1] in the *Amazon Simple Queue Service Developer Guide*.
1657
+ # information, see [Grant cross-account permissions to a role and a
1658
+ # username][1] in the *Amazon SQS Developer Guide*.
1133
1659
  #
1134
1660
  # </note>
1135
1661
  #
1136
1662
  #
1137
1663
  #
1138
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1664
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1139
1665
  #
1140
1666
  # @option params [String] :queue_name_prefix
1141
1667
  # A string to use for filtering the list results. Only those queues
@@ -1143,20 +1669,34 @@ module Aws::SQS
1143
1669
  #
1144
1670
  # Queue URLs and names are case-sensitive.
1145
1671
  #
1672
+ # @option params [String] :next_token
1673
+ # Pagination token to request the next set of results.
1674
+ #
1675
+ # @option params [Integer] :max_results
1676
+ # Maximum number of results to include in the response. Value range is 1
1677
+ # to 1000. You must set `MaxResults` to receive a value for `NextToken`
1678
+ # in the response.
1679
+ #
1146
1680
  # @return [Types::ListQueuesResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1147
1681
  #
1148
1682
  # * {Types::ListQueuesResult#queue_urls #queue_urls} => Array&lt;String&gt;
1683
+ # * {Types::ListQueuesResult#next_token #next_token} => String
1684
+ #
1685
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1149
1686
  #
1150
1687
  # @example Request syntax with placeholder values
1151
1688
  #
1152
1689
  # resp = client.list_queues({
1153
1690
  # queue_name_prefix: "String",
1691
+ # next_token: "Token",
1692
+ # max_results: 1,
1154
1693
  # })
1155
1694
  #
1156
1695
  # @example Response structure
1157
1696
  #
1158
1697
  # resp.queue_urls #=> Array
1159
1698
  # resp.queue_urls[0] #=> String
1699
+ # resp.next_token #=> String
1160
1700
  #
1161
1701
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueues AWS API Documentation
1162
1702
  #
@@ -1167,7 +1707,8 @@ module Aws::SQS
1167
1707
  req.send_request(options)
1168
1708
  end
1169
1709
 
1170
- # Deletes the messages in a queue specified by the `QueueURL` parameter.
1710
+ # Deletes available messages in a queue (including in-flight messages)
1711
+ # specified by the `QueueURL` parameter.
1171
1712
  #
1172
1713
  # When you use the `PurgeQueue` action, you can't retrieve any messages
1173
1714
  # deleted from a queue.
@@ -1206,8 +1747,8 @@ module Aws::SQS
1206
1747
 
1207
1748
  # Retrieves one or more messages (up to 10), from the specified queue.
1208
1749
  # Using the `WaitTimeSeconds` parameter enables long-poll support. For
1209
- # more information, see [Amazon SQS Long Polling][1] in the *Amazon
1210
- # Simple Queue Service Developer Guide*.
1750
+ # more information, see [Amazon SQS Long Polling][1] in the *Amazon SQS
1751
+ # Developer Guide*.
1211
1752
  #
1212
1753
  # Short poll is the default behavior where a weighted random set of
1213
1754
  # machines is sampled on a `ReceiveMessage` call. Thus, only the
@@ -1235,14 +1776,14 @@ module Aws::SQS
1235
1776
  #
1236
1777
  # The receipt handle is the identifier you must provide when deleting
1237
1778
  # the message. For more information, see [Queue and Message
1238
- # Identifiers][3] in the *Amazon Simple Queue Service Developer Guide*.
1779
+ # Identifiers][3] in the *Amazon SQS Developer Guide*.
1239
1780
  #
1240
1781
  # You can provide the `VisibilityTimeout` parameter in your request. The
1241
1782
  # parameter is applied to the messages that Amazon SQS returns in the
1242
1783
  # response. If you don't include the parameter, the overall visibility
1243
1784
  # timeout for the queue is used for the returned messages. For more
1244
- # information, see [Visibility Timeout][4] in the *Amazon Simple Queue
1245
- # Service Developer Guide*.
1785
+ # information, see [Visibility Timeout][4] in the *Amazon SQS Developer
1786
+ # Guide*.
1246
1787
  #
1247
1788
  # A message that isn't deleted or a message whose visibility isn't
1248
1789
  # extended before the visibility timeout expires counts as a failed
@@ -1257,10 +1798,10 @@ module Aws::SQS
1257
1798
  #
1258
1799
  #
1259
1800
  #
1260
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html
1801
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-long-polling.html
1261
1802
  # [2]: https://www.ietf.org/rfc/rfc1321.txt
1262
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1263
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1803
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1804
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1264
1805
  #
1265
1806
  # @option params [required, String] :queue_url
1266
1807
  # The URL of the Amazon SQS queue from which messages are received.
@@ -1268,40 +1809,48 @@ module Aws::SQS
1268
1809
  # Queue URLs and names are case-sensitive.
1269
1810
  #
1270
1811
  # @option params [Array<String>] :attribute_names
1271
- # A list of s that need to be returned along with each message. These
1272
- # attributes include:
1812
+ # A list of attributes that need to be returned along with each message.
1813
+ # These attributes include:
1273
1814
  #
1274
- # * `All` - Returns all values.
1815
+ # * `All` Returns all values.
1275
1816
  #
1276
- # * `ApproximateFirstReceiveTimestamp` - Returns the time the message
1817
+ # * `ApproximateFirstReceiveTimestamp` Returns the time the message
1277
1818
  # was first received from the queue ([epoch time][1] in milliseconds).
1278
1819
  #
1279
- # * `ApproximateReceiveCount` - Returns the number of times a message
1280
- # has been received from the queue but not deleted.
1820
+ # * `ApproximateReceiveCount` Returns the number of times a message
1821
+ # has been received across all queues but not deleted.
1822
+ #
1823
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1281
1824
  #
1282
1825
  # * `SenderId`
1283
1826
  #
1284
- # * For an IAM user, returns the IAM user ID, for example
1827
+ # * For a user, returns the user ID, for example
1285
1828
  # `ABCDEFGHI1JKLMNOPQ23R`.
1286
1829
  #
1287
1830
  # * For an IAM role, returns the IAM role ID, for example
1288
1831
  # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1289
1832
  #
1290
- # * `SentTimestamp` - Returns the time the message was sent to the queue
1833
+ # * `SentTimestamp` Returns the time the message was sent to the queue
1291
1834
  # ([epoch time][1] in milliseconds).
1292
1835
  #
1293
- # * `MessageDeduplicationId` - Returns the value provided by the
1836
+ # * `SqsManagedSseEnabled` Enables server-side queue encryption using
1837
+ # SQS owned encryption keys. Only one server-side encryption option is
1838
+ # supported per queue (for example, [SSE-KMS][2] or [SSE-SQS][3]).
1839
+ #
1840
+ # * `MessageDeduplicationId` – Returns the value provided by the
1294
1841
  # producer that calls the ` SendMessage ` action.
1295
1842
  #
1296
- # * `MessageGroupId` - Returns the value provided by the producer that
1843
+ # * `MessageGroupId` Returns the value provided by the producer that
1297
1844
  # calls the ` SendMessage ` action. Messages with the same
1298
1845
  # `MessageGroupId` are returned in sequence.
1299
1846
  #
1300
- # * `SequenceNumber` - Returns the value provided by Amazon SQS.
1847
+ # * `SequenceNumber` Returns the value provided by Amazon SQS.
1301
1848
  #
1302
1849
  #
1303
1850
  #
1304
1851
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1852
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1853
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1305
1854
  #
1306
1855
  # @option params [Array<String>] :message_attribute_names
1307
1856
  # The name of the message attribute, where *N* is the index.
@@ -1342,14 +1891,25 @@ module Aws::SQS
1342
1891
  # available and the wait time expires, the call returns successfully
1343
1892
  # with an empty list of messages.
1344
1893
  #
1894
+ # To avoid HTTP errors, ensure that the HTTP response timeout for
1895
+ # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
1896
+ # parameter. For example, with the Java SDK, you can set HTTP transport
1897
+ # settings using the [ NettyNioAsyncHttpClient][1] for asynchronous
1898
+ # clients, or the [ ApacheHttpClient][2] for synchronous clients.
1899
+ #
1900
+ #
1901
+ #
1902
+ # [1]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/nio/netty/NettyNioAsyncHttpClient.html
1903
+ # [2]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/apache/ApacheHttpClient.html
1904
+ #
1345
1905
  # @option params [String] :receive_request_attempt_id
1346
1906
  # This parameter applies only to FIFO (first-in-first-out) queues.
1347
1907
  #
1348
1908
  # The token used for deduplication of `ReceiveMessage` calls. If a
1349
1909
  # networking issue occurs after a `ReceiveMessage` action, and instead
1350
- # of a response you receive a generic error, you can retry the same
1351
- # action with an identical `ReceiveRequestAttemptId` to retrieve the
1352
- # same set of messages, even if their visibility timeout has not yet
1910
+ # of a response you receive a generic error, it is possible to retry the
1911
+ # same action with an identical `ReceiveRequestAttemptId` to retrieve
1912
+ # the same set of messages, even if their visibility timeout has not yet
1353
1913
  # expired.
1354
1914
  #
1355
1915
  # * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
@@ -1362,7 +1922,7 @@ module Aws::SQS
1362
1922
  # `ReceiveRequestAttemptId`, Amazon SQS generates a
1363
1923
  # `ReceiveRequestAttemptId`.
1364
1924
  #
1365
- # * You can retry the `ReceiveMessage` action with the same
1925
+ # * It is possible to retry the `ReceiveMessage` action with the same
1366
1926
  # `ReceiveRequestAttemptId` if none of the messages have been modified
1367
1927
  # (deleted or had their visibility changes).
1368
1928
  #
@@ -1370,7 +1930,7 @@ module Aws::SQS
1370
1930
  # `ReceiveRequestAttemptId` return the same messages and receipt
1371
1931
  # handles. If a retry occurs within the deduplication interval, it
1372
1932
  # resets the visibility timeout. For more information, see [Visibility
1373
- # Timeout][1] in the *Amazon Simple Queue Service Developer Guide*.
1933
+ # Timeout][1] in the *Amazon SQS Developer Guide*.
1374
1934
  #
1375
1935
  # If a caller of the `ReceiveMessage` action still processes messages
1376
1936
  # when the visibility timeout expires and messages become visible,
@@ -1393,19 +1953,19 @@ module Aws::SQS
1393
1953
  # visibility timeout expires. As a result, delays might occur but the
1394
1954
  # messages in the queue remain in a strict order.
1395
1955
  #
1396
- # The length of `ReceiveRequestAttemptId` is 128 characters.
1956
+ # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1397
1957
  # `ReceiveRequestAttemptId` can contain alphanumeric characters (`a-z`,
1398
1958
  # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1399
1959
  # ``).
1400
1960
  #
1401
1961
  # For best practices of using `ReceiveRequestAttemptId`, see [Using the
1402
- # ReceiveRequestAttemptId Request Parameter][2] in the *Amazon Simple
1403
- # Queue Service Developer Guide*.
1962
+ # ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
1963
+ # Developer Guide*.
1404
1964
  #
1405
1965
  #
1406
1966
  #
1407
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1408
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html
1967
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1968
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html
1409
1969
  #
1410
1970
  # @return [Types::ReceiveMessageResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1411
1971
  #
@@ -1415,7 +1975,7 @@ module Aws::SQS
1415
1975
  #
1416
1976
  # resp = client.receive_message({
1417
1977
  # queue_url: "String", # required
1418
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
1978
+ # 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
1419
1979
  # message_attribute_names: ["MessageAttributeName"],
1420
1980
  # max_number_of_messages: 1,
1421
1981
  # visibility_timeout: 1,
@@ -1454,17 +2014,21 @@ module Aws::SQS
1454
2014
  # Revokes any permissions in the queue policy that matches the specified
1455
2015
  # `Label` parameter.
1456
2016
  #
1457
- # <note markdown="1"> Only the owner of a queue can remove permissions from it.
2017
+ # <note markdown="1"> * Only the owner of a queue can remove permissions from it.
1458
2018
  #
1459
- # Cross-account permissions don't apply to this action. For more
1460
- # information, see see [Grant Cross-Account Permissions to a Role and a
1461
- # User Name][1] in the *Amazon Simple Queue Service Developer Guide*.
2019
+ # * Cross-account permissions don't apply to this action. For more
2020
+ # information, see [Grant cross-account permissions to a role and a
2021
+ # username][1] in the *Amazon SQS Developer Guide*.
2022
+ #
2023
+ # * To remove the ability to change queue permissions, you must deny
2024
+ # permission to the `AddPermission`, `RemovePermission`, and
2025
+ # `SetQueueAttributes` actions in your IAM policy.
1462
2026
  #
1463
2027
  # </note>
1464
2028
  #
1465
2029
  #
1466
2030
  #
1467
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
2031
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1468
2032
  #
1469
2033
  # @option params [required, String] :queue_url
1470
2034
  # The URL of the Amazon SQS queue from which permissions are removed.
@@ -1514,7 +2078,8 @@ module Aws::SQS
1514
2078
  # Queue URLs and names are case-sensitive.
1515
2079
  #
1516
2080
  # @option params [required, String] :message_body
1517
- # The message to send. The maximum string size is 256 KB.
2081
+ # The message to send. The minimum size is one character. The maximum
2082
+ # size is 256 KiB.
1518
2083
  #
1519
2084
  # A message can include only XML, JSON, and unformatted text. The
1520
2085
  # following Unicode characters are allowed:
@@ -1543,12 +2108,23 @@ module Aws::SQS
1543
2108
  #
1544
2109
  # @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
1545
2110
  # Each message attribute consists of a `Name`, `Type`, and `Value`. For
1546
- # more information, see [Amazon SQS Message Attributes][1] in the
1547
- # *Amazon Simple Queue Service Developer Guide*.
2111
+ # more information, see [Amazon SQS message attributes][1] in the
2112
+ # *Amazon SQS Developer Guide*.
2113
+ #
2114
+ #
1548
2115
  #
2116
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1549
2117
  #
2118
+ # @option params [Hash<String,Types::MessageSystemAttributeValue>] :message_system_attributes
2119
+ # The message system attribute to send. Each message system attribute
2120
+ # consists of a `Name`, `Type`, and `Value`.
1550
2121
  #
1551
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
2122
+ # * Currently, the only supported message system attribute is
2123
+ # `AWSTraceHeader`. Its type must be `String` and its value must be a
2124
+ # correctly formatted X-Ray trace header string.
2125
+ #
2126
+ # * The size of a message system attribute doesn't count towards the
2127
+ # total size of a message.
1552
2128
  #
1553
2129
  # @option params [String] :message_deduplication_id
1554
2130
  # This parameter applies only to FIFO (first-in-first-out) queues.
@@ -1557,8 +2133,8 @@ module Aws::SQS
1557
2133
  # particular `MessageDeduplicationId` is sent successfully, any messages
1558
2134
  # sent with the same `MessageDeduplicationId` are accepted successfully
1559
2135
  # but aren't delivered during the 5-minute deduplication interval. For
1560
- # more information, see [ Exactly-Once Processing][1] in the *Amazon
1561
- # Simple Queue Service Developer Guide*.
2136
+ # more information, see [ Exactly-once processing][1] in the *Amazon SQS
2137
+ # Developer Guide*.
1562
2138
  #
1563
2139
  # * Every message must have a unique `MessageDeduplicationId`,
1564
2140
  #
@@ -1598,19 +2174,19 @@ module Aws::SQS
1598
2174
  #
1599
2175
  # </note>
1600
2176
  #
1601
- # The length of `MessageDeduplicationId` is 128 characters.
2177
+ # The maximum length of `MessageDeduplicationId` is 128 characters.
1602
2178
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1603
2179
  # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1604
2180
  # ``).
1605
2181
  #
1606
2182
  # For best practices of using `MessageDeduplicationId`, see [Using the
1607
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1608
- # Service Developer Guide*.
2183
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2184
+ # Guide*.
1609
2185
  #
1610
2186
  #
1611
2187
  #
1612
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1613
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
2188
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2189
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1614
2190
  #
1615
2191
  # @option params [String] :message_group_id
1616
2192
  # This parameter applies only to FIFO (first-in-first-out) queues.
@@ -1636,20 +2212,20 @@ module Aws::SQS
1636
2212
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1637
2213
  #
1638
2214
  # For best practices of using `MessageGroupId`, see [Using the
1639
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1640
- # Developer Guide*.
2215
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1641
2216
  #
1642
2217
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1643
2218
  # Standard queues.
1644
2219
  #
1645
2220
  #
1646
2221
  #
1647
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
2222
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
1648
2223
  #
1649
2224
  # @return [Types::SendMessageResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1650
2225
  #
1651
2226
  # * {Types::SendMessageResult#md5_of_message_body #md5_of_message_body} => String
1652
2227
  # * {Types::SendMessageResult#md5_of_message_attributes #md5_of_message_attributes} => String
2228
+ # * {Types::SendMessageResult#md5_of_message_system_attributes #md5_of_message_system_attributes} => String
1653
2229
  # * {Types::SendMessageResult#message_id #message_id} => String
1654
2230
  # * {Types::SendMessageResult#sequence_number #sequence_number} => String
1655
2231
  #
@@ -1668,6 +2244,15 @@ module Aws::SQS
1668
2244
  # data_type: "String", # required
1669
2245
  # },
1670
2246
  # },
2247
+ # message_system_attributes: {
2248
+ # "AWSTraceHeader" => {
2249
+ # string_value: "String",
2250
+ # binary_value: "data",
2251
+ # string_list_values: ["String"],
2252
+ # binary_list_values: ["data"],
2253
+ # data_type: "String", # required
2254
+ # },
2255
+ # },
1671
2256
  # message_deduplication_id: "String",
1672
2257
  # message_group_id: "String",
1673
2258
  # })
@@ -1676,6 +2261,7 @@ module Aws::SQS
1676
2261
  #
1677
2262
  # resp.md5_of_message_body #=> String
1678
2263
  # resp.md5_of_message_attributes #=> String
2264
+ # resp.md5_of_message_system_attributes #=> String
1679
2265
  # resp.message_id #=> String
1680
2266
  # resp.sequence_number #=> String
1681
2267
  #
@@ -1688,7 +2274,9 @@ module Aws::SQS
1688
2274
  req.send_request(options)
1689
2275
  end
1690
2276
 
1691
- # Delivers up to ten messages to the specified queue. This is a batch
2277
+ # You can use `SendMessageBatch` to send up to 10 messages to the
2278
+ # specified queue by assigning either identical or different values to
2279
+ # each message (or by not assigning values at all). This is a batch
1692
2280
  # version of ` SendMessage.` For a FIFO queue, multiple messages within
1693
2281
  # a single batch are enqueued in the order they are sent.
1694
2282
  #
@@ -1699,7 +2287,7 @@ module Aws::SQS
1699
2287
  #
1700
2288
  # The maximum allowed individual message size and the maximum total
1701
2289
  # payload size (the sum of the individual lengths of all of the batched
1702
- # messages) are both 256 KB (262,144 bytes).
2290
+ # messages) are both 256 KiB (262,144 bytes).
1703
2291
  #
1704
2292
  # A message can include only XML, JSON, and unformatted text. The
1705
2293
  # following Unicode characters are allowed:
@@ -1713,14 +2301,6 @@ module Aws::SQS
1713
2301
  # If you don't specify the `DelaySeconds` parameter for an entry,
1714
2302
  # Amazon SQS uses the default value for the queue.
1715
2303
  #
1716
- # Some actions take lists of parameters. These lists are specified using
1717
- # the `param.n` notation. Values of `n` are integers starting from 1.
1718
- # For example, a parameter list with two elements looks like this:
1719
- #
1720
- # `&Attribute.1=first`
1721
- #
1722
- # `&Attribute.2=second`
1723
- #
1724
2304
  #
1725
2305
  #
1726
2306
  # [1]: http://www.w3.org/TR/REC-xml/#charsets
@@ -1756,6 +2336,15 @@ module Aws::SQS
1756
2336
  # data_type: "String", # required
1757
2337
  # },
1758
2338
  # },
2339
+ # message_system_attributes: {
2340
+ # "AWSTraceHeader" => {
2341
+ # string_value: "String",
2342
+ # binary_value: "data",
2343
+ # string_list_values: ["String"],
2344
+ # binary_list_values: ["data"],
2345
+ # data_type: "String", # required
2346
+ # },
2347
+ # },
1759
2348
  # message_deduplication_id: "String",
1760
2349
  # message_group_id: "String",
1761
2350
  # },
@@ -1769,6 +2358,7 @@ module Aws::SQS
1769
2358
  # resp.successful[0].message_id #=> String
1770
2359
  # resp.successful[0].md5_of_message_body #=> String
1771
2360
  # resp.successful[0].md5_of_message_attributes #=> String
2361
+ # resp.successful[0].md5_of_message_system_attributes #=> String
1772
2362
  # resp.successful[0].sequence_number #=> String
1773
2363
  # resp.failed #=> Array
1774
2364
  # resp.failed[0].id #=> String
@@ -1789,21 +2379,27 @@ module Aws::SQS
1789
2379
  # queue's attributes, the change can take up to 60 seconds for most of
1790
2380
  # the attributes to propagate throughout the Amazon SQS system. Changes
1791
2381
  # made to the `MessageRetentionPeriod` attribute can take up to 15
1792
- # minutes.
2382
+ # minutes and will impact existing messages in the queue potentially
2383
+ # causing them to be expired and deleted if the `MessageRetentionPeriod`
2384
+ # is reduced below the age of existing messages.
1793
2385
  #
1794
- # <note markdown="1"> In the future, new attributes might be added. If you write code that
1795
- # calls this action, we recommend that you structure your code so that
1796
- # it can handle new attributes gracefully.
2386
+ # <note markdown="1"> * In the future, new attributes might be added. If you write code that
2387
+ # calls this action, we recommend that you structure your code so that
2388
+ # it can handle new attributes gracefully.
2389
+ #
2390
+ # * Cross-account permissions don't apply to this action. For more
2391
+ # information, see [Grant cross-account permissions to a role and a
2392
+ # username][1] in the *Amazon SQS Developer Guide*.
1797
2393
  #
1798
- # Cross-account permissions don't apply to this action. For more
1799
- # information, see see [Grant Cross-Account Permissions to a Role and a
1800
- # User Name][1] in the *Amazon Simple Queue Service Developer Guide*.
2394
+ # * To remove the ability to change queue permissions, you must deny
2395
+ # permission to the `AddPermission`, `RemovePermission`, and
2396
+ # `SetQueueAttributes` actions in your IAM policy.
1801
2397
  #
1802
2398
  # </note>
1803
2399
  #
1804
2400
  #
1805
2401
  #
1806
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
2402
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1807
2403
  #
1808
2404
  # @option params [required, String] :queue_url
1809
2405
  # The URL of the Amazon SQS queue whose attributes are set.
@@ -1816,81 +2412,119 @@ module Aws::SQS
1816
2412
  # The following lists the names, descriptions, and values of the special
1817
2413
  # request parameters that the `SetQueueAttributes` action uses:
1818
2414
  #
1819
- # * `DelaySeconds` - The length of time, in seconds, for which the
2415
+ # * `DelaySeconds` The length of time, in seconds, for which the
1820
2416
  # delivery of all messages in the queue is delayed. Valid values: An
1821
2417
  # integer from 0 to 900 (15 minutes). Default: 0.
1822
2418
  #
1823
- # * `MaximumMessageSize` - The limit of how many bytes a message can
2419
+ # * `MaximumMessageSize` The limit of how many bytes a message can
1824
2420
  # contain before Amazon SQS rejects it. Valid values: An integer from
1825
2421
  # 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). Default: 262,144
1826
2422
  # (256 KiB).
1827
2423
  #
1828
- # * `MessageRetentionPeriod` - The length of time, in seconds, for which
2424
+ # * `MessageRetentionPeriod` The length of time, in seconds, for which
1829
2425
  # Amazon SQS retains a message. Valid values: An integer representing
1830
2426
  # seconds, from 60 (1 minute) to 1,209,600 (14 days). Default: 345,600
1831
- # (4 days).
2427
+ # (4 days). When you change a queue's attributes, the change can take
2428
+ # up to 60 seconds for most of the attributes to propagate throughout
2429
+ # the Amazon SQS system. Changes made to the `MessageRetentionPeriod`
2430
+ # attribute can take up to 15 minutes and will impact existing
2431
+ # messages in the queue potentially causing them to be expired and
2432
+ # deleted if the `MessageRetentionPeriod` is reduced below the age of
2433
+ # existing messages.
2434
+ #
2435
+ # * `Policy` – The queue's policy. A valid Amazon Web Services policy.
2436
+ # For more information about policy structure, see [Overview of Amazon
2437
+ # Web Services IAM Policies][1] in the *Identity and Access Management
2438
+ # User Guide*.
2439
+ #
2440
+ # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
2441
+ # for which a ` ReceiveMessage ` action waits for a message to arrive.
2442
+ # Valid values: An integer from 0 to 20 (seconds). Default: 0.
1832
2443
  #
1833
- # * `Policy` - The queue's policy. A valid AWS policy. For more
1834
- # information about policy structure, see [Overview of AWS IAM
1835
- # Policies][1] in the *Amazon IAM User Guide*.
2444
+ # * `VisibilityTimeout` The visibility timeout for the queue, in
2445
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2446
+ # Default: 30. For more information about the visibility timeout, see
2447
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
1836
2448
  #
1837
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
1838
- # for which a ` ReceiveMessage ` action waits for a message to arrive.
1839
- # Valid values: an integer from 0 to 20 (seconds). Default: 0.
2449
+ # The following attributes apply only to [dead-letter queues:][3]
1840
2450
  #
1841
- # * `RedrivePolicy` - The string that includes the parameters for the
1842
- # dead-letter queue functionality of the source queue. For more
1843
- # information about the redrive policy and dead-letter queues, see
1844
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple Queue
1845
- # Service Developer Guide*.
2451
+ # * `RedrivePolicy` The string that includes the parameters for the
2452
+ # dead-letter queue functionality of the source queue as a JSON
2453
+ # object. The parameters are as follows:
1846
2454
  #
1847
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
2455
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
1848
2456
  # dead-letter queue to which Amazon SQS moves messages after the
1849
2457
  # value of `maxReceiveCount` is exceeded.
1850
2458
  #
1851
- # * `maxReceiveCount` - The number of times a message is delivered to
1852
- # the source queue before being moved to the dead-letter queue. When
1853
- # the `ReceiveCount` for a message exceeds the `maxReceiveCount` for
1854
- # a queue, Amazon SQS moves the message to the dead-letter-queue.
2459
+ # * `maxReceiveCount` The number of times a message is delivered to
2460
+ # the source queue before being moved to the dead-letter queue.
2461
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
2462
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to the
2463
+ # dead-letter-queue.
1855
2464
  #
1856
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
1857
- # Similarly, the dead-letter queue of a standard queue must also be a
1858
- # standard queue.
2465
+ # * `RedriveAllowPolicy` The string that includes the parameters for
2466
+ # the permissions for the dead-letter queue redrive permission and
2467
+ # which source queues can specify dead-letter queues as a JSON object.
2468
+ # The parameters are as follows:
1859
2469
  #
1860
- # </note>
2470
+ # * `redrivePermission` – The permission type that defines which
2471
+ # source queues can specify the current queue as the dead-letter
2472
+ # queue. Valid values are:
1861
2473
  #
1862
- # * `VisibilityTimeout` - The visibility timeout for the queue, in
1863
- # seconds. Valid values: an integer from 0 to 43,200 (12 hours).
1864
- # Default: 30. For more information about the visibility timeout, see
1865
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
1866
- # Developer Guide*.
2474
+ # * `allowAll` (Default) Any source queues in this Amazon Web
2475
+ # Services account in the same Region can specify this queue as
2476
+ # the dead-letter queue.
2477
+ #
2478
+ # * `denyAll` – No source queues can specify this queue as the
2479
+ # dead-letter queue.
1867
2480
  #
1868
- # The following attributes apply only to [server-side-encryption][4]\:
2481
+ # * `byQueue` Only queues specified by the `sourceQueueArns`
2482
+ # parameter can specify this queue as the dead-letter queue.
1869
2483
  #
1870
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
1871
- # (CMK) for Amazon SQS or a custom CMK. For more information, see [Key
1872
- # Terms][5]. While the alias of the AWS-managed CMK for Amazon SQS is
1873
- # always `alias/aws/sqs`, the alias of a custom CMK can, for example,
1874
- # be `alias/MyAlias `. For more examples, see [KeyId][6] in the *AWS
1875
- # Key Management Service API Reference*.
2484
+ # * `sourceQueueArns` The Amazon Resource Names (ARN)s of the source
2485
+ # queues that can specify this queue as the dead-letter queue and
2486
+ # redrive messages. You can specify this parameter only when the
2487
+ # `redrivePermission` parameter is set to `byQueue`. You can specify
2488
+ # up to 10 source queue ARNs. To allow more than 10 source queues to
2489
+ # specify dead-letter queues, set the `redrivePermission` parameter
2490
+ # to `allowAll`.
1876
2491
  #
1877
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds, for
2492
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2493
+ # Similarly, the dead-letter queue of a standard queue must also be a
2494
+ # standard queue.
2495
+ #
2496
+ # </note>
2497
+ #
2498
+ # The following attributes apply only to [server-side-encryption][4]:
2499
+ #
2500
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed customer
2501
+ # master key (CMK) for Amazon SQS or a custom CMK. For more
2502
+ # information, see [Key Terms][5]. While the alias of the AWS-managed
2503
+ # CMK for Amazon SQS is always `alias/aws/sqs`, the alias of a custom
2504
+ # CMK can, for example, be `alias/MyAlias `. For more examples, see
2505
+ # [KeyId][6] in the *Key Management Service API Reference*.
2506
+ #
2507
+ # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds, for
1878
2508
  # which Amazon SQS can reuse a [data key][7] to encrypt or decrypt
1879
- # messages before calling AWS KMS again. An integer representing
1880
- # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
1881
- # hours). Default: 300 (5 minutes). A shorter time period provides
1882
- # better security but results in more calls to KMS which might incur
1883
- # charges after Free Tier. For more information, see [How Does the
1884
- # Data Key Reuse Period Work?][8].
2509
+ # messages before calling KMS again. An integer representing seconds,
2510
+ # between 60 seconds (1 minute) and 86,400 seconds (24 hours).
2511
+ # Default: 300 (5 minutes). A shorter time period provides better
2512
+ # security but results in more calls to KMS which might incur charges
2513
+ # after Free Tier. For more information, see [How Does the Data Key
2514
+ # Reuse Period Work?][8].
2515
+ #
2516
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption using
2517
+ # SQS owned encryption keys. Only one server-side encryption option is
2518
+ # supported per queue (for example, [SSE-KMS][9] or [SSE-SQS][10]).
1885
2519
  #
1886
2520
  # The following attribute applies only to [FIFO (first-in-first-out)
1887
- # queues][9]\:
2521
+ # queues][11]:
1888
2522
  #
1889
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
1890
- # For more information, see [Exactly-Once Processing][10] in the
1891
- # *Amazon Simple Queue Service Developer Guide*.
2523
+ # * `ContentBasedDeduplication` Enables content-based deduplication.
2524
+ # For more information, see [Exactly-once processing][12] in the
2525
+ # *Amazon SQS Developer Guide*. Note the following:
1892
2526
  #
1893
- # * Every message must have a unique `MessageDeduplicationId`,
2527
+ # * Every message must have a unique `MessageDeduplicationId`.
1894
2528
  #
1895
2529
  # * You may provide a `MessageDeduplicationId` explicitly.
1896
2530
  #
@@ -1918,18 +2552,48 @@ module Aws::SQS
1918
2552
  # `MessageDeduplicationId`, the two messages are treated as
1919
2553
  # duplicates and only one copy of the message is delivered.
1920
2554
  #
2555
+ # The following attributes apply only to [high throughput for FIFO
2556
+ # queues][13]:
2557
+ #
2558
+ # * `DeduplicationScope` – Specifies whether message deduplication
2559
+ # occurs at the message group or queue level. Valid values are
2560
+ # `messageGroup` and `queue`.
2561
+ #
2562
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue throughput
2563
+ # quota applies to the entire queue or per message group. Valid values
2564
+ # are `perQueue` and `perMessageGroupId`. The `perMessageGroupId`
2565
+ # value is allowed only when the value for `DeduplicationScope` is
2566
+ # `messageGroup`.
2567
+ #
2568
+ # To enable high throughput for FIFO queues, do the following:
2569
+ #
2570
+ # * Set `DeduplicationScope` to `messageGroup`.
1921
2571
  #
2572
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
1922
2573
  #
1923
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
1924
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1925
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1926
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
1927
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
1928
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
1929
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
1930
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
1931
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1932
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2574
+ # If you set these attributes to anything other than the values shown
2575
+ # for enabling high throughput, normal throughput is in effect and
2576
+ # deduplication occurs as specified.
2577
+ #
2578
+ # For information on throughput quotas, see [Quotas related to
2579
+ # messages][14] in the *Amazon SQS Developer Guide*.
2580
+ #
2581
+ #
2582
+ #
2583
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
2584
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2585
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2586
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
2587
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
2588
+ # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2589
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
2590
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
2591
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
2592
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
2593
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2594
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2595
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2596
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1933
2597
  #
1934
2598
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1935
2599
  #
@@ -1951,9 +2615,81 @@ module Aws::SQS
1951
2615
  req.send_request(options)
1952
2616
  end
1953
2617
 
2618
+ # Starts an asynchronous task to move messages from a specified source
2619
+ # queue to a specified destination queue.
2620
+ #
2621
+ # <note markdown="1"> * This action is currently limited to supporting message redrive from
2622
+ # queues that are configured as [dead-letter queues (DLQs)][1] of
2623
+ # other Amazon SQS queues only. Non-SQS queue sources of dead-letter
2624
+ # queues, such as Lambda or Amazon SNS topics, are currently not
2625
+ # supported.
2626
+ #
2627
+ # * In dead-letter queues redrive context, the `StartMessageMoveTask`
2628
+ # the source queue is the DLQ, while the destination queue can be the
2629
+ # original source queue (from which the messages were driven to the
2630
+ # dead-letter-queue), or a custom destination queue.
2631
+ #
2632
+ # * Currently, only standard queues support redrive. FIFO queues don't
2633
+ # support redrive.
2634
+ #
2635
+ # * Only one active message movement task is supported per queue at any
2636
+ # given time.
2637
+ #
2638
+ # </note>
2639
+ #
2640
+ #
2641
+ #
2642
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2643
+ #
2644
+ # @option params [required, String] :source_arn
2645
+ # The ARN of the queue that contains the messages to be moved to another
2646
+ # queue. Currently, only ARNs of dead-letter queues (DLQs) whose sources
2647
+ # are other Amazon SQS queues are accepted. DLQs whose sources are
2648
+ # non-SQS queues, such as Lambda or Amazon SNS topics, are not currently
2649
+ # supported.
2650
+ #
2651
+ # @option params [String] :destination_arn
2652
+ # The ARN of the queue that receives the moved messages. You can use
2653
+ # this field to specify the destination queue where you would like to
2654
+ # redrive messages. If this field is left blank, the messages will be
2655
+ # redriven back to their respective original source queues.
2656
+ #
2657
+ # @option params [Integer] :max_number_of_messages_per_second
2658
+ # The number of messages to be moved per second (the message movement
2659
+ # rate). You can use this field to define a fixed message movement rate.
2660
+ # The maximum value for messages per second is 500. If this field is
2661
+ # left blank, the system will optimize the rate based on the queue
2662
+ # message backlog size, which may vary throughout the duration of the
2663
+ # message movement task.
2664
+ #
2665
+ # @return [Types::StartMessageMoveTaskResult] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2666
+ #
2667
+ # * {Types::StartMessageMoveTaskResult#task_handle #task_handle} => String
2668
+ #
2669
+ # @example Request syntax with placeholder values
2670
+ #
2671
+ # resp = client.start_message_move_task({
2672
+ # source_arn: "String", # required
2673
+ # destination_arn: "String",
2674
+ # max_number_of_messages_per_second: 1,
2675
+ # })
2676
+ #
2677
+ # @example Response structure
2678
+ #
2679
+ # resp.task_handle #=> String
2680
+ #
2681
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTask AWS API Documentation
2682
+ #
2683
+ # @overload start_message_move_task(params = {})
2684
+ # @param [Hash] params ({})
2685
+ def start_message_move_task(params = {}, options = {})
2686
+ req = build_request(:start_message_move_task, params)
2687
+ req.send_request(options)
2688
+ end
2689
+
1954
2690
  # Add cost allocation tags to the specified Amazon SQS queue. For an
1955
- # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
1956
- # Simple Queue Service Developer Guide*.
2691
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
2692
+ # Developer Guide*.
1957
2693
  #
1958
2694
  # When you use queue tags, keep the following guidelines in mind:
1959
2695
  #
@@ -1967,25 +2703,20 @@ module Aws::SQS
1967
2703
  # * A new tag with a key identical to that of an existing tag overwrites
1968
2704
  # the existing tag.
1969
2705
  #
1970
- # * Tagging actions are limited to 5 TPS per AWS account. If your
1971
- # application requires a higher throughput, file a [technical support
1972
- # request][2].
1973
- #
1974
- # For a full list of tag restrictions, see [Limits Related to Queues][3]
1975
- # in the *Amazon Simple Queue Service Developer Guide*.
2706
+ # For a full list of tag restrictions, see [Quotas related to queues][2]
2707
+ # in the *Amazon SQS Developer Guide*.
1976
2708
  #
1977
2709
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
1978
- # information, see see [Grant Cross-Account Permissions to a Role and a
1979
- # User Name][4] in the *Amazon Simple Queue Service Developer Guide*.
2710
+ # information, see [Grant cross-account permissions to a role and a
2711
+ # username][3] in the *Amazon SQS Developer Guide*.
1980
2712
  #
1981
2713
  # </note>
1982
2714
  #
1983
2715
  #
1984
2716
  #
1985
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
1986
- # [2]: https://console.aws.amazon.com/support/home#/case/create?issueType=technical
1987
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
1988
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
2717
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
2718
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
2719
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
1989
2720
  #
1990
2721
  # @option params [required, String] :queue_url
1991
2722
  # The URL of the queue.
@@ -2015,39 +2746,18 @@ module Aws::SQS
2015
2746
 
2016
2747
  # Remove cost allocation tags from the specified Amazon SQS queue. For
2017
2748
  # an overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
2018
- # Simple Queue Service Developer Guide*.
2019
- #
2020
- # When you use queue tags, keep the following guidelines in mind:
2021
- #
2022
- # * Adding more than 50 tags to a queue isn't recommended.
2023
- #
2024
- # * Tags don't have any semantic meaning. Amazon SQS interprets tags as
2025
- # character strings.
2026
- #
2027
- # * Tags are case-sensitive.
2028
- #
2029
- # * A new tag with a key identical to that of an existing tag overwrites
2030
- # the existing tag.
2031
- #
2032
- # * Tagging actions are limited to 5 TPS per AWS account. If your
2033
- # application requires a higher throughput, file a [technical support
2034
- # request][2].
2035
- #
2036
- # For a full list of tag restrictions, see [Limits Related to Queues][3]
2037
- # in the *Amazon Simple Queue Service Developer Guide*.
2749
+ # SQS Developer Guide*.
2038
2750
  #
2039
2751
  # <note markdown="1"> Cross-account permissions don't apply to this action. For more
2040
- # information, see see [Grant Cross-Account Permissions to a Role and a
2041
- # User Name][4] in the *Amazon Simple Queue Service Developer Guide*.
2752
+ # information, see [Grant cross-account permissions to a role and a
2753
+ # username][2] in the *Amazon SQS Developer Guide*.
2042
2754
  #
2043
2755
  # </note>
2044
2756
  #
2045
2757
  #
2046
2758
  #
2047
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
2048
- # [2]: https://console.aws.amazon.com/support/home#/case/create?issueType=technical
2049
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
2050
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
2759
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
2760
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
2051
2761
  #
2052
2762
  # @option params [required, String] :queue_url
2053
2763
  # The URL of the queue.
@@ -2086,7 +2796,7 @@ module Aws::SQS
2086
2796
  params: params,
2087
2797
  config: config)
2088
2798
  context[:gem_name] = 'aws-sdk-sqs'
2089
- context[:gem_version] = '1.9.0'
2799
+ context[:gem_version] = '1.70.0'
2090
2800
  Seahorse::Client::Request.new(handlers, context)
2091
2801
  end
2092
2802