aws-sdk-sqs 1.9.0 → 1.70.0

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