aws-sdk-sqs 1.30.0 → 1.89.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3,23 +3,13 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
10
  module Aws::SQS
11
11
  module Types
12
12
 
13
- # @note When making an API call, you may pass AddPermissionRequest
14
- # data as a hash:
15
- #
16
- # {
17
- # queue_url: "String", # required
18
- # label: "String", # required
19
- # aws_account_ids: ["String"], # required
20
- # actions: ["String"], # required
21
- # }
22
- #
23
13
  # @!attribute [rw] queue_url
24
14
  # The URL of the Amazon SQS queue to which permissions are added.
25
15
  #
@@ -34,11 +24,10 @@ module Aws::SQS
34
24
  # @return [String]
35
25
  #
36
26
  # @!attribute [rw] aws_account_ids
37
- # The AWS account number of the [principal][1] who is given
38
- # permission. The principal must have an AWS account, but does not
39
- # need to be signed up for Amazon SQS. For information about locating
40
- # the AWS account identification, see [Your AWS Identifiers][2] in the
41
- # *Amazon Simple Queue Service Developer Guide*.
27
+ # The Amazon Web Services account numbers of the [principals][1] who
28
+ # are to receive permission. For information about locating the Amazon
29
+ # Web Services account identification, see [Your Amazon Web Services
30
+ # Identifiers][2] in the *Amazon SQS Developer Guide*.
42
31
  #
43
32
  #
44
33
  #
@@ -52,7 +41,7 @@ module Aws::SQS
52
41
  #
53
42
  # For more information about these actions, see [Overview of Managing
54
43
  # Access Permissions to Your Amazon Simple Queue Service Resource][1]
55
- # in the *Amazon Simple Queue Service Developer Guide*.
44
+ # in the *Amazon SQS Developer Guide*.
56
45
  #
57
46
  # Specifying `SendMessage`, `DeleteMessage`, or
58
47
  # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
@@ -78,15 +67,29 @@ module Aws::SQS
78
67
 
79
68
  # Two or more batch entries in the request have the same `Id`.
80
69
  #
70
+ # @!attribute [rw] message
71
+ # @return [String]
72
+ #
81
73
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchEntryIdsNotDistinct AWS API Documentation
82
74
  #
83
- class BatchEntryIdsNotDistinct < Aws::EmptyStructure; end
75
+ class BatchEntryIdsNotDistinct < Struct.new(
76
+ :message)
77
+ SENSITIVE = []
78
+ include Aws::Structure
79
+ end
84
80
 
85
81
  # The length of all the messages put together is more than the limit.
86
82
  #
83
+ # @!attribute [rw] message
84
+ # @return [String]
85
+ #
87
86
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchRequestTooLong AWS API Documentation
88
87
  #
89
- class BatchRequestTooLong < Aws::EmptyStructure; end
88
+ class BatchRequestTooLong < Struct.new(
89
+ :message)
90
+ SENSITIVE = []
91
+ include Aws::Structure
92
+ end
90
93
 
91
94
  # Gives a detailed description of the result of an action on each entry
92
95
  # in the request.
@@ -119,20 +122,31 @@ module Aws::SQS
119
122
  include Aws::Structure
120
123
  end
121
124
 
122
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequest
123
- # data as a hash:
125
+ # @!attribute [rw] task_handle
126
+ # An identifier associated with a message movement task.
127
+ # @return [String]
128
+ #
129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTaskRequest AWS API Documentation
130
+ #
131
+ class CancelMessageMoveTaskRequest < Struct.new(
132
+ :task_handle)
133
+ SENSITIVE = []
134
+ include Aws::Structure
135
+ end
136
+
137
+ # @!attribute [rw] approximate_number_of_messages_moved
138
+ # The approximate number of messages already moved to the destination
139
+ # queue.
140
+ # @return [Integer]
124
141
  #
125
- # {
126
- # queue_url: "String", # required
127
- # entries: [ # required
128
- # {
129
- # id: "String", # required
130
- # receipt_handle: "String", # required
131
- # visibility_timeout: 1,
132
- # },
133
- # ],
134
- # }
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTaskResult AWS API Documentation
135
143
  #
144
+ class CancelMessageMoveTaskResult < Struct.new(
145
+ :approximate_number_of_messages_moved)
146
+ SENSITIVE = []
147
+ include Aws::Structure
148
+ end
149
+
136
150
  # @!attribute [rw] queue_url
137
151
  # The URL of the Amazon SQS queue whose messages' visibility is
138
152
  # changed.
@@ -141,7 +155,7 @@ module Aws::SQS
141
155
  # @return [String]
142
156
  #
143
157
  # @!attribute [rw] entries
144
- # A list of receipt handles of the messages for which the visibility
158
+ # Lists the receipt handles of the messages for which the visibility
145
159
  # timeout must be changed.
146
160
  # @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
147
161
  #
@@ -154,29 +168,9 @@ module Aws::SQS
154
168
  include Aws::Structure
155
169
  end
156
170
 
157
- # Encloses a receipt handle and an entry id for each message in `
171
+ # Encloses a receipt handle and an entry ID for each message in `
158
172
  # ChangeMessageVisibilityBatch.`
159
173
  #
160
- # All of the following list parameters must be prefixed with
161
- # `ChangeMessageVisibilityBatchRequestEntry.n`, where `n` is an integer
162
- # value starting with `1`. For example, a parameter list for this action
163
- # might look like this:
164
- #
165
- # `&ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
166
- #
167
- # `&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=your_receipt_handle`
168
- #
169
- # `&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
170
- #
171
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequestEntry
172
- # data as a hash:
173
- #
174
- # {
175
- # id: "String", # required
176
- # receipt_handle: "String", # required
177
- # visibility_timeout: 1,
178
- # }
179
- #
180
174
  # @!attribute [rw] id
181
175
  # An identifier for this particular receipt handle used to communicate
182
176
  # the result.
@@ -244,15 +238,6 @@ module Aws::SQS
244
238
  include Aws::Structure
245
239
  end
246
240
 
247
- # @note When making an API call, you may pass ChangeMessageVisibilityRequest
248
- # data as a hash:
249
- #
250
- # {
251
- # queue_url: "String", # required
252
- # receipt_handle: "String", # required
253
- # visibility_timeout: 1, # required
254
- # }
255
- #
256
241
  # @!attribute [rw] queue_url
257
242
  # The URL of the Amazon SQS queue whose message's visibility is
258
243
  # changed.
@@ -261,14 +246,14 @@ module Aws::SQS
261
246
  # @return [String]
262
247
  #
263
248
  # @!attribute [rw] receipt_handle
264
- # The receipt handle associated with the message whose visibility
249
+ # The receipt handle associated with the message, whose visibility
265
250
  # timeout is changed. This parameter is returned by the `
266
251
  # ReceiveMessage ` action.
267
252
  # @return [String]
268
253
  #
269
254
  # @!attribute [rw] visibility_timeout
270
255
  # The new value for the message's visibility timeout (in seconds).
271
- # Values values: `0` to `43200`. Maximum: 12 hours.
256
+ # Values range: `0` to `43200`. Maximum: 12 hours.
272
257
  # @return [Integer]
273
258
  #
274
259
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ChangeMessageVisibilityRequest AWS API Documentation
@@ -281,19 +266,6 @@ module Aws::SQS
281
266
  include Aws::Structure
282
267
  end
283
268
 
284
- # @note When making an API call, you may pass CreateQueueRequest
285
- # data as a hash:
286
- #
287
- # {
288
- # queue_name: "String", # required
289
- # attributes: {
290
- # "All" => "String",
291
- # },
292
- # tags: {
293
- # "TagKey" => "TagValue",
294
- # },
295
- # }
296
- #
297
269
  # @!attribute [rw] queue_name
298
270
  # The name of the new queue. The following limits apply to this name:
299
271
  #
@@ -325,22 +297,33 @@ module Aws::SQS
325
297
  # * `MessageRetentionPeriod` – The length of time, in seconds, for
326
298
  # which Amazon SQS retains a message. Valid values: An integer from
327
299
  # 60 seconds (1 minute) to 1,209,600 seconds (14 days). Default:
328
- # 345,600 (4 days).
329
- #
330
- # * `Policy` The queue's policy. A valid AWS policy. For more
331
- # information about policy structure, see [Overview of AWS IAM
332
- # Policies][1] in the *Amazon IAM User Guide*.
300
+ # 345,600 (4 days). When you change a queue's attributes, the
301
+ # change can take up to 60 seconds for most of the attributes to
302
+ # propagate throughout the Amazon SQS system. Changes made to the
303
+ # `MessageRetentionPeriod` attribute can take up to 15 minutes and
304
+ # will impact existing messages in the queue potentially causing
305
+ # them to be expired and deleted if the `MessageRetentionPeriod` is
306
+ # reduced below the age of existing messages.
307
+ #
308
+ # * `Policy` – The queue's policy. A valid Amazon Web Services
309
+ # policy. For more information about policy structure, see [Overview
310
+ # of Amazon Web Services IAM Policies][1] in the *IAM User Guide*.
333
311
  #
334
312
  # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
335
313
  # for which a ` ReceiveMessage ` action waits for a message to
336
314
  # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
337
315
  # 0.
338
316
  #
317
+ # * `VisibilityTimeout` – The visibility timeout for the queue, in
318
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
319
+ # Default: 30. For more information about the visibility timeout,
320
+ # see [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
321
+ #
322
+ # The following attributes apply only to [dead-letter queues:][3]
323
+ #
339
324
  # * `RedrivePolicy` – The string that includes the parameters for the
340
325
  # dead-letter queue functionality of the source queue as a JSON
341
- # object. For more information about the redrive policy and
342
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2]
343
- # in the *Amazon Simple Queue Service Developer Guide*.
326
+ # object. The parameters are as follows:
344
327
  #
345
328
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
346
329
  # dead-letter queue to which Amazon SQS moves messages after the
@@ -348,59 +331,84 @@ module Aws::SQS
348
331
  #
349
332
  # * `maxReceiveCount` – The number of times a message is delivered
350
333
  # to the source queue before being moved to the dead-letter queue.
351
- # When the `ReceiveCount` for a message exceeds the
334
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
352
335
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
353
336
  # the dead-letter-queue.
337
+ # * `RedriveAllowPolicy` – The string that includes the parameters for
338
+ # the permissions for the dead-letter queue redrive permission and
339
+ # which source queues can specify dead-letter queues as a JSON
340
+ # object. The parameters are as follows:
341
+ #
342
+ # * `redrivePermission` – The permission type that defines which
343
+ # source queues can specify the current queue as the dead-letter
344
+ # queue. Valid values are:
345
+ #
346
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
347
+ # Services account in the same Region can specify this queue as
348
+ # the dead-letter queue.
349
+ #
350
+ # * `denyAll` – No source queues can specify this queue as the
351
+ # dead-letter queue.
352
+ #
353
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
354
+ # parameter can specify this queue as the dead-letter queue.
355
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
356
+ # source queues that can specify this queue as the dead-letter
357
+ # queue and redrive messages. You can specify this parameter only
358
+ # when the `redrivePermission` parameter is set to `byQueue`. You
359
+ # can specify up to 10 source queue ARNs. To allow more than 10
360
+ # source queues to specify dead-letter queues, set the
361
+ # `redrivePermission` parameter to `allowAll`.
362
+ #
363
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
364
+ # Similarly, the dead-letter queue of a standard queue must also be a
365
+ # standard queue.
354
366
  #
355
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
356
- # Similarly, the dead-letter queue of a standard queue must also be
357
- # a standard queue.
358
- #
359
- # </note>
360
- #
361
- # * `VisibilityTimeout` – The visibility timeout for the queue, in
362
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
363
- # Default: 30. For more information about the visibility timeout,
364
- # see [Visibility Timeout][3] in the *Amazon Simple Queue Service
365
- # Developer Guide*.
367
+ # </note>
366
368
  #
367
- # The following attributes apply only to [server-side-encryption][4]\:
369
+ # The following attributes apply only to [server-side-encryption][4]:
368
370
  #
369
- # * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
370
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
371
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
372
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
373
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
374
- # the *AWS Key Management Service API Reference*.
371
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed
372
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
373
+ # information, see [Key Terms][5]. While the alias of the Amazon Web
374
+ # Services managed CMK for Amazon SQS is always `alias/aws/sqs`, the
375
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
376
+ # more examples, see [KeyId][6] in the *Key Management Service API
377
+ # Reference*.
375
378
  #
376
379
  # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds,
377
380
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
378
- # decrypt messages before calling AWS KMS again. An integer
379
- # representing seconds, between 60 seconds (1 minute) and 86,400
380
- # seconds (24 hours). Default: 300 (5 minutes). A shorter time
381
- # period provides better security but results in more calls to KMS
382
- # which might incur charges after Free Tier. For more information,
383
- # see [How Does the Data Key Reuse Period Work?][8].
381
+ # decrypt messages before calling KMS again. An integer representing
382
+ # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
383
+ # hours). Default: 300 (5 minutes). A shorter time period provides
384
+ # better security but results in more calls to KMS which might incur
385
+ # charges after Free Tier. For more information, see [How Does the
386
+ # Data Key Reuse Period Work?][8]
387
+ #
388
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
389
+ # using SQS owned encryption keys. Only one server-side encryption
390
+ # option is supported per queue (for example, [SSE-KMS][9] or
391
+ # [SSE-SQS][10]).
384
392
  #
385
393
  # The following attributes apply only to [FIFO (first-in-first-out)
386
- # queues][9]\:
394
+ # queues][11]:
387
395
  #
388
- # * `FifoQueue` – Designates a queue as FIFO. Valid values: `true`,
389
- # `false`. If you don't specify the `FifoQueue` attribute, Amazon
390
- # SQS creates a standard queue. You can provide this attribute only
391
- # during queue creation. You can't change it for an existing queue.
392
- # When you set this attribute, you must also provide the
393
- # `MessageGroupId` for your messages explicitly.
396
+ # * `FifoQueue` – Designates a queue as FIFO. Valid values are `true`
397
+ # and `false`. If you don't specify the `FifoQueue` attribute,
398
+ # Amazon SQS creates a standard queue. You can provide this
399
+ # attribute only during queue creation. You can't change it for an
400
+ # existing queue. When you set this attribute, you must also provide
401
+ # the `MessageGroupId` for your messages explicitly.
394
402
  #
395
- # For more information, see [FIFO Queue Logic][10] in the *Amazon
396
- # Simple Queue Service Developer Guide*.
403
+ # For more information, see [FIFO queue logic][12] in the *Amazon
404
+ # SQS Developer Guide*.
397
405
  #
398
406
  # * `ContentBasedDeduplication` – Enables content-based deduplication.
399
- # Valid values: `true`, `false`. For more information, see
400
- # [Exactly-Once Processing][11] in the *Amazon Simple Queue Service
401
- # Developer Guide*.
407
+ # Valid values are `true` and `false`. For more information, see
408
+ # [Exactly-once processing][13] in the *Amazon SQS Developer Guide*.
409
+ # Note the following:
402
410
  #
403
- # * Every message must have a unique `MessageDeduplicationId`,
411
+ # * Every message must have a unique `MessageDeduplicationId`.
404
412
  #
405
413
  # * You may provide a `MessageDeduplicationId` explicitly.
406
414
  #
@@ -416,7 +424,6 @@ module Aws::SQS
416
424
  #
417
425
  # * If the queue has `ContentBasedDeduplication` set, your
418
426
  # `MessageDeduplicationId` overrides the generated one.
419
- #
420
427
  # * When `ContentBasedDeduplication` is in effect, messages with
421
428
  # identical content sent within the deduplication interval are
422
429
  # treated as duplicates and only one copy of the message is
@@ -428,25 +435,55 @@ module Aws::SQS
428
435
  # `MessageDeduplicationId`, the two messages are treated as
429
436
  # duplicates and only one copy of the message is delivered.
430
437
  #
438
+ # The following attributes apply only to [high throughput for FIFO
439
+ # queues][14]:
440
+ #
441
+ # * `DeduplicationScope` – Specifies whether message deduplication
442
+ # occurs at the message group or queue level. Valid values are
443
+ # `messageGroup` and `queue`.
444
+ #
445
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
446
+ # throughput quota applies to the entire queue or per message group.
447
+ # Valid values are `perQueue` and `perMessageGroupId`. The
448
+ # `perMessageGroupId` value is allowed only when the value for
449
+ # `DeduplicationScope` is `messageGroup`.
450
+ #
451
+ # To enable high throughput for FIFO queues, do the following:
452
+ #
453
+ # * Set `DeduplicationScope` to `messageGroup`.
454
+ #
455
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
456
+ #
457
+ # If you set these attributes to anything other than the values shown
458
+ # for enabling high throughput, normal throughput is in effect and
459
+ # deduplication occurs as specified.
460
+ #
461
+ # For information on throughput quotas, see [Quotas related to
462
+ # messages][15] in the *Amazon SQS Developer Guide*.
463
+ #
431
464
  #
432
465
  #
433
466
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
434
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
435
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
467
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
468
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
436
469
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
437
470
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
438
471
  # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
439
472
  # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
440
473
  # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
441
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
442
- # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
443
- # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
474
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
475
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
476
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
477
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
478
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
479
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
480
+ # [15]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
444
481
  # @return [Hash<String,String>]
445
482
  #
446
483
  # @!attribute [rw] tags
447
484
  # Add cost allocation tags to the specified Amazon SQS queue. For an
448
- # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon
449
- # Simple Queue Service Developer Guide*.
485
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
486
+ # Developer Guide*.
450
487
  #
451
488
  # When you use queue tags, keep the following guidelines in mind:
452
489
  #
@@ -460,15 +497,15 @@ module Aws::SQS
460
497
  # * A new tag with a key identical to that of an existing tag
461
498
  # overwrites the existing tag.
462
499
  #
463
- # For a full list of tag restrictions, see [Limits Related to
464
- # Queues][2] in the *Amazon Simple Queue Service Developer Guide*.
500
+ # For a full list of tag restrictions, see [Quotas related to
501
+ # queues][2] in the *Amazon SQS Developer Guide*.
465
502
  #
466
503
  # <note markdown="1"> To be able to tag a queue on creation, you must have the
467
504
  # `sqs:CreateQueue` and `sqs:TagQueue` permissions.
468
505
  #
469
506
  # Cross-account permissions don't apply to this action. For more
470
- # information, see [Grant Cross-Account Permissions to a Role and a
471
- # User Name][3] in the *Amazon Simple Queue Service Developer Guide*.
507
+ # information, see [Grant cross-account permissions to a role and a
508
+ # username][3] in the *Amazon SQS Developer Guide*.
472
509
  #
473
510
  # </note>
474
511
  #
@@ -503,19 +540,6 @@ module Aws::SQS
503
540
  include Aws::Structure
504
541
  end
505
542
 
506
- # @note When making an API call, you may pass DeleteMessageBatchRequest
507
- # data as a hash:
508
- #
509
- # {
510
- # queue_url: "String", # required
511
- # entries: [ # required
512
- # {
513
- # id: "String", # required
514
- # receipt_handle: "String", # required
515
- # },
516
- # ],
517
- # }
518
- #
519
543
  # @!attribute [rw] queue_url
520
544
  # The URL of the Amazon SQS queue from which messages are deleted.
521
545
  #
@@ -523,7 +547,7 @@ module Aws::SQS
523
547
  # @return [String]
524
548
  #
525
549
  # @!attribute [rw] entries
526
- # A list of receipt handles for the messages to be deleted.
550
+ # Lists the receipt handles for the messages to be deleted.
527
551
  # @return [Array<Types::DeleteMessageBatchRequestEntry>]
528
552
  #
529
553
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteMessageBatchRequest AWS API Documentation
@@ -537,16 +561,8 @@ module Aws::SQS
537
561
 
538
562
  # Encloses a receipt handle and an identifier for it.
539
563
  #
540
- # @note When making an API call, you may pass DeleteMessageBatchRequestEntry
541
- # data as a hash:
542
- #
543
- # {
544
- # id: "String", # required
545
- # receipt_handle: "String", # required
546
- # }
547
- #
548
564
  # @!attribute [rw] id
549
- # An identifier for this particular receipt handle. This is used to
565
+ # The identifier for this particular receipt handle. This is used to
550
566
  # communicate the result.
551
567
  #
552
568
  # <note markdown="1"> The `Id`s of a batch request need to be unique within a request.
@@ -606,14 +622,6 @@ module Aws::SQS
606
622
  include Aws::Structure
607
623
  end
608
624
 
609
- # @note When making an API call, you may pass DeleteMessageRequest
610
- # data as a hash:
611
- #
612
- # {
613
- # queue_url: "String", # required
614
- # receipt_handle: "String", # required
615
- # }
616
- #
617
625
  # @!attribute [rw] queue_url
618
626
  # The URL of the Amazon SQS queue from which messages are deleted.
619
627
  #
@@ -633,13 +641,6 @@ module Aws::SQS
633
641
  include Aws::Structure
634
642
  end
635
643
 
636
- # @note When making an API call, you may pass DeleteQueueRequest
637
- # data as a hash:
638
- #
639
- # {
640
- # queue_url: "String", # required
641
- # }
642
- #
643
644
  # @!attribute [rw] queue_url
644
645
  # The URL of the Amazon SQS queue to delete.
645
646
  #
@@ -656,18 +657,17 @@ module Aws::SQS
656
657
 
657
658
  # The batch request doesn't contain any entries.
658
659
  #
660
+ # @!attribute [rw] message
661
+ # @return [String]
662
+ #
659
663
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/EmptyBatchRequest AWS API Documentation
660
664
  #
661
- class EmptyBatchRequest < Aws::EmptyStructure; end
665
+ class EmptyBatchRequest < Struct.new(
666
+ :message)
667
+ SENSITIVE = []
668
+ include Aws::Structure
669
+ end
662
670
 
663
- # @note When making an API call, you may pass GetQueueAttributesRequest
664
- # data as a hash:
665
- #
666
- # {
667
- # queue_url: "String", # required
668
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
669
- # }
670
- #
671
671
  # @!attribute [rw] queue_url
672
672
  # The URL of the Amazon SQS queue whose attribute information is
673
673
  # retrieved.
@@ -678,6 +678,10 @@ module Aws::SQS
678
678
  # @!attribute [rw] attribute_names
679
679
  # A list of attributes for which to retrieve information.
680
680
  #
681
+ # The `AttributeNames` parameter is optional, but if you don't
682
+ # specify values for this parameter, the request returns empty
683
+ # results.
684
+ #
681
685
  # <note markdown="1"> In the future, new attributes might be added. If you write code that
682
686
  # calls this action, we recommend that you structure your code so that
683
687
  # it can handle new attributes gracefully.
@@ -688,10 +692,10 @@ module Aws::SQS
688
692
  #
689
693
  # The `ApproximateNumberOfMessagesDelayed`,
690
694
  # `ApproximateNumberOfMessagesNotVisible`, and
691
- # `ApproximateNumberOfMessagesVisible` metrics may not achieve
692
- # consistency until at least 1 minute after the producers stop sending
693
- # messages. This period is required for the queue metadata to reach
694
- # eventual consistency.
695
+ # `ApproximateNumberOfMessages` metrics may not achieve consistency
696
+ # until at least 1 minute after the producers stop sending messages.
697
+ # This period is required for the queue metadata to reach eventual
698
+ # consistency.
695
699
  #
696
700
  # * `All` – Returns all values.
697
701
  #
@@ -723,7 +727,14 @@ module Aws::SQS
723
727
  # message can contain before Amazon SQS rejects it.
724
728
  #
725
729
  # * `MessageRetentionPeriod` – Returns the length of time, in seconds,
726
- # for which Amazon SQS retains a message.
730
+ # for which Amazon SQS retains a message. When you change a queue's
731
+ # attributes, the change can take up to 60 seconds for most of the
732
+ # attributes to propagate throughout the Amazon SQS system. Changes
733
+ # made to the `MessageRetentionPeriod` attribute can take up to 15
734
+ # minutes and will impact existing messages in the queue potentially
735
+ # causing them to be expired and deleted if the
736
+ # `MessageRetentionPeriod` is reduced below the age of existing
737
+ # messages.
727
738
  #
728
739
  # * `Policy` – Returns the policy of the queue.
729
740
  #
@@ -733,11 +744,15 @@ module Aws::SQS
733
744
  # seconds, for which the `ReceiveMessage` action waits for a message
734
745
  # to arrive.
735
746
  #
747
+ # * `VisibilityTimeout` – Returns the visibility timeout for the
748
+ # queue. For more information about the visibility timeout, see
749
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
750
+ #
751
+ # The following attributes apply only to [dead-letter queues:][3]
752
+ #
736
753
  # * `RedrivePolicy` – The string that includes the parameters for the
737
754
  # dead-letter queue functionality of the source queue as a JSON
738
- # object. For more information about the redrive policy and
739
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2]
740
- # in the *Amazon Simple Queue Service Developer Guide*.
755
+ # object. The parameters are as follows:
741
756
  #
742
757
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
743
758
  # dead-letter queue to which Amazon SQS moves messages after the
@@ -745,54 +760,114 @@ module Aws::SQS
745
760
  #
746
761
  # * `maxReceiveCount` – The number of times a message is delivered
747
762
  # to the source queue before being moved to the dead-letter queue.
748
- # When the `ReceiveCount` for a message exceeds the
763
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
749
764
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
750
765
  # the dead-letter-queue.
766
+ # * `RedriveAllowPolicy` – The string that includes the parameters for
767
+ # the permissions for the dead-letter queue redrive permission and
768
+ # which source queues can specify dead-letter queues as a JSON
769
+ # object. The parameters are as follows:
770
+ #
771
+ # * `redrivePermission` – The permission type that defines which
772
+ # source queues can specify the current queue as the dead-letter
773
+ # queue. Valid values are:
774
+ #
775
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
776
+ # Services account in the same Region can specify this queue as
777
+ # the dead-letter queue.
778
+ #
779
+ # * `denyAll` – No source queues can specify this queue as the
780
+ # dead-letter queue.
781
+ #
782
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
783
+ # parameter can specify this queue as the dead-letter queue.
784
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
785
+ # source queues that can specify this queue as the dead-letter
786
+ # queue and redrive messages. You can specify this parameter only
787
+ # when the `redrivePermission` parameter is set to `byQueue`. You
788
+ # can specify up to 10 source queue ARNs. To allow more than 10
789
+ # source queues to specify dead-letter queues, set the
790
+ # `redrivePermission` parameter to `allowAll`.
791
+ #
792
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
793
+ # Similarly, the dead-letter queue of a standard queue must also be a
794
+ # standard queue.
751
795
  #
752
- # * `VisibilityTimeout` – Returns the visibility timeout for the
753
- # queue. For more information about the visibility timeout, see
754
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
755
- # Developer Guide*.
796
+ # </note>
756
797
  #
757
- # The following attributes apply only to [server-side-encryption][4]\:
798
+ # The following attributes apply only to [server-side-encryption][4]:
758
799
  #
759
- # * `KmsMasterKeyId` – Returns the ID of an AWS-managed customer
760
- # master key (CMK) for Amazon SQS or a custom CMK. For more
761
- # information, see [Key Terms][5].
800
+ # * `KmsMasterKeyId` – Returns the ID of an Amazon Web Services
801
+ # managed customer master key (CMK) for Amazon SQS or a custom CMK.
802
+ # For more information, see [Key Terms][5].
762
803
  #
763
804
  # * `KmsDataKeyReusePeriodSeconds` – Returns the length of time, in
764
805
  # seconds, for which Amazon SQS can reuse a data key to encrypt or
765
- # decrypt messages before calling AWS KMS again. For more
766
- # information, see [How Does the Data Key Reuse Period Work?][6].
806
+ # decrypt messages before calling KMS again. For more information,
807
+ # see [How Does the Data Key Reuse Period Work?][6].
808
+ #
809
+ # * `SqsManagedSseEnabled` – Returns information about whether the
810
+ # queue is using SSE-SQS encryption using SQS owned encryption keys.
811
+ # Only one server-side encryption option is supported per queue (for
812
+ # example, [SSE-KMS][7] or [SSE-SQS][8]).
767
813
  #
768
814
  # The following attributes apply only to [FIFO (first-in-first-out)
769
- # queues][7]\:
815
+ # queues][9]:
770
816
  #
771
- # * `FifoQueue` – Returns whether the queue is FIFO. For more
772
- # information, see [FIFO Queue Logic][8] in the *Amazon Simple Queue
773
- # Service Developer Guide*.
817
+ # * `FifoQueue` – Returns information about whether the queue is FIFO.
818
+ # For more information, see [FIFO queue logic][10] in the *Amazon
819
+ # SQS Developer Guide*.
774
820
  #
775
- # <note markdown="1"> To determine whether a queue is [FIFO][7], you can check whether
821
+ # <note markdown="1"> To determine whether a queue is [FIFO][9], you can check whether
776
822
  # `QueueName` ends with the `.fifo` suffix.
777
823
  #
778
824
  # </note>
779
825
  #
780
826
  # * `ContentBasedDeduplication` – Returns whether content-based
781
827
  # deduplication is enabled for the queue. For more information, see
782
- # [Exactly-Once Processing][9] in the *Amazon Simple Queue Service
783
- # Developer Guide*.
828
+ # [Exactly-once processing][11] in the *Amazon SQS Developer Guide*.
829
+ #
830
+ # The following attributes apply only to [high throughput for FIFO
831
+ # queues][12]:
832
+ #
833
+ # * `DeduplicationScope` – Specifies whether message deduplication
834
+ # occurs at the message group or queue level. Valid values are
835
+ # `messageGroup` and `queue`.
836
+ #
837
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
838
+ # throughput quota applies to the entire queue or per message group.
839
+ # Valid values are `perQueue` and `perMessageGroupId`. The
840
+ # `perMessageGroupId` value is allowed only when the value for
841
+ # `DeduplicationScope` is `messageGroup`.
842
+ #
843
+ # To enable high throughput for FIFO queues, do the following:
844
+ #
845
+ # * Set `DeduplicationScope` to `messageGroup`.
846
+ #
847
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
848
+ #
849
+ # If you set these attributes to anything other than the values shown
850
+ # for enabling high throughput, normal throughput is in effect and
851
+ # deduplication occurs as specified.
852
+ #
853
+ # For information on throughput quotas, see [Quotas related to
854
+ # messages][13] in the *Amazon SQS Developer Guide*.
784
855
  #
785
856
  #
786
857
  #
787
858
  # [1]: http://en.wikipedia.org/wiki/Unix_time
788
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
789
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
859
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
860
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
790
861
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
791
862
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
792
863
  # [6]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
793
- # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
794
- # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
795
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
864
+ # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
865
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
866
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
867
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
868
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
869
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
870
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
796
871
  # @return [Array<String>]
797
872
  #
798
873
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueAttributesRequest AWS API Documentation
@@ -818,14 +893,6 @@ module Aws::SQS
818
893
  include Aws::Structure
819
894
  end
820
895
 
821
- # @note When making an API call, you may pass GetQueueUrlRequest
822
- # data as a hash:
823
- #
824
- # {
825
- # queue_name: "String", # required
826
- # queue_owner_aws_account_id: "String",
827
- # }
828
- #
829
896
  # @!attribute [rw] queue_name
830
897
  # The name of the queue whose URL must be fetched. Maximum 80
831
898
  # characters. Valid values: alphanumeric characters, hyphens (`-`),
@@ -835,7 +902,8 @@ module Aws::SQS
835
902
  # @return [String]
836
903
  #
837
904
  # @!attribute [rw] queue_owner_aws_account_id
838
- # The AWS account ID of the account that created the queue.
905
+ # The Amazon Web Services account ID of the account that created the
906
+ # queue.
839
907
  # @return [String]
840
908
  #
841
909
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlRequest AWS API Documentation
@@ -848,7 +916,7 @@ module Aws::SQS
848
916
  end
849
917
 
850
918
  # For more information, see [Interpreting Responses][1] in the *Amazon
851
- # Simple Queue Service Developer Guide*.
919
+ # SQS Developer Guide*.
852
920
  #
853
921
  #
854
922
  #
@@ -866,18 +934,58 @@ module Aws::SQS
866
934
  include Aws::Structure
867
935
  end
868
936
 
937
+ # The `accountId` is invalid.
938
+ #
939
+ # @!attribute [rw] message
940
+ # @return [String]
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAddress AWS API Documentation
943
+ #
944
+ class InvalidAddress < Struct.new(
945
+ :message)
946
+ SENSITIVE = []
947
+ include Aws::Structure
948
+ end
949
+
869
950
  # The specified attribute doesn't exist.
870
951
  #
952
+ # @!attribute [rw] message
953
+ # @return [String]
954
+ #
871
955
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeName AWS API Documentation
872
956
  #
873
- class InvalidAttributeName < Aws::EmptyStructure; end
957
+ class InvalidAttributeName < Struct.new(
958
+ :message)
959
+ SENSITIVE = []
960
+ include Aws::Structure
961
+ end
962
+
963
+ # A queue attribute value is invalid.
964
+ #
965
+ # @!attribute [rw] message
966
+ # @return [String]
967
+ #
968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeValue AWS API Documentation
969
+ #
970
+ class InvalidAttributeValue < Struct.new(
971
+ :message)
972
+ SENSITIVE = []
973
+ include Aws::Structure
974
+ end
874
975
 
875
976
  # The `Id` of a batch entry in a batch request doesn't abide by the
876
977
  # specification.
877
978
  #
979
+ # @!attribute [rw] message
980
+ # @return [String]
981
+ #
878
982
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidBatchEntryId AWS API Documentation
879
983
  #
880
- class InvalidBatchEntryId < Aws::EmptyStructure; end
984
+ class InvalidBatchEntryId < Struct.new(
985
+ :message)
986
+ SENSITIVE = []
987
+ include Aws::Structure
988
+ end
881
989
 
882
990
  # The specified receipt handle isn't valid for the current version.
883
991
  #
@@ -887,19 +995,132 @@ module Aws::SQS
887
995
 
888
996
  # The message contains characters outside the allowed set.
889
997
  #
998
+ # @!attribute [rw] message
999
+ # @return [String]
1000
+ #
890
1001
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidMessageContents AWS API Documentation
891
1002
  #
892
- class InvalidMessageContents < Aws::EmptyStructure; end
1003
+ class InvalidMessageContents < Struct.new(
1004
+ :message)
1005
+ SENSITIVE = []
1006
+ include Aws::Structure
1007
+ end
1008
+
1009
+ # When the request to a queue is not HTTPS and SigV4.
1010
+ #
1011
+ # @!attribute [rw] message
1012
+ # @return [String]
1013
+ #
1014
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidSecurity AWS API Documentation
1015
+ #
1016
+ class InvalidSecurity < Struct.new(
1017
+ :message)
1018
+ SENSITIVE = []
1019
+ include Aws::Structure
1020
+ end
1021
+
1022
+ # The caller doesn't have the required KMS access.
1023
+ #
1024
+ # @!attribute [rw] message
1025
+ # @return [String]
1026
+ #
1027
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsAccessDenied AWS API Documentation
1028
+ #
1029
+ class KmsAccessDenied < Struct.new(
1030
+ :message)
1031
+ SENSITIVE = []
1032
+ include Aws::Structure
1033
+ end
1034
+
1035
+ # The request was denied due to request throttling.
1036
+ #
1037
+ # @!attribute [rw] message
1038
+ # @return [String]
1039
+ #
1040
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsDisabled AWS API Documentation
1041
+ #
1042
+ class KmsDisabled < Struct.new(
1043
+ :message)
1044
+ SENSITIVE = []
1045
+ include Aws::Structure
1046
+ end
1047
+
1048
+ # The request was rejected for one of the following reasons:
1049
+ #
1050
+ # * The KeyUsage value of the KMS key is incompatible with the API
1051
+ # operation.
1052
+ #
1053
+ # * The encryption algorithm or signing algorithm specified for the
1054
+ # operation is incompatible with the type of key material in the KMS
1055
+ # key (KeySpec).
1056
+ #
1057
+ # @!attribute [rw] message
1058
+ # @return [String]
1059
+ #
1060
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidKeyUsage AWS API Documentation
1061
+ #
1062
+ class KmsInvalidKeyUsage < Struct.new(
1063
+ :message)
1064
+ SENSITIVE = []
1065
+ include Aws::Structure
1066
+ end
1067
+
1068
+ # The request was rejected because the state of the specified resource
1069
+ # is not valid for this request.
1070
+ #
1071
+ # @!attribute [rw] message
1072
+ # @return [String]
1073
+ #
1074
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidState AWS API Documentation
1075
+ #
1076
+ class KmsInvalidState < Struct.new(
1077
+ :message)
1078
+ SENSITIVE = []
1079
+ include Aws::Structure
1080
+ end
1081
+
1082
+ # The request was rejected because the specified entity or resource
1083
+ # could not be found.
1084
+ #
1085
+ # @!attribute [rw] message
1086
+ # @return [String]
1087
+ #
1088
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsNotFound AWS API Documentation
1089
+ #
1090
+ class KmsNotFound < Struct.new(
1091
+ :message)
1092
+ SENSITIVE = []
1093
+ include Aws::Structure
1094
+ end
1095
+
1096
+ # The request was rejected because the specified key policy isn't
1097
+ # syntactically or semantically correct.
1098
+ #
1099
+ # @!attribute [rw] message
1100
+ # @return [String]
1101
+ #
1102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsOptInRequired AWS API Documentation
1103
+ #
1104
+ class KmsOptInRequired < Struct.new(
1105
+ :message)
1106
+ SENSITIVE = []
1107
+ include Aws::Structure
1108
+ end
893
1109
 
894
- # @note When making an API call, you may pass ListDeadLetterSourceQueuesRequest
895
- # data as a hash:
1110
+ # Amazon Web Services KMS throttles requests for the following
1111
+ # conditions.
896
1112
  #
897
- # {
898
- # queue_url: "String", # required
899
- # next_token: "Token",
900
- # max_results: 1,
901
- # }
1113
+ # @!attribute [rw] message
1114
+ # @return [String]
902
1115
  #
1116
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsThrottled AWS API Documentation
1117
+ #
1118
+ class KmsThrottled < Struct.new(
1119
+ :message)
1120
+ SENSITIVE = []
1121
+ include Aws::Structure
1122
+ end
1123
+
903
1124
  # @!attribute [rw] queue_url
904
1125
  # The URL of a dead-letter queue.
905
1126
  #
@@ -911,7 +1132,9 @@ module Aws::SQS
911
1132
  # @return [String]
912
1133
  #
913
1134
  # @!attribute [rw] max_results
914
- # Maximum number of results to include in the response.
1135
+ # Maximum number of results to include in the response. Value range is
1136
+ # 1 to 1000. You must set `MaxResults` to receive a value for
1137
+ # `NextToken` in the response.
915
1138
  # @return [Integer]
916
1139
  #
917
1140
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesRequest AWS API Documentation
@@ -932,7 +1155,9 @@ module Aws::SQS
932
1155
  # @return [Array<String>]
933
1156
  #
934
1157
  # @!attribute [rw] next_token
935
- # Pagination token to include in the next request.
1158
+ # Pagination token to include in the next request. Token value is
1159
+ # `null` if there are no additional results to request, or if you did
1160
+ # not set `MaxResults` in the request.
936
1161
  # @return [String]
937
1162
  #
938
1163
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesResult AWS API Documentation
@@ -944,13 +1169,107 @@ module Aws::SQS
944
1169
  include Aws::Structure
945
1170
  end
946
1171
 
947
- # @note When making an API call, you may pass ListQueueTagsRequest
948
- # data as a hash:
1172
+ # @!attribute [rw] source_arn
1173
+ # The ARN of the queue whose message movement tasks are to be listed.
1174
+ # @return [String]
1175
+ #
1176
+ # @!attribute [rw] max_results
1177
+ # The maximum number of results to include in the response. The
1178
+ # default is 1, which provides the most recent message movement task.
1179
+ # The upper limit is 10.
1180
+ # @return [Integer]
1181
+ #
1182
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksRequest AWS API Documentation
1183
+ #
1184
+ class ListMessageMoveTasksRequest < Struct.new(
1185
+ :source_arn,
1186
+ :max_results)
1187
+ SENSITIVE = []
1188
+ include Aws::Structure
1189
+ end
1190
+
1191
+ # @!attribute [rw] results
1192
+ # A list of message movement tasks and their attributes.
1193
+ # @return [Array<Types::ListMessageMoveTasksResultEntry>]
1194
+ #
1195
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksResult AWS API Documentation
1196
+ #
1197
+ class ListMessageMoveTasksResult < Struct.new(
1198
+ :results)
1199
+ SENSITIVE = []
1200
+ include Aws::Structure
1201
+ end
1202
+
1203
+ # Contains the details of a message movement task.
1204
+ #
1205
+ # @!attribute [rw] task_handle
1206
+ # An identifier associated with a message movement task. When this
1207
+ # field is returned in the response of the `ListMessageMoveTasks`
1208
+ # action, it is only populated for tasks that are in RUNNING status.
1209
+ # @return [String]
1210
+ #
1211
+ # @!attribute [rw] status
1212
+ # The status of the message movement task. Possible values are:
1213
+ # RUNNING, COMPLETED, CANCELLING, CANCELLED, and FAILED.
1214
+ # @return [String]
1215
+ #
1216
+ # @!attribute [rw] source_arn
1217
+ # The ARN of the queue that contains the messages to be moved to
1218
+ # another queue.
1219
+ # @return [String]
1220
+ #
1221
+ # @!attribute [rw] destination_arn
1222
+ # The ARN of the destination queue if it has been specified in the
1223
+ # `StartMessageMoveTask` request. If a `DestinationArn` has not been
1224
+ # specified in the `StartMessageMoveTask` request, this field value
1225
+ # will be NULL.
1226
+ # @return [String]
1227
+ #
1228
+ # @!attribute [rw] max_number_of_messages_per_second
1229
+ # The number of messages to be moved per second (the message movement
1230
+ # rate), if it has been specified in the `StartMessageMoveTask`
1231
+ # request. If a `MaxNumberOfMessagesPerSecond` has not been specified
1232
+ # in the `StartMessageMoveTask` request, this field value will be
1233
+ # NULL.
1234
+ # @return [Integer]
1235
+ #
1236
+ # @!attribute [rw] approximate_number_of_messages_moved
1237
+ # The approximate number of messages already moved to the destination
1238
+ # queue.
1239
+ # @return [Integer]
1240
+ #
1241
+ # @!attribute [rw] approximate_number_of_messages_to_move
1242
+ # The number of messages to be moved from the source queue. This
1243
+ # number is obtained at the time of starting the message movement task
1244
+ # and is only included after the message movement task is selected to
1245
+ # start.
1246
+ # @return [Integer]
1247
+ #
1248
+ # @!attribute [rw] failure_reason
1249
+ # The task failure reason (only included if the task status is
1250
+ # FAILED).
1251
+ # @return [String]
949
1252
  #
950
- # {
951
- # queue_url: "String", # required
952
- # }
1253
+ # @!attribute [rw] started_timestamp
1254
+ # The timestamp of starting the message movement task.
1255
+ # @return [Integer]
953
1256
  #
1257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksResultEntry AWS API Documentation
1258
+ #
1259
+ class ListMessageMoveTasksResultEntry < Struct.new(
1260
+ :task_handle,
1261
+ :status,
1262
+ :source_arn,
1263
+ :destination_arn,
1264
+ :max_number_of_messages_per_second,
1265
+ :approximate_number_of_messages_moved,
1266
+ :approximate_number_of_messages_to_move,
1267
+ :failure_reason,
1268
+ :started_timestamp)
1269
+ SENSITIVE = []
1270
+ include Aws::Structure
1271
+ end
1272
+
954
1273
  # @!attribute [rw] queue_url
955
1274
  # The URL of the queue.
956
1275
  # @return [String]
@@ -975,15 +1294,6 @@ module Aws::SQS
975
1294
  include Aws::Structure
976
1295
  end
977
1296
 
978
- # @note When making an API call, you may pass ListQueuesRequest
979
- # data as a hash:
980
- #
981
- # {
982
- # queue_name_prefix: "String",
983
- # next_token: "Token",
984
- # max_results: 1,
985
- # }
986
- #
987
1297
  # @!attribute [rw] queue_name_prefix
988
1298
  # A string to use for filtering the list results. Only those queues
989
1299
  # whose name begins with the specified string are returned.
@@ -996,7 +1306,9 @@ module Aws::SQS
996
1306
  # @return [String]
997
1307
  #
998
1308
  # @!attribute [rw] max_results
999
- # Maximum number of results to include in the response.
1309
+ # Maximum number of results to include in the response. Value range is
1310
+ # 1 to 1000. You must set `MaxResults` to receive a value for
1311
+ # `NextToken` in the response.
1000
1312
  # @return [Integer]
1001
1313
  #
1002
1314
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesRequest AWS API Documentation
@@ -1013,11 +1325,13 @@ module Aws::SQS
1013
1325
  #
1014
1326
  # @!attribute [rw] queue_urls
1015
1327
  # A list of queue URLs, up to 1,000 entries, or the value of
1016
- # MaxResults that you sent in the request.
1328
+ # `MaxResults` that you sent in the request.
1017
1329
  # @return [Array<String>]
1018
1330
  #
1019
1331
  # @!attribute [rw] next_token
1020
- # Pagination token to include in the next request.
1332
+ # Pagination token to include in the next request. Token value is
1333
+ # `null` if there are no additional results to request, or if you did
1334
+ # not set `MaxResults` in the request.
1021
1335
  # @return [String]
1022
1336
  #
1023
1337
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesResult AWS API Documentation
@@ -1033,7 +1347,8 @@ module Aws::SQS
1033
1347
  #
1034
1348
  # @!attribute [rw] message_id
1035
1349
  # A unique identifier for the message. A `MessageId`is considered
1036
- # unique across all AWS accounts for an extended period of time.
1350
+ # unique across all Amazon Web Services accounts for an extended
1351
+ # period of time.
1037
1352
  # @return [String]
1038
1353
  #
1039
1354
  # @!attribute [rw] receipt_handle
@@ -1092,12 +1407,12 @@ module Aws::SQS
1092
1407
  #
1093
1408
  # @!attribute [rw] message_attributes
1094
1409
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1095
- # For more information, see [Amazon SQS Message Attributes][1] in the
1096
- # *Amazon Simple Queue Service Developer Guide*.
1410
+ # For more information, see [Amazon SQS message attributes][1] in the
1411
+ # *Amazon SQS Developer Guide*.
1097
1412
  #
1098
1413
  #
1099
1414
  #
1100
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1415
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1101
1416
  # @return [Hash<String,Types::MessageAttributeValue>]
1102
1417
  #
1103
1418
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/Message AWS API Documentation
@@ -1120,20 +1435,9 @@ module Aws::SQS
1120
1435
  #
1121
1436
  # `Name`, `type`, `value` and the message body must not be empty or
1122
1437
  # null. All parts of the message attribute, including `Name`, `Type`,
1123
- # and `Value`, are part of the message size restriction (256 KB or
1438
+ # and `Value`, are part of the message size restriction (256 KiB or
1124
1439
  # 262,144 bytes).
1125
1440
  #
1126
- # @note When making an API call, you may pass MessageAttributeValue
1127
- # data as a hash:
1128
- #
1129
- # {
1130
- # string_value: "String",
1131
- # binary_value: "data",
1132
- # string_list_values: ["String"],
1133
- # binary_list_values: ["data"],
1134
- # data_type: "String", # required
1135
- # }
1136
- #
1137
1441
  # @!attribute [rw] string_value
1138
1442
  # Strings are Unicode with UTF-8 binary encoding. For a list of code
1139
1443
  # values, see [ASCII Printable Characters][1].
@@ -1162,12 +1466,11 @@ module Aws::SQS
1162
1466
  # `StringValue`.
1163
1467
  #
1164
1468
  # You can also append custom labels. For more information, see [Amazon
1165
- # SQS Message Attributes][1] in the *Amazon Simple Queue Service
1166
- # Developer Guide*.
1469
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1167
1470
  #
1168
1471
  #
1169
1472
  #
1170
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1473
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1171
1474
  # @return [String]
1172
1475
  #
1173
1476
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageAttributeValue AWS API Documentation
@@ -1195,17 +1498,6 @@ module Aws::SQS
1195
1498
  # `Name`, `type`, `value` and the message body must not be empty or
1196
1499
  # null.
1197
1500
  #
1198
- # @note When making an API call, you may pass MessageSystemAttributeValue
1199
- # data as a hash:
1200
- #
1201
- # {
1202
- # string_value: "String",
1203
- # binary_value: "data",
1204
- # string_list_values: ["String"],
1205
- # binary_list_values: ["data"],
1206
- # data_type: "String", # required
1207
- # }
1208
- #
1209
1501
  # @!attribute [rw] string_value
1210
1502
  # Strings are Unicode with UTF-8 binary encoding. For a list of code
1211
1503
  # values, see [ASCII Printable Characters][1].
@@ -1234,12 +1526,11 @@ module Aws::SQS
1234
1526
  # `StringValue`.
1235
1527
  #
1236
1528
  # You can also append custom labels. For more information, see [Amazon
1237
- # SQS Message Attributes][1] in the *Amazon Simple Queue Service
1238
- # Developer Guide*.
1529
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1239
1530
  #
1240
1531
  #
1241
1532
  #
1242
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1533
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1243
1534
  # @return [String]
1244
1535
  #
1245
1536
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageSystemAttributeValue AWS API Documentation
@@ -1255,29 +1546,36 @@ module Aws::SQS
1255
1546
  end
1256
1547
 
1257
1548
  # The specified action violates a limit. For example, `ReceiveMessage`
1258
- # returns this error if the maximum number of inflight messages is
1549
+ # returns this error if the maximum number of in flight messages is
1259
1550
  # reached and `AddPermission` returns this error if the maximum number
1260
1551
  # of permissions for the queue is reached.
1261
1552
  #
1553
+ # @!attribute [rw] message
1554
+ # @return [String]
1555
+ #
1262
1556
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/OverLimit AWS API Documentation
1263
1557
  #
1264
- class OverLimit < Aws::EmptyStructure; end
1558
+ class OverLimit < Struct.new(
1559
+ :message)
1560
+ SENSITIVE = []
1561
+ include Aws::Structure
1562
+ end
1265
1563
 
1266
1564
  # Indicates that the specified queue previously received a `PurgeQueue`
1267
1565
  # request within the last 60 seconds (the time it can take to delete the
1268
1566
  # messages in the queue).
1269
1567
  #
1568
+ # @!attribute [rw] message
1569
+ # @return [String]
1570
+ #
1270
1571
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueueInProgress AWS API Documentation
1271
1572
  #
1272
- class PurgeQueueInProgress < Aws::EmptyStructure; end
1573
+ class PurgeQueueInProgress < Struct.new(
1574
+ :message)
1575
+ SENSITIVE = []
1576
+ include Aws::Structure
1577
+ end
1273
1578
 
1274
- # @note When making an API call, you may pass PurgeQueueRequest
1275
- # data as a hash:
1276
- #
1277
- # {
1278
- # queue_url: "String", # required
1279
- # }
1280
- #
1281
1579
  # @!attribute [rw] queue_url
1282
1580
  # The URL of the queue from which the `PurgeQueue` action deletes
1283
1581
  # messages.
@@ -1296,43 +1594,58 @@ module Aws::SQS
1296
1594
  # You must wait 60 seconds after deleting a queue before you can create
1297
1595
  # another queue with the same name.
1298
1596
  #
1597
+ # @!attribute [rw] message
1598
+ # @return [String]
1599
+ #
1299
1600
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDeletedRecently AWS API Documentation
1300
1601
  #
1301
- class QueueDeletedRecently < Aws::EmptyStructure; end
1602
+ class QueueDeletedRecently < Struct.new(
1603
+ :message)
1604
+ SENSITIVE = []
1605
+ include Aws::Structure
1606
+ end
1302
1607
 
1303
1608
  # The specified queue doesn't exist.
1304
1609
  #
1610
+ # @!attribute [rw] message
1611
+ # @return [String]
1612
+ #
1305
1613
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDoesNotExist AWS API Documentation
1306
1614
  #
1307
- class QueueDoesNotExist < Aws::EmptyStructure; end
1615
+ class QueueDoesNotExist < Struct.new(
1616
+ :message)
1617
+ SENSITIVE = []
1618
+ include Aws::Structure
1619
+ end
1308
1620
 
1309
1621
  # A queue with this name already exists. Amazon SQS returns this error
1310
1622
  # only if the request includes attributes whose values differ from those
1311
1623
  # of the existing queue.
1312
1624
  #
1625
+ # @!attribute [rw] message
1626
+ # @return [String]
1627
+ #
1313
1628
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueNameExists AWS API Documentation
1314
1629
  #
1315
- class QueueNameExists < Aws::EmptyStructure; end
1630
+ class QueueNameExists < Struct.new(
1631
+ :message)
1632
+ SENSITIVE = []
1633
+ include Aws::Structure
1634
+ end
1316
1635
 
1317
1636
  # The specified receipt handle isn't valid.
1318
1637
  #
1638
+ # @!attribute [rw] message
1639
+ # @return [String]
1640
+ #
1319
1641
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiptHandleIsInvalid AWS API Documentation
1320
1642
  #
1321
- class ReceiptHandleIsInvalid < Aws::EmptyStructure; end
1643
+ class ReceiptHandleIsInvalid < Struct.new(
1644
+ :message)
1645
+ SENSITIVE = []
1646
+ include Aws::Structure
1647
+ end
1322
1648
 
1323
- # @note When making an API call, you may pass ReceiveMessageRequest
1324
- # data as a hash:
1325
- #
1326
- # {
1327
- # queue_url: "String", # required
1328
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
1329
- # message_attribute_names: ["MessageAttributeName"],
1330
- # max_number_of_messages: 1,
1331
- # visibility_timeout: 1,
1332
- # wait_time_seconds: 1,
1333
- # receive_request_attempt_id: "String",
1334
- # }
1335
- #
1336
1649
  # @!attribute [rw] queue_url
1337
1650
  # The URL of the Amazon SQS queue from which messages are received.
1338
1651
  #
@@ -1340,6 +1653,10 @@ module Aws::SQS
1340
1653
  # @return [String]
1341
1654
  #
1342
1655
  # @!attribute [rw] attribute_names
1656
+ # This parameter has been deprecated but will be supported for
1657
+ # backward compatibility. To provide attribute names, you are
1658
+ # encouraged to use `MessageSystemAttributeNames`.
1659
+ #
1343
1660
  # A list of attributes that need to be returned along with each
1344
1661
  # message. These attributes include:
1345
1662
  #
@@ -1352,19 +1669,69 @@ module Aws::SQS
1352
1669
  # * `ApproximateReceiveCount` – Returns the number of times a message
1353
1670
  # has been received across all queues but not deleted.
1354
1671
  #
1355
- # * `AWSTraceHeader` – Returns the AWS X-Ray trace header string.
1672
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1356
1673
  #
1357
1674
  # * `SenderId`
1358
1675
  #
1359
- # * For an IAM user, returns the IAM user ID, for example
1676
+ # * For a user, returns the user ID, for example
1360
1677
  # `ABCDEFGHI1JKLMNOPQ23R`.
1361
1678
  #
1362
1679
  # * For an IAM role, returns the IAM role ID, for example
1363
1680
  # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1681
+ # * `SentTimestamp` – Returns the time the message was sent to the
1682
+ # queue ([epoch time][1] in milliseconds).
1683
+ #
1684
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
1685
+ # using SQS owned encryption keys. Only one server-side encryption
1686
+ # option is supported per queue (for example, [SSE-KMS][2] or
1687
+ # [SSE-SQS][3]).
1688
+ #
1689
+ # * `MessageDeduplicationId` – Returns the value provided by the
1690
+ # producer that calls the ` SendMessage ` action.
1691
+ #
1692
+ # * `MessageGroupId` – Returns the value provided by the producer that
1693
+ # calls the ` SendMessage ` action. Messages with the same
1694
+ # `MessageGroupId` are returned in sequence.
1695
+ #
1696
+ # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1697
+ #
1698
+ #
1699
+ #
1700
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
1701
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1702
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1703
+ # @return [Array<String>]
1704
+ #
1705
+ # @!attribute [rw] message_system_attribute_names
1706
+ # A list of attributes that need to be returned along with each
1707
+ # message. These attributes include:
1708
+ #
1709
+ # * `All` – Returns all values.
1710
+ #
1711
+ # * `ApproximateFirstReceiveTimestamp` – Returns the time the message
1712
+ # was first received from the queue ([epoch time][1] in
1713
+ # milliseconds).
1714
+ #
1715
+ # * `ApproximateReceiveCount` – Returns the number of times a message
1716
+ # has been received across all queues but not deleted.
1717
+ #
1718
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1364
1719
  #
1720
+ # * `SenderId`
1721
+ #
1722
+ # * For a user, returns the user ID, for example
1723
+ # `ABCDEFGHI1JKLMNOPQ23R`.
1724
+ #
1725
+ # * For an IAM role, returns the IAM role ID, for example
1726
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1365
1727
  # * `SentTimestamp` – Returns the time the message was sent to the
1366
1728
  # queue ([epoch time][1] in milliseconds).
1367
1729
  #
1730
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
1731
+ # using SQS owned encryption keys. Only one server-side encryption
1732
+ # option is supported per queue (for example, [SSE-KMS][2] or
1733
+ # [SSE-SQS][3]).
1734
+ #
1368
1735
  # * `MessageDeduplicationId` – Returns the value provided by the
1369
1736
  # producer that calls the ` SendMessage ` action.
1370
1737
  #
@@ -1377,6 +1744,8 @@ module Aws::SQS
1377
1744
  #
1378
1745
  #
1379
1746
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1747
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1748
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1380
1749
  # @return [Array<String>]
1381
1750
  #
1382
1751
  # @!attribute [rw] message_attribute_names
@@ -1418,8 +1787,8 @@ module Aws::SQS
1418
1787
  # The duration (in seconds) for which the call waits for a message to
1419
1788
  # arrive in the queue before returning. If a message is available, the
1420
1789
  # call returns sooner than `WaitTimeSeconds`. If no messages are
1421
- # available and the wait time expires, the call returns successfully
1422
- # with an empty list of messages.
1790
+ # available and the wait time expires, the call does not return a
1791
+ # message list.
1423
1792
  #
1424
1793
  # To avoid HTTP errors, ensure that the HTTP response timeout for
1425
1794
  # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
@@ -1450,10 +1819,6 @@ module Aws::SQS
1450
1819
  # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1451
1820
  # can provide a `ReceiveRequestAttemptId` explicitly.
1452
1821
  #
1453
- # * If a caller of the `ReceiveMessage` action doesn't provide a
1454
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
1455
- # `ReceiveRequestAttemptId`.
1456
- #
1457
1822
  # * It is possible to retry the `ReceiveMessage` action with the same
1458
1823
  # `ReceiveRequestAttemptId` if none of the messages have been
1459
1824
  # modified (deleted or had their visibility changes).
@@ -1462,8 +1827,7 @@ module Aws::SQS
1462
1827
  # `ReceiveRequestAttemptId` return the same messages and receipt
1463
1828
  # handles. If a retry occurs within the deduplication interval, it
1464
1829
  # resets the visibility timeout. For more information, see
1465
- # [Visibility Timeout][1] in the *Amazon Simple Queue Service
1466
- # Developer Guide*.
1830
+ # [Visibility Timeout][1] in the *Amazon SQS Developer Guide*.
1467
1831
  #
1468
1832
  # If a caller of the `ReceiveMessage` action still processes
1469
1833
  # messages when the visibility timeout expires and messages become
@@ -1491,11 +1855,11 @@ module Aws::SQS
1491
1855
  # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1492
1856
  # `ReceiveRequestAttemptId` can contain alphanumeric characters
1493
1857
  # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1494
- # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1858
+ # !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ``).
1495
1859
  #
1496
1860
  # For best practices of using `ReceiveRequestAttemptId`, see [Using
1497
- # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
1498
- # Simple Queue Service Developer Guide*.
1861
+ # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
1862
+ # Developer Guide*.
1499
1863
  #
1500
1864
  #
1501
1865
  #
@@ -1508,6 +1872,7 @@ module Aws::SQS
1508
1872
  class ReceiveMessageRequest < Struct.new(
1509
1873
  :queue_url,
1510
1874
  :attribute_names,
1875
+ :message_system_attribute_names,
1511
1876
  :message_attribute_names,
1512
1877
  :max_number_of_messages,
1513
1878
  :visibility_timeout,
@@ -1531,14 +1896,6 @@ module Aws::SQS
1531
1896
  include Aws::Structure
1532
1897
  end
1533
1898
 
1534
- # @note When making an API call, you may pass RemovePermissionRequest
1535
- # data as a hash:
1536
- #
1537
- # {
1538
- # queue_url: "String", # required
1539
- # label: "String", # required
1540
- # }
1541
- #
1542
1899
  # @!attribute [rw] queue_url
1543
1900
  # The URL of the Amazon SQS queue from which permissions are removed.
1544
1901
  #
@@ -1559,40 +1916,45 @@ module Aws::SQS
1559
1916
  include Aws::Structure
1560
1917
  end
1561
1918
 
1562
- # @note When making an API call, you may pass SendMessageBatchRequest
1563
- # data as a hash:
1564
- #
1565
- # {
1566
- # queue_url: "String", # required
1567
- # entries: [ # required
1568
- # {
1569
- # id: "String", # required
1570
- # message_body: "String", # required
1571
- # delay_seconds: 1,
1572
- # message_attributes: {
1573
- # "String" => {
1574
- # string_value: "String",
1575
- # binary_value: "data",
1576
- # string_list_values: ["String"],
1577
- # binary_list_values: ["data"],
1578
- # data_type: "String", # required
1579
- # },
1580
- # },
1581
- # message_system_attributes: {
1582
- # "AWSTraceHeader" => {
1583
- # string_value: "String",
1584
- # binary_value: "data",
1585
- # string_list_values: ["String"],
1586
- # binary_list_values: ["data"],
1587
- # data_type: "String", # required
1588
- # },
1589
- # },
1590
- # message_deduplication_id: "String",
1591
- # message_group_id: "String",
1592
- # },
1593
- # ],
1594
- # }
1919
+ # The request was denied due to request throttling.
1920
+ #
1921
+ # * The rate of requests per second exceeds the Amazon Web Services KMS
1922
+ # request quota for an account and Region.
1923
+ #
1924
+ # * A burst or sustained high rate of requests to change the state of
1925
+ # the same KMS key. This condition is often known as a "hot key."
1926
+ #
1927
+ # * Requests for operations on KMS keys in a Amazon Web Services
1928
+ # CloudHSM key store might be throttled at a lower-than-expected rate
1929
+ # when the Amazon Web Services CloudHSM cluster associated with the
1930
+ # Amazon Web Services CloudHSM key store is processing numerous
1931
+ # commands, including those unrelated to the Amazon Web Services
1932
+ # CloudHSM key store.
1933
+ #
1934
+ # @!attribute [rw] message
1935
+ # @return [String]
1936
+ #
1937
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RequestThrottled AWS API Documentation
1938
+ #
1939
+ class RequestThrottled < Struct.new(
1940
+ :message)
1941
+ SENSITIVE = []
1942
+ include Aws::Structure
1943
+ end
1944
+
1945
+ # One or more specified resources don't exist.
1946
+ #
1947
+ # @!attribute [rw] message
1948
+ # @return [String]
1949
+ #
1950
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ResourceNotFoundException AWS API Documentation
1595
1951
  #
1952
+ class ResourceNotFoundException < Struct.new(
1953
+ :message)
1954
+ SENSITIVE = []
1955
+ include Aws::Structure
1956
+ end
1957
+
1596
1958
  # @!attribute [rw] queue_url
1597
1959
  # The URL of the Amazon SQS queue to which batched messages are sent.
1598
1960
  #
@@ -1615,35 +1977,6 @@ module Aws::SQS
1615
1977
  # Contains the details of a single Amazon SQS message along with an
1616
1978
  # `Id`.
1617
1979
  #
1618
- # @note When making an API call, you may pass SendMessageBatchRequestEntry
1619
- # data as a hash:
1620
- #
1621
- # {
1622
- # id: "String", # required
1623
- # message_body: "String", # required
1624
- # delay_seconds: 1,
1625
- # message_attributes: {
1626
- # "String" => {
1627
- # string_value: "String",
1628
- # binary_value: "data",
1629
- # string_list_values: ["String"],
1630
- # binary_list_values: ["data"],
1631
- # data_type: "String", # required
1632
- # },
1633
- # },
1634
- # message_system_attributes: {
1635
- # "AWSTraceHeader" => {
1636
- # string_value: "String",
1637
- # binary_value: "data",
1638
- # string_list_values: ["String"],
1639
- # binary_list_values: ["data"],
1640
- # data_type: "String", # required
1641
- # },
1642
- # },
1643
- # message_deduplication_id: "String",
1644
- # message_group_id: "String",
1645
- # }
1646
- #
1647
1980
  # @!attribute [rw] id
1648
1981
  # An identifier for a message in this batch used to communicate the
1649
1982
  # result.
@@ -1676,12 +2009,12 @@ module Aws::SQS
1676
2009
  #
1677
2010
  # @!attribute [rw] message_attributes
1678
2011
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1679
- # For more information, see [Amazon SQS Message Attributes][1] in the
1680
- # *Amazon Simple Queue Service Developer Guide*.
2012
+ # For more information, see [Amazon SQS message attributes][1] in the
2013
+ # *Amazon SQS Developer Guide*.
1681
2014
  #
1682
2015
  #
1683
2016
  #
1684
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
2017
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1685
2018
  # @return [Hash<String,Types::MessageAttributeValue>]
1686
2019
  #
1687
2020
  # @!attribute [rw] message_system_attributes
@@ -1690,7 +2023,7 @@ module Aws::SQS
1690
2023
  #
1691
2024
  # * Currently, the only supported message system attribute is
1692
2025
  # `AWSTraceHeader`. Its type must be `String` and its value must be
1693
- # a correctly formatted AWS X-Ray trace header string.
2026
+ # a correctly formatted X-Ray trace header string.
1694
2027
  #
1695
2028
  # * The size of a message system attribute doesn't count towards the
1696
2029
  # total size of a message.
@@ -1703,8 +2036,8 @@ module Aws::SQS
1703
2036
  # minimum deduplication interval. If a message with a particular
1704
2037
  # `MessageDeduplicationId` is sent successfully, subsequent messages
1705
2038
  # with the same `MessageDeduplicationId` are accepted successfully but
1706
- # aren't delivered. For more information, see [ Exactly-Once
1707
- # Processing][1] in the *Amazon Simple Queue Service Developer Guide*.
2039
+ # aren't delivered. For more information, see [ Exactly-once
2040
+ # processing][1] in the *Amazon SQS Developer Guide*.
1708
2041
  #
1709
2042
  # * Every message must have a unique `MessageDeduplicationId`,
1710
2043
  #
@@ -1722,7 +2055,6 @@ module Aws::SQS
1722
2055
  #
1723
2056
  # * If the queue has `ContentBasedDeduplication` set, your
1724
2057
  # `MessageDeduplicationId` overrides the generated one.
1725
- #
1726
2058
  # * When `ContentBasedDeduplication` is in effect, messages with
1727
2059
  # identical content sent within the deduplication interval are
1728
2060
  # treated as duplicates and only one copy of the message is
@@ -1749,16 +2081,16 @@ module Aws::SQS
1749
2081
  #
1750
2082
  # The length of `MessageDeduplicationId` is 128 characters.
1751
2083
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1752
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2084
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
1753
2085
  # ``).
1754
2086
  #
1755
2087
  # For best practices of using `MessageDeduplicationId`, see [Using the
1756
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1757
- # Service Developer Guide*.
2088
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2089
+ # Guide*.
1758
2090
  #
1759
2091
  #
1760
2092
  #
1761
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2093
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
1762
2094
  # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1763
2095
  # @return [String]
1764
2096
  #
@@ -1784,11 +2116,10 @@ module Aws::SQS
1784
2116
  #
1785
2117
  # The length of `MessageGroupId` is 128 characters. Valid values:
1786
2118
  # alphanumeric characters and punctuation ``
1787
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2119
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
1788
2120
  #
1789
2121
  # For best practices of using `MessageGroupId`, see [Using the
1790
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1791
- # Developer Guide*.
2122
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1792
2123
  #
1793
2124
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1794
2125
  # Standard queues.
@@ -1846,11 +2177,10 @@ module Aws::SQS
1846
2177
  # @return [String]
1847
2178
  #
1848
2179
  # @!attribute [rw] md5_of_message_body
1849
- # An MD5 digest of the non-URL-encoded message attribute string. You
1850
- # can use this attribute to verify that Amazon SQS received the
1851
- # message correctly. Amazon SQS URL-decodes the message before
1852
- # creating the MD5 digest. For information about MD5, see
1853
- # [RFC1321][1].
2180
+ # An MD5 digest of the non-URL-encoded message body string. You can
2181
+ # use this attribute to verify that Amazon SQS received the message
2182
+ # correctly. Amazon SQS URL-decodes the message before creating the
2183
+ # MD5 digest. For information about MD5, see [RFC1321][1].
1854
2184
  #
1855
2185
  #
1856
2186
  #
@@ -1904,35 +2234,6 @@ module Aws::SQS
1904
2234
  include Aws::Structure
1905
2235
  end
1906
2236
 
1907
- # @note When making an API call, you may pass SendMessageRequest
1908
- # data as a hash:
1909
- #
1910
- # {
1911
- # queue_url: "String", # required
1912
- # message_body: "String", # required
1913
- # delay_seconds: 1,
1914
- # message_attributes: {
1915
- # "String" => {
1916
- # string_value: "String",
1917
- # binary_value: "data",
1918
- # string_list_values: ["String"],
1919
- # binary_list_values: ["data"],
1920
- # data_type: "String", # required
1921
- # },
1922
- # },
1923
- # message_system_attributes: {
1924
- # "AWSTraceHeader" => {
1925
- # string_value: "String",
1926
- # binary_value: "data",
1927
- # string_list_values: ["String"],
1928
- # binary_list_values: ["data"],
1929
- # data_type: "String", # required
1930
- # },
1931
- # },
1932
- # message_deduplication_id: "String",
1933
- # message_group_id: "String",
1934
- # }
1935
- #
1936
2237
  # @!attribute [rw] queue_url
1937
2238
  # The URL of the Amazon SQS queue to which a message is sent.
1938
2239
  #
@@ -1940,16 +2241,21 @@ module Aws::SQS
1940
2241
  # @return [String]
1941
2242
  #
1942
2243
  # @!attribute [rw] message_body
1943
- # The message to send. The maximum string size is 256 KB.
2244
+ # The message to send. The minimum size is one character. The maximum
2245
+ # size is 256 KiB.
1944
2246
  #
1945
2247
  # A message can include only XML, JSON, and unformatted text. The
1946
- # following Unicode characters are allowed:
2248
+ # following Unicode characters are allowed. For more information, see
2249
+ # the [W3C specification for characters][1].
1947
2250
  #
1948
2251
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to
1949
2252
  # `#xFFFD` \| `#x10000` to `#x10FFFF`
1950
2253
  #
1951
- # Any characters not included in this list will be rejected. For more
1952
- # information, see the [W3C specification for characters][1].
2254
+ # Amazon SQS does not throw an exception or completely reject the
2255
+ # message if it contains invalid characters. Instead, it replaces
2256
+ # those invalid characters with `U+FFFD` before storing the message in
2257
+ # the queue, as long as the message body contains at least one valid
2258
+ # character.
1953
2259
  #
1954
2260
  #
1955
2261
  #
@@ -1971,12 +2277,12 @@ module Aws::SQS
1971
2277
  #
1972
2278
  # @!attribute [rw] message_attributes
1973
2279
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1974
- # For more information, see [Amazon SQS Message Attributes][1] in the
1975
- # *Amazon Simple Queue Service Developer Guide*.
2280
+ # For more information, see [Amazon SQS message attributes][1] in the
2281
+ # *Amazon SQS Developer Guide*.
1976
2282
  #
1977
2283
  #
1978
2284
  #
1979
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
2285
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1980
2286
  # @return [Hash<String,Types::MessageAttributeValue>]
1981
2287
  #
1982
2288
  # @!attribute [rw] message_system_attributes
@@ -1985,7 +2291,7 @@ module Aws::SQS
1985
2291
  #
1986
2292
  # * Currently, the only supported message system attribute is
1987
2293
  # `AWSTraceHeader`. Its type must be `String` and its value must be
1988
- # a correctly formatted AWS X-Ray trace header string.
2294
+ # a correctly formatted X-Ray trace header string.
1989
2295
  #
1990
2296
  # * The size of a message system attribute doesn't count towards the
1991
2297
  # total size of a message.
@@ -1998,8 +2304,8 @@ module Aws::SQS
1998
2304
  # a particular `MessageDeduplicationId` is sent successfully, any
1999
2305
  # messages sent with the same `MessageDeduplicationId` are accepted
2000
2306
  # successfully but aren't delivered during the 5-minute deduplication
2001
- # interval. For more information, see [ Exactly-Once Processing][1] in
2002
- # the *Amazon Simple Queue Service Developer Guide*.
2307
+ # interval. For more information, see [ Exactly-once processing][1] in
2308
+ # the *Amazon SQS Developer Guide*.
2003
2309
  #
2004
2310
  # * Every message must have a unique `MessageDeduplicationId`,
2005
2311
  #
@@ -2017,7 +2323,6 @@ module Aws::SQS
2017
2323
  #
2018
2324
  # * If the queue has `ContentBasedDeduplication` set, your
2019
2325
  # `MessageDeduplicationId` overrides the generated one.
2020
- #
2021
2326
  # * When `ContentBasedDeduplication` is in effect, messages with
2022
2327
  # identical content sent within the deduplication interval are
2023
2328
  # treated as duplicates and only one copy of the message is
@@ -2044,16 +2349,16 @@ module Aws::SQS
2044
2349
  #
2045
2350
  # The maximum length of `MessageDeduplicationId` is 128 characters.
2046
2351
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
2047
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2352
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
2048
2353
  # ``).
2049
2354
  #
2050
2355
  # For best practices of using `MessageDeduplicationId`, see [Using the
2051
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
2052
- # Service Developer Guide*.
2356
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2357
+ # Guide*.
2053
2358
  #
2054
2359
  #
2055
2360
  #
2056
- # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2361
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2057
2362
  # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
2058
2363
  # @return [String]
2059
2364
  #
@@ -2077,13 +2382,12 @@ module Aws::SQS
2077
2382
  # are sorted by time sent. The caller can't specify a
2078
2383
  # `MessageGroupId`.
2079
2384
  #
2080
- # The length of `MessageGroupId` is 128 characters. Valid values:
2081
- # alphanumeric characters and punctuation ``
2082
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2385
+ # The maximum length of `MessageGroupId` is 128 characters. Valid
2386
+ # values: alphanumeric characters and punctuation ``
2387
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
2083
2388
  #
2084
2389
  # For best practices of using `MessageGroupId`, see [Using the
2085
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
2086
- # Developer Guide*.
2390
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
2087
2391
  #
2088
2392
  # `MessageGroupId` is required for FIFO queues. You can't use it for
2089
2393
  # Standard queues.
@@ -2110,11 +2414,10 @@ module Aws::SQS
2110
2414
  # The `MD5OfMessageBody` and `MessageId` elements.
2111
2415
  #
2112
2416
  # @!attribute [rw] md5_of_message_body
2113
- # An MD5 digest of the non-URL-encoded message attribute string. You
2114
- # can use this attribute to verify that Amazon SQS received the
2115
- # message correctly. Amazon SQS URL-decodes the message before
2116
- # creating the MD5 digest. For information about MD5, see
2117
- # [RFC1321][1].
2417
+ # An MD5 digest of the non-URL-encoded message body string. You can
2418
+ # use this attribute to verify that Amazon SQS received the message
2419
+ # correctly. Amazon SQS URL-decodes the message before creating the
2420
+ # MD5 digest. For information about MD5, see [RFC1321][1].
2118
2421
  #
2119
2422
  #
2120
2423
  #
@@ -2143,7 +2446,7 @@ module Aws::SQS
2143
2446
  # @!attribute [rw] message_id
2144
2447
  # An attribute containing the `MessageId` of the message sent to the
2145
2448
  # queue. For more information, see [Queue and Message Identifiers][1]
2146
- # in the *Amazon Simple Queue Service Developer Guide*.
2449
+ # in the *Amazon SQS Developer Guide*.
2147
2450
  #
2148
2451
  #
2149
2452
  #
@@ -2172,16 +2475,6 @@ module Aws::SQS
2172
2475
  include Aws::Structure
2173
2476
  end
2174
2477
 
2175
- # @note When making an API call, you may pass SetQueueAttributesRequest
2176
- # data as a hash:
2177
- #
2178
- # {
2179
- # queue_url: "String", # required
2180
- # attributes: { # required
2181
- # "All" => "String",
2182
- # },
2183
- # }
2184
- #
2185
2478
  # @!attribute [rw] queue_url
2186
2479
  # The URL of the Amazon SQS queue whose attributes are set.
2187
2480
  #
@@ -2207,22 +2500,34 @@ module Aws::SQS
2207
2500
  # * `MessageRetentionPeriod` – The length of time, in seconds, for
2208
2501
  # which Amazon SQS retains a message. Valid values: An integer
2209
2502
  # representing seconds, from 60 (1 minute) to 1,209,600 (14 days).
2210
- # Default: 345,600 (4 days).
2211
- #
2212
- # * `Policy` The queue's policy. A valid AWS policy. For more
2213
- # information about policy structure, see [Overview of AWS IAM
2214
- # Policies][1] in the *Amazon IAM User Guide*.
2503
+ # Default: 345,600 (4 days). When you change a queue's attributes,
2504
+ # the change can take up to 60 seconds for most of the attributes to
2505
+ # propagate throughout the Amazon SQS system. Changes made to the
2506
+ # `MessageRetentionPeriod` attribute can take up to 15 minutes and
2507
+ # will impact existing messages in the queue potentially causing
2508
+ # them to be expired and deleted if the `MessageRetentionPeriod` is
2509
+ # reduced below the age of existing messages.
2510
+ #
2511
+ # * `Policy` – The queue's policy. A valid Amazon Web Services
2512
+ # policy. For more information about policy structure, see [Overview
2513
+ # of Amazon Web Services IAM Policies][1] in the *Identity and
2514
+ # Access Management User Guide*.
2215
2515
  #
2216
2516
  # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
2217
2517
  # for which a ` ReceiveMessage ` action waits for a message to
2218
2518
  # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
2219
2519
  # 0.
2220
2520
  #
2521
+ # * `VisibilityTimeout` – The visibility timeout for the queue, in
2522
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2523
+ # Default: 30. For more information about the visibility timeout,
2524
+ # see [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
2525
+ #
2526
+ # The following attributes apply only to [dead-letter queues:][3]
2527
+ #
2221
2528
  # * `RedrivePolicy` – The string that includes the parameters for the
2222
2529
  # dead-letter queue functionality of the source queue as a JSON
2223
- # object. For more information about the redrive policy and
2224
- # dead-letter queues, see [Using Amazon SQS Dead-Letter Queues][2]
2225
- # in the *Amazon Simple Queue Service Developer Guide*.
2530
+ # object. The parameters are as follows:
2226
2531
  #
2227
2532
  # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
2228
2533
  # dead-letter queue to which Amazon SQS moves messages after the
@@ -2230,48 +2535,73 @@ module Aws::SQS
2230
2535
  #
2231
2536
  # * `maxReceiveCount` – The number of times a message is delivered
2232
2537
  # to the source queue before being moved to the dead-letter queue.
2233
- # When the `ReceiveCount` for a message exceeds the
2538
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
2234
2539
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
2235
2540
  # the dead-letter-queue.
2541
+ # * `RedriveAllowPolicy` – The string that includes the parameters for
2542
+ # the permissions for the dead-letter queue redrive permission and
2543
+ # which source queues can specify dead-letter queues as a JSON
2544
+ # object. The parameters are as follows:
2545
+ #
2546
+ # * `redrivePermission` – The permission type that defines which
2547
+ # source queues can specify the current queue as the dead-letter
2548
+ # queue. Valid values are:
2549
+ #
2550
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
2551
+ # Services account in the same Region can specify this queue as
2552
+ # the dead-letter queue.
2553
+ #
2554
+ # * `denyAll` – No source queues can specify this queue as the
2555
+ # dead-letter queue.
2556
+ #
2557
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
2558
+ # parameter can specify this queue as the dead-letter queue.
2559
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
2560
+ # source queues that can specify this queue as the dead-letter
2561
+ # queue and redrive messages. You can specify this parameter only
2562
+ # when the `redrivePermission` parameter is set to `byQueue`. You
2563
+ # can specify up to 10 source queue ARNs. To allow more than 10
2564
+ # source queues to specify dead-letter queues, set the
2565
+ # `redrivePermission` parameter to `allowAll`.
2566
+ #
2567
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2568
+ # Similarly, the dead-letter queue of a standard queue must also be a
2569
+ # standard queue.
2236
2570
  #
2237
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2238
- # Similarly, the dead-letter queue of a standard queue must also be
2239
- # a standard queue.
2240
- #
2241
- # </note>
2242
- #
2243
- # * `VisibilityTimeout` – The visibility timeout for the queue, in
2244
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2245
- # Default: 30. For more information about the visibility timeout,
2246
- # see [Visibility Timeout][3] in the *Amazon Simple Queue Service
2247
- # Developer Guide*.
2571
+ # </note>
2248
2572
  #
2249
- # The following attributes apply only to [server-side-encryption][4]\:
2573
+ # The following attributes apply only to [server-side-encryption][4]:
2250
2574
  #
2251
- # * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
2252
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
2253
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
2254
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
2255
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
2256
- # the *AWS Key Management Service API Reference*.
2575
+ # * `KmsMasterKeyId` – The ID of an Amazon Web Services managed
2576
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
2577
+ # information, see [Key Terms][5]. While the alias of the
2578
+ # AWS-managed CMK for Amazon SQS is always `alias/aws/sqs`, the
2579
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
2580
+ # more examples, see [KeyId][6] in the *Key Management Service API
2581
+ # Reference*.
2257
2582
  #
2258
2583
  # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds,
2259
2584
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
2260
- # decrypt messages before calling AWS KMS again. An integer
2261
- # representing seconds, between 60 seconds (1 minute) and 86,400
2262
- # seconds (24 hours). Default: 300 (5 minutes). A shorter time
2263
- # period provides better security but results in more calls to KMS
2264
- # which might incur charges after Free Tier. For more information,
2265
- # see [How Does the Data Key Reuse Period Work?][8].
2585
+ # decrypt messages before calling KMS again. An integer representing
2586
+ # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
2587
+ # hours). Default: 300 (5 minutes). A shorter time period provides
2588
+ # better security but results in more calls to KMS which might incur
2589
+ # charges after Free Tier. For more information, see [How Does the
2590
+ # Data Key Reuse Period Work?][8].
2591
+ #
2592
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
2593
+ # using SQS owned encryption keys. Only one server-side encryption
2594
+ # option is supported per queue (for example, [SSE-KMS][9] or
2595
+ # [SSE-SQS][10]).
2266
2596
  #
2267
2597
  # The following attribute applies only to [FIFO (first-in-first-out)
2268
- # queues][9]\:
2598
+ # queues][11]:
2269
2599
  #
2270
2600
  # * `ContentBasedDeduplication` – Enables content-based deduplication.
2271
- # For more information, see [Exactly-Once Processing][10] in the
2272
- # *Amazon Simple Queue Service Developer Guide*.
2601
+ # For more information, see [Exactly-once processing][12] in the
2602
+ # *Amazon SQS Developer Guide*. Note the following:
2273
2603
  #
2274
- # * Every message must have a unique `MessageDeduplicationId`,
2604
+ # * Every message must have a unique `MessageDeduplicationId`.
2275
2605
  #
2276
2606
  # * You may provide a `MessageDeduplicationId` explicitly.
2277
2607
  #
@@ -2287,7 +2617,6 @@ module Aws::SQS
2287
2617
  #
2288
2618
  # * If the queue has `ContentBasedDeduplication` set, your
2289
2619
  # `MessageDeduplicationId` overrides the generated one.
2290
- #
2291
2620
  # * When `ContentBasedDeduplication` is in effect, messages with
2292
2621
  # identical content sent within the deduplication interval are
2293
2622
  # treated as duplicates and only one copy of the message is
@@ -2299,18 +2628,48 @@ module Aws::SQS
2299
2628
  # `MessageDeduplicationId`, the two messages are treated as
2300
2629
  # duplicates and only one copy of the message is delivered.
2301
2630
  #
2631
+ # The following attributes apply only to [high throughput for FIFO
2632
+ # queues][13]:
2633
+ #
2634
+ # * `DeduplicationScope` – Specifies whether message deduplication
2635
+ # occurs at the message group or queue level. Valid values are
2636
+ # `messageGroup` and `queue`.
2637
+ #
2638
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
2639
+ # throughput quota applies to the entire queue or per message group.
2640
+ # Valid values are `perQueue` and `perMessageGroupId`. The
2641
+ # `perMessageGroupId` value is allowed only when the value for
2642
+ # `DeduplicationScope` is `messageGroup`.
2643
+ #
2644
+ # To enable high throughput for FIFO queues, do the following:
2645
+ #
2646
+ # * Set `DeduplicationScope` to `messageGroup`.
2647
+ #
2648
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
2649
+ #
2650
+ # If you set these attributes to anything other than the values shown
2651
+ # for enabling high throughput, normal throughput is in effect and
2652
+ # deduplication occurs as specified.
2653
+ #
2654
+ # For information on throughput quotas, see [Quotas related to
2655
+ # messages][14] in the *Amazon SQS Developer Guide*.
2656
+ #
2302
2657
  #
2303
2658
  #
2304
2659
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
2305
- # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2306
- # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2660
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2661
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2307
2662
  # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
2308
2663
  # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
2309
2664
  # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2310
2665
  # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
2311
2666
  # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
2312
- # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2313
- # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2667
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
2668
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
2669
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2670
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2671
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2672
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
2314
2673
  # @return [Hash<String,String>]
2315
2674
  #
2316
2675
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SetQueueAttributesRequest AWS API Documentation
@@ -2322,16 +2681,54 @@ module Aws::SQS
2322
2681
  include Aws::Structure
2323
2682
  end
2324
2683
 
2325
- # @note When making an API call, you may pass TagQueueRequest
2326
- # data as a hash:
2684
+ # @!attribute [rw] source_arn
2685
+ # The ARN of the queue that contains the messages to be moved to
2686
+ # another queue. Currently, only ARNs of dead-letter queues (DLQs)
2687
+ # whose sources are other Amazon SQS queues are accepted. DLQs whose
2688
+ # sources are non-SQS queues, such as Lambda or Amazon SNS topics, are
2689
+ # not currently supported.
2690
+ # @return [String]
2691
+ #
2692
+ # @!attribute [rw] destination_arn
2693
+ # The ARN of the queue that receives the moved messages. You can use
2694
+ # this field to specify the destination queue where you would like to
2695
+ # redrive messages. If this field is left blank, the messages will be
2696
+ # redriven back to their respective original source queues.
2697
+ # @return [String]
2698
+ #
2699
+ # @!attribute [rw] max_number_of_messages_per_second
2700
+ # The number of messages to be moved per second (the message movement
2701
+ # rate). You can use this field to define a fixed message movement
2702
+ # rate. The maximum value for messages per second is 500. If this
2703
+ # field is left blank, the system will optimize the rate based on the
2704
+ # queue message backlog size, which may vary throughout the duration
2705
+ # of the message movement task.
2706
+ # @return [Integer]
2707
+ #
2708
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskRequest AWS API Documentation
2709
+ #
2710
+ class StartMessageMoveTaskRequest < Struct.new(
2711
+ :source_arn,
2712
+ :destination_arn,
2713
+ :max_number_of_messages_per_second)
2714
+ SENSITIVE = []
2715
+ include Aws::Structure
2716
+ end
2717
+
2718
+ # @!attribute [rw] task_handle
2719
+ # An identifier associated with a message movement task. You can use
2720
+ # this identifier to cancel a specified message movement task using
2721
+ # the `CancelMessageMoveTask` action.
2722
+ # @return [String]
2327
2723
  #
2328
- # {
2329
- # queue_url: "String", # required
2330
- # tags: { # required
2331
- # "TagKey" => "TagValue",
2332
- # },
2333
- # }
2724
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskResult AWS API Documentation
2334
2725
  #
2726
+ class StartMessageMoveTaskResult < Struct.new(
2727
+ :task_handle)
2728
+ SENSITIVE = []
2729
+ include Aws::Structure
2730
+ end
2731
+
2335
2732
  # @!attribute [rw] queue_url
2336
2733
  # The URL of the queue.
2337
2734
  # @return [String]
@@ -2351,24 +2748,30 @@ module Aws::SQS
2351
2748
 
2352
2749
  # The batch request contains more entries than permissible.
2353
2750
  #
2751
+ # @!attribute [rw] message
2752
+ # @return [String]
2753
+ #
2354
2754
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TooManyEntriesInBatchRequest AWS API Documentation
2355
2755
  #
2356
- class TooManyEntriesInBatchRequest < Aws::EmptyStructure; end
2756
+ class TooManyEntriesInBatchRequest < Struct.new(
2757
+ :message)
2758
+ SENSITIVE = []
2759
+ include Aws::Structure
2760
+ end
2357
2761
 
2358
2762
  # Error code 400. Unsupported operation.
2359
2763
  #
2764
+ # @!attribute [rw] message
2765
+ # @return [String]
2766
+ #
2360
2767
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UnsupportedOperation AWS API Documentation
2361
2768
  #
2362
- class UnsupportedOperation < Aws::EmptyStructure; end
2769
+ class UnsupportedOperation < Struct.new(
2770
+ :message)
2771
+ SENSITIVE = []
2772
+ include Aws::Structure
2773
+ end
2363
2774
 
2364
- # @note When making an API call, you may pass UntagQueueRequest
2365
- # data as a hash:
2366
- #
2367
- # {
2368
- # queue_url: "String", # required
2369
- # tag_keys: ["TagKey"], # required
2370
- # }
2371
- #
2372
2775
  # @!attribute [rw] queue_url
2373
2776
  # The URL of the queue.
2374
2777
  # @return [String]
@@ -2388,3 +2791,4 @@ module Aws::SQS
2388
2791
 
2389
2792
  end
2390
2793
  end
2794
+