aws-sdk-sqs 1.9.0 → 1.70.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,23 +1,15 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # WARNING ABOUT GENERATED CODE
2
4
  #
3
5
  # This file is generated. See the contributing guide for more information:
4
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
7
  #
6
8
  # WARNING ABOUT GENERATED CODE
7
9
 
8
10
  module Aws::SQS
9
11
  module Types
10
12
 
11
- # @note When making an API call, you may pass AddPermissionRequest
12
- # data as a hash:
13
- #
14
- # {
15
- # queue_url: "String", # required
16
- # label: "String", # required
17
- # aws_account_ids: ["String"], # required
18
- # actions: ["String"], # required
19
- # }
20
- #
21
13
  # @!attribute [rw] queue_url
22
14
  # The URL of the Amazon SQS queue to which permissions are added.
23
15
  #
@@ -32,16 +24,15 @@ module Aws::SQS
32
24
  # @return [String]
33
25
  #
34
26
  # @!attribute [rw] aws_account_ids
35
- # The AWS account number of the [principal][1] who is given
36
- # permission. The principal must have an AWS account, but does not
37
- # need to be signed up for Amazon SQS. For information about locating
38
- # the AWS account identification, see [Your AWS Identifiers][2] in the
39
- # *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*.
40
31
  #
41
32
  #
42
33
  #
43
- # [1]: http://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
44
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication
34
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/glos-chap.html#P
35
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-making-api-requests.html#sqs-api-request-authentication
45
36
  # @return [Array<String>]
46
37
  #
47
38
  # @!attribute [rw] actions
@@ -50,7 +41,7 @@ module Aws::SQS
50
41
  #
51
42
  # For more information about these actions, see [Overview of Managing
52
43
  # Access Permissions to Your Amazon Simple Queue Service Resource][1]
53
- # in the *Amazon Simple Queue Service Developer Guide*.
44
+ # in the *Amazon SQS Developer Guide*.
54
45
  #
55
46
  # Specifying `SendMessage`, `DeleteMessage`, or
56
47
  # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
@@ -60,7 +51,7 @@ module Aws::SQS
60
51
  #
61
52
  #
62
53
  #
63
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html
54
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html
64
55
  # @return [Array<String>]
65
56
  #
66
57
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/AddPermissionRequest AWS API Documentation
@@ -70,6 +61,33 @@ module Aws::SQS
70
61
  :label,
71
62
  :aws_account_ids,
72
63
  :actions)
64
+ SENSITIVE = []
65
+ include Aws::Structure
66
+ end
67
+
68
+ # Two or more batch entries in the request have the same `Id`.
69
+ #
70
+ # @!attribute [rw] message
71
+ # @return [String]
72
+ #
73
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchEntryIdsNotDistinct AWS API Documentation
74
+ #
75
+ class BatchEntryIdsNotDistinct < Struct.new(
76
+ :message)
77
+ SENSITIVE = []
78
+ include Aws::Structure
79
+ end
80
+
81
+ # The length of all the messages put together is more than the limit.
82
+ #
83
+ # @!attribute [rw] message
84
+ # @return [String]
85
+ #
86
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchRequestTooLong AWS API Documentation
87
+ #
88
+ class BatchRequestTooLong < Struct.new(
89
+ :message)
90
+ SENSITIVE = []
73
91
  include Aws::Structure
74
92
  end
75
93
 
@@ -81,7 +99,8 @@ module Aws::SQS
81
99
  # @return [String]
82
100
  #
83
101
  # @!attribute [rw] sender_fault
84
- # Specifies whether the error happened due to the producer.
102
+ # Specifies whether the error happened due to the caller of the batch
103
+ # API action.
85
104
  # @return [Boolean]
86
105
  #
87
106
  # @!attribute [rw] code
@@ -99,23 +118,35 @@ module Aws::SQS
99
118
  :sender_fault,
100
119
  :code,
101
120
  :message)
121
+ SENSITIVE = []
122
+ include Aws::Structure
123
+ end
124
+
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 = []
102
134
  include Aws::Structure
103
135
  end
104
136
 
105
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequest
106
- # data as a hash:
137
+ # @!attribute [rw] approximate_number_of_messages_moved
138
+ # The approximate number of messages already moved to the destination
139
+ # queue.
140
+ # @return [Integer]
107
141
  #
108
- # {
109
- # queue_url: "String", # required
110
- # entries: [ # required
111
- # {
112
- # id: "String", # required
113
- # receipt_handle: "String", # required
114
- # visibility_timeout: 1,
115
- # },
116
- # ],
117
- # }
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTaskResult AWS API Documentation
118
143
  #
144
+ class CancelMessageMoveTaskResult < Struct.new(
145
+ :approximate_number_of_messages_moved)
146
+ SENSITIVE = []
147
+ include Aws::Structure
148
+ end
149
+
119
150
  # @!attribute [rw] queue_url
120
151
  # The URL of the Amazon SQS queue whose messages' visibility is
121
152
  # changed.
@@ -124,7 +155,7 @@ module Aws::SQS
124
155
  # @return [String]
125
156
  #
126
157
  # @!attribute [rw] entries
127
- # A list of receipt handles of the messages for which the visibility
158
+ # Lists the receipt handles of the messages for which the visibility
128
159
  # timeout must be changed.
129
160
  # @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
130
161
  #
@@ -133,37 +164,22 @@ module Aws::SQS
133
164
  class ChangeMessageVisibilityBatchRequest < Struct.new(
134
165
  :queue_url,
135
166
  :entries)
167
+ SENSITIVE = []
136
168
  include Aws::Structure
137
169
  end
138
170
 
139
- # 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 `
140
172
  # ChangeMessageVisibilityBatch.`
141
173
  #
142
- # All of the following list parameters must be prefixed with
143
- # `ChangeMessageVisibilityBatchRequestEntry.n`, where `n` is an integer
144
- # value starting with `1`. For example, a parameter list for this action
145
- # might look like this:
146
- #
147
- # `&ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
148
- #
149
- # `&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=your_receipt_handle`
150
- #
151
- # `&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
152
- #
153
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequestEntry
154
- # data as a hash:
155
- #
156
- # {
157
- # id: "String", # required
158
- # receipt_handle: "String", # required
159
- # visibility_timeout: 1,
160
- # }
161
- #
162
174
  # @!attribute [rw] id
163
175
  # An identifier for this particular receipt handle used to communicate
164
176
  # the result.
165
177
  #
166
- # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
178
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request.
179
+ #
180
+ # This identifier can have up to 80 characters. The following
181
+ # characters are accepted: alphanumeric characters, hyphens(-), and
182
+ # underscores (\_).
167
183
  #
168
184
  # </note>
169
185
  # @return [String]
@@ -182,6 +198,7 @@ module Aws::SQS
182
198
  :id,
183
199
  :receipt_handle,
184
200
  :visibility_timeout)
201
+ SENSITIVE = []
185
202
  include Aws::Structure
186
203
  end
187
204
 
@@ -202,6 +219,7 @@ module Aws::SQS
202
219
  class ChangeMessageVisibilityBatchResult < Struct.new(
203
220
  :successful,
204
221
  :failed)
222
+ SENSITIVE = []
205
223
  include Aws::Structure
206
224
  end
207
225
 
@@ -216,18 +234,10 @@ module Aws::SQS
216
234
  #
217
235
  class ChangeMessageVisibilityBatchResultEntry < Struct.new(
218
236
  :id)
237
+ SENSITIVE = []
219
238
  include Aws::Structure
220
239
  end
221
240
 
222
- # @note When making an API call, you may pass ChangeMessageVisibilityRequest
223
- # data as a hash:
224
- #
225
- # {
226
- # queue_url: "String", # required
227
- # receipt_handle: "String", # required
228
- # visibility_timeout: 1, # required
229
- # }
230
- #
231
241
  # @!attribute [rw] queue_url
232
242
  # The URL of the Amazon SQS queue whose message's visibility is
233
243
  # changed.
@@ -236,14 +246,14 @@ module Aws::SQS
236
246
  # @return [String]
237
247
  #
238
248
  # @!attribute [rw] receipt_handle
239
- # The receipt handle associated with the message whose visibility
249
+ # The receipt handle associated with the message, whose visibility
240
250
  # timeout is changed. This parameter is returned by the `
241
251
  # ReceiveMessage ` action.
242
252
  # @return [String]
243
253
  #
244
254
  # @!attribute [rw] visibility_timeout
245
255
  # The new value for the message's visibility timeout (in seconds).
246
- # Values values: `0` to `43200`. Maximum: 12 hours.
256
+ # Values range: `0` to `43200`. Maximum: 12 hours.
247
257
  # @return [Integer]
248
258
  #
249
259
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ChangeMessageVisibilityRequest AWS API Documentation
@@ -252,19 +262,10 @@ module Aws::SQS
252
262
  :queue_url,
253
263
  :receipt_handle,
254
264
  :visibility_timeout)
265
+ SENSITIVE = []
255
266
  include Aws::Structure
256
267
  end
257
268
 
258
- # @note When making an API call, you may pass CreateQueueRequest
259
- # data as a hash:
260
- #
261
- # {
262
- # queue_name: "String", # required
263
- # attributes: {
264
- # "All" => "String",
265
- # },
266
- # }
267
- #
268
269
  # @!attribute [rw] queue_name
269
270
  # The name of the new queue. The following limits apply to this name:
270
271
  #
@@ -284,93 +285,132 @@ module Aws::SQS
284
285
  # The following lists the names, descriptions, and values of the
285
286
  # special request parameters that the `CreateQueue` action uses:
286
287
  #
287
- # * `DelaySeconds` - The length of time, in seconds, for which the
288
+ # * `DelaySeconds` The length of time, in seconds, for which the
288
289
  # delivery of all messages in the queue is delayed. Valid values: An
289
290
  # integer from 0 to 900 seconds (15 minutes). Default: 0.
290
291
  #
291
- # * `MaximumMessageSize` - The limit of how many bytes a message can
292
+ # * `MaximumMessageSize` The limit of how many bytes a message can
292
293
  # contain before Amazon SQS rejects it. Valid values: An integer
293
294
  # from 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). Default:
294
295
  # 262,144 (256 KiB).
295
296
  #
296
- # * `MessageRetentionPeriod` - The length of time, in seconds, for
297
+ # * `MessageRetentionPeriod` The length of time, in seconds, for
297
298
  # which Amazon SQS retains a message. Valid values: An integer from
298
299
  # 60 seconds (1 minute) to 1,209,600 seconds (14 days). Default:
299
- # 345,600 (4 days).
300
- #
301
- # * `Policy` - The queue's policy. A valid AWS policy. For more
302
- # information about policy structure, see [Overview of AWS IAM
303
- # Policies][1] in the *Amazon IAM User Guide*.
304
- #
305
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
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*.
311
+ #
312
+ # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
306
313
  # for which a ` ReceiveMessage ` action waits for a message to
307
314
  # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
308
315
  # 0.
309
316
  #
310
- # * `RedrivePolicy` - The string that includes the parameters for the
311
- # dead-letter queue functionality of the source queue. For more
312
- # information about the redrive policy and dead-letter queues, see
313
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple
314
- # Queue Service Developer Guide*.
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
+ #
324
+ # * `RedrivePolicy` – The string that includes the parameters for the
325
+ # dead-letter queue functionality of the source queue as a JSON
326
+ # object. The parameters are as follows:
315
327
  #
316
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
328
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
317
329
  # dead-letter queue to which Amazon SQS moves messages after the
318
330
  # value of `maxReceiveCount` is exceeded.
319
331
  #
320
- # * `maxReceiveCount` - The number of times a message is delivered
332
+ # * `maxReceiveCount` The number of times a message is delivered
321
333
  # to the source queue before being moved to the dead-letter queue.
322
- # When the `ReceiveCount` for a message exceeds the
334
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
323
335
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
324
336
  # the dead-letter-queue.
325
337
  #
326
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
327
- # Similarly, the dead-letter queue of a standard queue must also be
328
- # a standard queue.
338
+ # * `RedriveAllowPolicy` The string that includes the parameters for
339
+ # the permissions for the dead-letter queue redrive permission and
340
+ # which source queues can specify dead-letter queues as a JSON
341
+ # object. The parameters are as follows:
329
342
  #
330
- # </note>
343
+ # * `redrivePermission` – The permission type that defines which
344
+ # source queues can specify the current queue as the dead-letter
345
+ # queue. Valid values are:
331
346
  #
332
- # * `VisibilityTimeout` - The visibility timeout for the queue, in
333
- # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
334
- # Default: 30. For more information about the visibility timeout,
335
- # see [Visibility Timeout][3] in the *Amazon Simple Queue Service
336
- # Developer Guide*.
347
+ # * `allowAll` (Default) Any source queues in this Amazon Web
348
+ # Services account in the same Region can specify this queue as
349
+ # the dead-letter queue.
350
+ #
351
+ # * `denyAll` – No source queues can specify this queue as the
352
+ # dead-letter queue.
353
+ #
354
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
355
+ # parameter can specify this queue as the dead-letter queue.
356
+ #
357
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
358
+ # source queues that can specify this queue as the dead-letter
359
+ # queue and redrive messages. You can specify this parameter only
360
+ # when the `redrivePermission` parameter is set to `byQueue`. You
361
+ # can specify up to 10 source queue ARNs. To allow more than 10
362
+ # source queues to specify dead-letter queues, set the
363
+ # `redrivePermission` parameter to `allowAll`.
337
364
  #
338
- # The following attributes apply only to [server-side-encryption][4]\:
365
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
366
+ # Similarly, the dead-letter queue of a standard queue must also be a
367
+ # standard queue.
339
368
  #
340
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
341
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
342
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
343
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
344
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
345
- # the *AWS Key Management Service API Reference*.
369
+ # </note>
370
+ #
371
+ # The following attributes apply only to [server-side-encryption][4]:
372
+ #
373
+ # * `KmsMasterKeyId` The ID of an Amazon Web Services managed
374
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
375
+ # information, see [Key Terms][5]. While the alias of the Amazon Web
376
+ # Services managed CMK for Amazon SQS is always `alias/aws/sqs`, the
377
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
378
+ # more examples, see [KeyId][6] in the *Key Management Service API
379
+ # Reference*.
346
380
  #
347
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds,
381
+ # * `KmsDataKeyReusePeriodSeconds` The length of time, in seconds,
348
382
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
349
- # decrypt messages before calling AWS KMS again. An integer
350
- # representing seconds, between 60 seconds (1 minute) and 86,400
351
- # seconds (24 hours). Default: 300 (5 minutes). A shorter time
352
- # period provides better security but results in more calls to KMS
353
- # which might incur charges after Free Tier. For more information,
354
- # see [How Does the Data Key Reuse Period Work?][8].
383
+ # decrypt messages before calling KMS again. An integer representing
384
+ # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
385
+ # hours). Default: 300 (5 minutes). A shorter time period provides
386
+ # better security but results in more calls to KMS which might incur
387
+ # charges after Free Tier. For more information, see [How Does the
388
+ # Data Key Reuse Period Work?][8]
389
+ #
390
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
391
+ # using SQS owned encryption keys. Only one server-side encryption
392
+ # option is supported per queue (for example, [SSE-KMS][9] or
393
+ # [SSE-SQS][10]).
355
394
  #
356
395
  # The following attributes apply only to [FIFO (first-in-first-out)
357
- # queues][9]\:
396
+ # queues][11]:
358
397
  #
359
- # * `FifoQueue` - Designates a queue as FIFO. Valid values: `true`,
360
- # `false`. You can provide this attribute only during queue
361
- # creation. You can't change it for an existing queue. When you set
362
- # this attribute, you must also provide the `MessageGroupId` for
363
- # your messages explicitly.
398
+ # * `FifoQueue` Designates a queue as FIFO. Valid values are `true`
399
+ # and `false`. If you don't specify the `FifoQueue` attribute,
400
+ # Amazon SQS creates a standard queue. You can provide this
401
+ # attribute only during queue creation. You can't change it for an
402
+ # existing queue. When you set this attribute, you must also provide
403
+ # the `MessageGroupId` for your messages explicitly.
364
404
  #
365
- # For more information, see [FIFO Queue Logic][10] in the *Amazon
366
- # Simple Queue Service Developer Guide*.
405
+ # For more information, see [FIFO queue logic][12] in the *Amazon
406
+ # SQS Developer Guide*.
367
407
  #
368
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
369
- # Valid values: `true`, `false`. For more information, see
370
- # [Exactly-Once Processing][11] in the *Amazon Simple Queue Service
371
- # Developer Guide*.
408
+ # * `ContentBasedDeduplication` Enables content-based deduplication.
409
+ # Valid values are `true` and `false`. For more information, see
410
+ # [Exactly-once processing][13] in the *Amazon SQS Developer Guide*.
411
+ # Note the following:
372
412
  #
373
- # * Every message must have a unique `MessageDeduplicationId`,
413
+ # * Every message must have a unique `MessageDeduplicationId`.
374
414
  #
375
415
  # * You may provide a `MessageDeduplicationId` explicitly.
376
416
  #
@@ -398,26 +438,94 @@ module Aws::SQS
398
438
  # `MessageDeduplicationId`, the two messages are treated as
399
439
  # duplicates and only one copy of the message is delivered.
400
440
  #
441
+ # The following attributes apply only to [high throughput for FIFO
442
+ # queues][14]:
443
+ #
444
+ # * `DeduplicationScope` – Specifies whether message deduplication
445
+ # occurs at the message group or queue level. Valid values are
446
+ # `messageGroup` and `queue`.
447
+ #
448
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
449
+ # throughput quota applies to the entire queue or per message group.
450
+ # Valid values are `perQueue` and `perMessageGroupId`. The
451
+ # `perMessageGroupId` value is allowed only when the value for
452
+ # `DeduplicationScope` is `messageGroup`.
453
+ #
454
+ # To enable high throughput for FIFO queues, do the following:
455
+ #
456
+ # * Set `DeduplicationScope` to `messageGroup`.
457
+ #
458
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
459
+ #
460
+ # If you set these attributes to anything other than the values shown
461
+ # for enabling high throughput, normal throughput is in effect and
462
+ # deduplication occurs as specified.
463
+ #
464
+ # For information on throughput quotas, see [Quotas related to
465
+ # messages][15] in the *Amazon SQS Developer Guide*.
401
466
  #
402
467
  #
403
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
404
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
405
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
406
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
407
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
408
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
409
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
410
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
411
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
412
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
413
- # [11]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
468
+ #
469
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
470
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
471
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
472
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
473
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
474
+ # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
475
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
476
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
477
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
478
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
479
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
480
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
481
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
482
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
483
+ # [15]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
484
+ # @return [Hash<String,String>]
485
+ #
486
+ # @!attribute [rw] tags
487
+ # Add cost allocation tags to the specified Amazon SQS queue. For an
488
+ # overview, see [Tagging Your Amazon SQS Queues][1] in the *Amazon SQS
489
+ # Developer Guide*.
490
+ #
491
+ # When you use queue tags, keep the following guidelines in mind:
492
+ #
493
+ # * Adding more than 50 tags to a queue isn't recommended.
494
+ #
495
+ # * Tags don't have any semantic meaning. Amazon SQS interprets tags
496
+ # as character strings.
497
+ #
498
+ # * Tags are case-sensitive.
499
+ #
500
+ # * A new tag with a key identical to that of an existing tag
501
+ # overwrites the existing tag.
502
+ #
503
+ # For a full list of tag restrictions, see [Quotas related to
504
+ # queues][2] in the *Amazon SQS Developer Guide*.
505
+ #
506
+ # <note markdown="1"> To be able to tag a queue on creation, you must have the
507
+ # `sqs:CreateQueue` and `sqs:TagQueue` permissions.
508
+ #
509
+ # Cross-account permissions don't apply to this action. For more
510
+ # information, see [Grant cross-account permissions to a role and a
511
+ # username][3] in the *Amazon SQS Developer Guide*.
512
+ #
513
+ # </note>
514
+ #
515
+ #
516
+ #
517
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html
518
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-limits.html#limits-queues
519
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-customer-managed-policy-examples.html#grant-cross-account-permissions-to-role-and-user-name
414
520
  # @return [Hash<String,String>]
415
521
  #
416
522
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CreateQueueRequest AWS API Documentation
417
523
  #
418
524
  class CreateQueueRequest < Struct.new(
419
525
  :queue_name,
420
- :attributes)
526
+ :attributes,
527
+ :tags)
528
+ SENSITIVE = []
421
529
  include Aws::Structure
422
530
  end
423
531
 
@@ -431,22 +539,10 @@ module Aws::SQS
431
539
  #
432
540
  class CreateQueueResult < Struct.new(
433
541
  :queue_url)
542
+ SENSITIVE = []
434
543
  include Aws::Structure
435
544
  end
436
545
 
437
- # @note When making an API call, you may pass DeleteMessageBatchRequest
438
- # data as a hash:
439
- #
440
- # {
441
- # queue_url: "String", # required
442
- # entries: [ # required
443
- # {
444
- # id: "String", # required
445
- # receipt_handle: "String", # required
446
- # },
447
- # ],
448
- # }
449
- #
450
546
  # @!attribute [rw] queue_url
451
547
  # The URL of the Amazon SQS queue from which messages are deleted.
452
548
  #
@@ -454,7 +550,7 @@ module Aws::SQS
454
550
  # @return [String]
455
551
  #
456
552
  # @!attribute [rw] entries
457
- # A list of receipt handles for the messages to be deleted.
553
+ # Lists the receipt handles for the messages to be deleted.
458
554
  # @return [Array<Types::DeleteMessageBatchRequestEntry>]
459
555
  #
460
556
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteMessageBatchRequest AWS API Documentation
@@ -462,24 +558,21 @@ module Aws::SQS
462
558
  class DeleteMessageBatchRequest < Struct.new(
463
559
  :queue_url,
464
560
  :entries)
561
+ SENSITIVE = []
465
562
  include Aws::Structure
466
563
  end
467
564
 
468
565
  # Encloses a receipt handle and an identifier for it.
469
566
  #
470
- # @note When making an API call, you may pass DeleteMessageBatchRequestEntry
471
- # data as a hash:
472
- #
473
- # {
474
- # id: "String", # required
475
- # receipt_handle: "String", # required
476
- # }
477
- #
478
567
  # @!attribute [rw] id
479
- # An identifier for this particular receipt handle. This is used to
568
+ # The identifier for this particular receipt handle. This is used to
480
569
  # communicate the result.
481
570
  #
482
- # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
571
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request.
572
+ #
573
+ # This identifier can have up to 80 characters. The following
574
+ # characters are accepted: alphanumeric characters, hyphens(-), and
575
+ # underscores (\_).
483
576
  #
484
577
  # </note>
485
578
  # @return [String]
@@ -493,6 +586,7 @@ module Aws::SQS
493
586
  class DeleteMessageBatchRequestEntry < Struct.new(
494
587
  :id,
495
588
  :receipt_handle)
589
+ SENSITIVE = []
496
590
  include Aws::Structure
497
591
  end
498
592
 
@@ -513,6 +607,7 @@ module Aws::SQS
513
607
  class DeleteMessageBatchResult < Struct.new(
514
608
  :successful,
515
609
  :failed)
610
+ SENSITIVE = []
516
611
  include Aws::Structure
517
612
  end
518
613
 
@@ -526,17 +621,10 @@ module Aws::SQS
526
621
  #
527
622
  class DeleteMessageBatchResultEntry < Struct.new(
528
623
  :id)
624
+ SENSITIVE = []
529
625
  include Aws::Structure
530
626
  end
531
627
 
532
- # @note When making an API call, you may pass DeleteMessageRequest
533
- # data as a hash:
534
- #
535
- # {
536
- # queue_url: "String", # required
537
- # receipt_handle: "String", # required
538
- # }
539
- #
540
628
  # @!attribute [rw] queue_url
541
629
  # The URL of the Amazon SQS queue from which messages are deleted.
542
630
  #
@@ -552,16 +640,10 @@ module Aws::SQS
552
640
  class DeleteMessageRequest < Struct.new(
553
641
  :queue_url,
554
642
  :receipt_handle)
643
+ SENSITIVE = []
555
644
  include Aws::Structure
556
645
  end
557
646
 
558
- # @note When making an API call, you may pass DeleteQueueRequest
559
- # data as a hash:
560
- #
561
- # {
562
- # queue_url: "String", # required
563
- # }
564
- #
565
647
  # @!attribute [rw] queue_url
566
648
  # The URL of the Amazon SQS queue to delete.
567
649
  #
@@ -572,17 +654,23 @@ module Aws::SQS
572
654
  #
573
655
  class DeleteQueueRequest < Struct.new(
574
656
  :queue_url)
657
+ SENSITIVE = []
575
658
  include Aws::Structure
576
659
  end
577
660
 
578
- # @note When making an API call, you may pass GetQueueAttributesRequest
579
- # data as a hash:
661
+ # The batch request doesn't contain any entries.
580
662
  #
581
- # {
582
- # queue_url: "String", # required
583
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
584
- # }
663
+ # @!attribute [rw] message
664
+ # @return [String]
665
+ #
666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/EmptyBatchRequest AWS API Documentation
585
667
  #
668
+ class EmptyBatchRequest < Struct.new(
669
+ :message)
670
+ SENSITIVE = []
671
+ include Aws::Structure
672
+ end
673
+
586
674
  # @!attribute [rw] queue_url
587
675
  # The URL of the Amazon SQS queue whose attribute information is
588
676
  # retrieved.
@@ -593,6 +681,10 @@ module Aws::SQS
593
681
  # @!attribute [rw] attribute_names
594
682
  # A list of attributes for which to retrieve information.
595
683
  #
684
+ # The `AttributeNames` parameter is optional, but if you don't
685
+ # specify values for this parameter, the request returns empty
686
+ # results.
687
+ #
596
688
  # <note markdown="1"> In the future, new attributes might be added. If you write code that
597
689
  # calls this action, we recommend that you structure your code so that
598
690
  # it can handle new attributes gracefully.
@@ -601,106 +693,186 @@ module Aws::SQS
601
693
  #
602
694
  # The following attributes are supported:
603
695
  #
604
- # * `All` - Returns all values.
696
+ # The `ApproximateNumberOfMessagesDelayed`,
697
+ # `ApproximateNumberOfMessagesNotVisible`, and
698
+ # `ApproximateNumberOfMessages` metrics may not achieve consistency
699
+ # until at least 1 minute after the producers stop sending messages.
700
+ # This period is required for the queue metadata to reach eventual
701
+ # consistency.
605
702
  #
606
- # * `ApproximateNumberOfMessages` - Returns the approximate number of
703
+ # * `All` Returns all values.
704
+ #
705
+ # * `ApproximateNumberOfMessages` – Returns the approximate number of
607
706
  # messages available for retrieval from the queue.
608
707
  #
609
- # * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
708
+ # * `ApproximateNumberOfMessagesDelayed` Returns the approximate
610
709
  # number of messages in the queue that are delayed and not available
611
710
  # for reading immediately. This can happen when the queue is
612
711
  # configured as a delay queue or when a message has been sent with a
613
712
  # delay parameter.
614
713
  #
615
- # * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
714
+ # * `ApproximateNumberOfMessagesNotVisible` Returns the approximate
616
715
  # number of messages that are in flight. Messages are considered to
617
716
  # be *in flight* if they have been sent to a client but have not yet
618
717
  # been deleted or have not yet reached the end of their visibility
619
718
  # window.
620
719
  #
621
- # * `CreatedTimestamp` - Returns the time when the queue was created
720
+ # * `CreatedTimestamp` Returns the time when the queue was created
622
721
  # in seconds ([epoch time][1]).
623
722
  #
624
- # * `DelaySeconds` - Returns the default delay on the queue in
723
+ # * `DelaySeconds` Returns the default delay on the queue in
625
724
  # seconds.
626
725
  #
627
- # * `LastModifiedTimestamp` - Returns the time when the queue was last
726
+ # * `LastModifiedTimestamp` Returns the time when the queue was last
628
727
  # changed in seconds ([epoch time][1]).
629
728
  #
630
- # * `MaximumMessageSize` - Returns the limit of how many bytes a
729
+ # * `MaximumMessageSize` Returns the limit of how many bytes a
631
730
  # message can contain before Amazon SQS rejects it.
632
731
  #
633
- # * `MessageRetentionPeriod` - Returns the length of time, in seconds,
634
- # for which Amazon SQS retains a message.
732
+ # * `MessageRetentionPeriod` Returns the length of time, in seconds,
733
+ # for which Amazon SQS retains a message. When you change a queue's
734
+ # attributes, the change can take up to 60 seconds for most of the
735
+ # attributes to propagate throughout the Amazon SQS system. Changes
736
+ # made to the `MessageRetentionPeriod` attribute can take up to 15
737
+ # minutes and will impact existing messages in the queue potentially
738
+ # causing them to be expired and deleted if the
739
+ # `MessageRetentionPeriod` is reduced below the age of existing
740
+ # messages.
635
741
  #
636
- # * `Policy` - Returns the policy of the queue.
742
+ # * `Policy` Returns the policy of the queue.
637
743
  #
638
- # * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
744
+ # * `QueueArn` Returns the Amazon resource name (ARN) of the queue.
639
745
  #
640
- # * `ReceiveMessageWaitTimeSeconds` - Returns the length of time, in
746
+ # * `ReceiveMessageWaitTimeSeconds` Returns the length of time, in
641
747
  # seconds, for which the `ReceiveMessage` action waits for a message
642
748
  # to arrive.
643
749
  #
644
- # * `RedrivePolicy` - Returns the string that includes the parameters
645
- # for dead-letter queue functionality of the source queue. For more
646
- # information about the redrive policy and dead-letter queues, see
647
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple
648
- # Queue Service Developer Guide*.
750
+ # * `VisibilityTimeout` Returns the visibility timeout for the
751
+ # queue. For more information about the visibility timeout, see
752
+ # [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
649
753
  #
650
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
754
+ # The following attributes apply only to [dead-letter queues:][3]
755
+ #
756
+ # * `RedrivePolicy` – The string that includes the parameters for the
757
+ # dead-letter queue functionality of the source queue as a JSON
758
+ # object. The parameters are as follows:
759
+ #
760
+ # * `deadLetterTargetArn` – The Amazon Resource Name (ARN) of the
651
761
  # dead-letter queue to which Amazon SQS moves messages after the
652
762
  # value of `maxReceiveCount` is exceeded.
653
763
  #
654
- # * `maxReceiveCount` - The number of times a message is delivered
764
+ # * `maxReceiveCount` The number of times a message is delivered
655
765
  # to the source queue before being moved to the dead-letter queue.
656
- # When the `ReceiveCount` for a message exceeds the
766
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
657
767
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
658
768
  # the dead-letter-queue.
659
769
  #
660
- # * `VisibilityTimeout` - Returns the visibility timeout for the
661
- # queue. For more information about the visibility timeout, see
662
- # [Visibility Timeout][3] in the *Amazon Simple Queue Service
663
- # Developer Guide*.
770
+ # * `RedriveAllowPolicy` The string that includes the parameters for
771
+ # the permissions for the dead-letter queue redrive permission and
772
+ # which source queues can specify dead-letter queues as a JSON
773
+ # object. The parameters are as follows:
774
+ #
775
+ # * `redrivePermission` – The permission type that defines which
776
+ # source queues can specify the current queue as the dead-letter
777
+ # queue. Valid values are:
664
778
  #
665
- # The following attributes apply only to [server-side-encryption][4]\:
779
+ # * `allowAll` (Default) Any source queues in this Amazon Web
780
+ # Services account in the same Region can specify this queue as
781
+ # the dead-letter queue.
666
782
  #
667
- # * `KmsMasterKeyId` - Returns the ID of an AWS-managed customer
668
- # master key (CMK) for Amazon SQS or a custom CMK. For more
669
- # information, see [Key Terms][5].
783
+ # * `denyAll` No source queues can specify this queue as the
784
+ # dead-letter queue.
670
785
  #
671
- # * `KmsDataKeyReusePeriodSeconds` - Returns the length of time, in
786
+ # * `byQueue` Only queues specified by the `sourceQueueArns`
787
+ # parameter can specify this queue as the dead-letter queue.
788
+ #
789
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
790
+ # source queues that can specify this queue as the dead-letter
791
+ # queue and redrive messages. You can specify this parameter only
792
+ # when the `redrivePermission` parameter is set to `byQueue`. You
793
+ # can specify up to 10 source queue ARNs. To allow more than 10
794
+ # source queues to specify dead-letter queues, set the
795
+ # `redrivePermission` parameter to `allowAll`.
796
+ #
797
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
798
+ # Similarly, the dead-letter queue of a standard queue must also be a
799
+ # standard queue.
800
+ #
801
+ # </note>
802
+ #
803
+ # The following attributes apply only to [server-side-encryption][4]:
804
+ #
805
+ # * `KmsMasterKeyId` – Returns the ID of an Amazon Web Services
806
+ # managed customer master key (CMK) for Amazon SQS or a custom CMK.
807
+ # For more information, see [Key Terms][5].
808
+ #
809
+ # * `KmsDataKeyReusePeriodSeconds` – Returns the length of time, in
672
810
  # seconds, for which Amazon SQS can reuse a data key to encrypt or
673
- # decrypt messages before calling AWS KMS again. For more
674
- # information, see [How Does the Data Key Reuse Period Work?][6].
811
+ # decrypt messages before calling KMS again. For more information,
812
+ # see [How Does the Data Key Reuse Period Work?][6].
813
+ #
814
+ # * `SqsManagedSseEnabled` – Returns information about whether the
815
+ # queue is using SSE-SQS encryption using SQS owned encryption keys.
816
+ # Only one server-side encryption option is supported per queue (for
817
+ # example, [SSE-KMS][7] or [SSE-SQS][8]).
675
818
  #
676
819
  # The following attributes apply only to [FIFO (first-in-first-out)
677
- # queues][7]\:
820
+ # queues][9]:
678
821
  #
679
- # * `FifoQueue` - Returns whether the queue is FIFO. For more
680
- # information, see [FIFO Queue Logic][8] in the *Amazon Simple Queue
681
- # Service Developer Guide*.
822
+ # * `FifoQueue` Returns information about whether the queue is FIFO.
823
+ # For more information, see [FIFO queue logic][10] in the *Amazon
824
+ # SQS Developer Guide*.
682
825
  #
683
- # <note markdown="1"> To determine whether a queue is [FIFO][7], you can check whether
826
+ # <note markdown="1"> To determine whether a queue is [FIFO][9], you can check whether
684
827
  # `QueueName` ends with the `.fifo` suffix.
685
828
  #
686
829
  # </note>
687
830
  #
688
- # * `ContentBasedDeduplication` - Returns whether content-based
831
+ # * `ContentBasedDeduplication` Returns whether content-based
689
832
  # deduplication is enabled for the queue. For more information, see
690
- # [Exactly-Once Processing][9] in the *Amazon Simple Queue Service
691
- # Developer Guide*.
833
+ # [Exactly-once processing][11] in the *Amazon SQS Developer Guide*.
834
+ #
835
+ # The following attributes apply only to [high throughput for FIFO
836
+ # queues][12]:
837
+ #
838
+ # * `DeduplicationScope` – Specifies whether message deduplication
839
+ # occurs at the message group or queue level. Valid values are
840
+ # `messageGroup` and `queue`.
841
+ #
842
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
843
+ # throughput quota applies to the entire queue or per message group.
844
+ # Valid values are `perQueue` and `perMessageGroupId`. The
845
+ # `perMessageGroupId` value is allowed only when the value for
846
+ # `DeduplicationScope` is `messageGroup`.
847
+ #
848
+ # To enable high throughput for FIFO queues, do the following:
849
+ #
850
+ # * Set `DeduplicationScope` to `messageGroup`.
851
+ #
852
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
853
+ #
854
+ # If you set these attributes to anything other than the values shown
855
+ # for enabling high throughput, normal throughput is in effect and
856
+ # deduplication occurs as specified.
857
+ #
858
+ # For information on throughput quotas, see [Quotas related to
859
+ # messages][13] in the *Amazon SQS Developer Guide*.
692
860
  #
693
861
  #
694
862
  #
695
863
  # [1]: http://en.wikipedia.org/wiki/Unix_time
696
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
697
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
698
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
699
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
700
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
701
- # [7]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
702
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
703
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
864
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
865
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
866
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
867
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
868
+ # [6]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
869
+ # [7]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
870
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
871
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
872
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-understanding-logic.html
873
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
874
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
875
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
704
876
  # @return [Array<String>]
705
877
  #
706
878
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueAttributesRequest AWS API Documentation
@@ -708,6 +880,7 @@ module Aws::SQS
708
880
  class GetQueueAttributesRequest < Struct.new(
709
881
  :queue_url,
710
882
  :attribute_names)
883
+ SENSITIVE = []
711
884
  include Aws::Structure
712
885
  end
713
886
 
@@ -721,17 +894,10 @@ module Aws::SQS
721
894
  #
722
895
  class GetQueueAttributesResult < Struct.new(
723
896
  :attributes)
897
+ SENSITIVE = []
724
898
  include Aws::Structure
725
899
  end
726
900
 
727
- # @note When making an API call, you may pass GetQueueUrlRequest
728
- # data as a hash:
729
- #
730
- # {
731
- # queue_name: "String", # required
732
- # queue_owner_aws_account_id: "String",
733
- # }
734
- #
735
901
  # @!attribute [rw] queue_name
736
902
  # The name of the queue whose URL must be fetched. Maximum 80
737
903
  # characters. Valid values: alphanumeric characters, hyphens (`-`),
@@ -741,7 +907,8 @@ module Aws::SQS
741
907
  # @return [String]
742
908
  #
743
909
  # @!attribute [rw] queue_owner_aws_account_id
744
- # The AWS account ID of the account that created the queue.
910
+ # The Amazon Web Services account ID of the account that created the
911
+ # queue.
745
912
  # @return [String]
746
913
  #
747
914
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlRequest AWS API Documentation
@@ -749,68 +916,364 @@ module Aws::SQS
749
916
  class GetQueueUrlRequest < Struct.new(
750
917
  :queue_name,
751
918
  :queue_owner_aws_account_id)
919
+ SENSITIVE = []
752
920
  include Aws::Structure
753
921
  end
754
922
 
755
923
  # For more information, see [Interpreting Responses][1] in the *Amazon
756
- # Simple Queue Service Developer Guide*.
924
+ # SQS Developer Guide*.
757
925
  #
758
926
  #
759
927
  #
760
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-api-responses.html
928
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-api-responses.html
761
929
  #
762
930
  # @!attribute [rw] queue_url
763
931
  # The URL of the queue.
764
932
  # @return [String]
765
933
  #
766
- # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlResult AWS API Documentation
934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlResult AWS API Documentation
935
+ #
936
+ class GetQueueUrlResult < Struct.new(
937
+ :queue_url)
938
+ SENSITIVE = []
939
+ include Aws::Structure
940
+ end
941
+
942
+ # The `accountId` is invalid.
943
+ #
944
+ # @!attribute [rw] message
945
+ # @return [String]
946
+ #
947
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAddress AWS API Documentation
948
+ #
949
+ class InvalidAddress < Struct.new(
950
+ :message)
951
+ SENSITIVE = []
952
+ include Aws::Structure
953
+ end
954
+
955
+ # The specified attribute doesn't exist.
956
+ #
957
+ # @!attribute [rw] message
958
+ # @return [String]
959
+ #
960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeName AWS API Documentation
961
+ #
962
+ class InvalidAttributeName < Struct.new(
963
+ :message)
964
+ SENSITIVE = []
965
+ include Aws::Structure
966
+ end
967
+
968
+ # A queue attribute value is invalid.
969
+ #
970
+ # @!attribute [rw] message
971
+ # @return [String]
972
+ #
973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeValue AWS API Documentation
974
+ #
975
+ class InvalidAttributeValue < Struct.new(
976
+ :message)
977
+ SENSITIVE = []
978
+ include Aws::Structure
979
+ end
980
+
981
+ # The `Id` of a batch entry in a batch request doesn't abide by the
982
+ # specification.
983
+ #
984
+ # @!attribute [rw] message
985
+ # @return [String]
986
+ #
987
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidBatchEntryId AWS API Documentation
988
+ #
989
+ class InvalidBatchEntryId < Struct.new(
990
+ :message)
991
+ SENSITIVE = []
992
+ include Aws::Structure
993
+ end
994
+
995
+ # The specified receipt handle isn't valid for the current version.
996
+ #
997
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidIdFormat AWS API Documentation
998
+ #
999
+ class InvalidIdFormat < Aws::EmptyStructure; end
1000
+
1001
+ # The message contains characters outside the allowed set.
1002
+ #
1003
+ # @!attribute [rw] message
1004
+ # @return [String]
1005
+ #
1006
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidMessageContents AWS API Documentation
1007
+ #
1008
+ class InvalidMessageContents < Struct.new(
1009
+ :message)
1010
+ SENSITIVE = []
1011
+ include Aws::Structure
1012
+ end
1013
+
1014
+ # When the request to a queue is not HTTPS and SigV4.
1015
+ #
1016
+ # @!attribute [rw] message
1017
+ # @return [String]
1018
+ #
1019
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidSecurity AWS API Documentation
1020
+ #
1021
+ class InvalidSecurity < Struct.new(
1022
+ :message)
1023
+ SENSITIVE = []
1024
+ include Aws::Structure
1025
+ end
1026
+
1027
+ # The caller doesn't have the required KMS access.
1028
+ #
1029
+ # @!attribute [rw] message
1030
+ # @return [String]
1031
+ #
1032
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsAccessDenied AWS API Documentation
1033
+ #
1034
+ class KmsAccessDenied < Struct.new(
1035
+ :message)
1036
+ SENSITIVE = []
1037
+ include Aws::Structure
1038
+ end
1039
+
1040
+ # The request was denied due to request throttling.
1041
+ #
1042
+ # @!attribute [rw] message
1043
+ # @return [String]
1044
+ #
1045
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsDisabled AWS API Documentation
1046
+ #
1047
+ class KmsDisabled < Struct.new(
1048
+ :message)
1049
+ SENSITIVE = []
1050
+ include Aws::Structure
1051
+ end
1052
+
1053
+ # The request was rejected for one of the following reasons:
1054
+ #
1055
+ # * The KeyUsage value of the KMS key is incompatible with the API
1056
+ # operation.
1057
+ #
1058
+ # * The encryption algorithm or signing algorithm specified for the
1059
+ # operation is incompatible with the type of key material in the KMS
1060
+ # key (KeySpec).
1061
+ #
1062
+ # @!attribute [rw] message
1063
+ # @return [String]
1064
+ #
1065
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidKeyUsage AWS API Documentation
1066
+ #
1067
+ class KmsInvalidKeyUsage < Struct.new(
1068
+ :message)
1069
+ SENSITIVE = []
1070
+ include Aws::Structure
1071
+ end
1072
+
1073
+ # The request was rejected because the state of the specified resource
1074
+ # is not valid for this request.
1075
+ #
1076
+ # @!attribute [rw] message
1077
+ # @return [String]
1078
+ #
1079
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidState AWS API Documentation
1080
+ #
1081
+ class KmsInvalidState < Struct.new(
1082
+ :message)
1083
+ SENSITIVE = []
1084
+ include Aws::Structure
1085
+ end
1086
+
1087
+ # The request was rejected because the specified entity or resource
1088
+ # could not be found.
1089
+ #
1090
+ # @!attribute [rw] message
1091
+ # @return [String]
1092
+ #
1093
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsNotFound AWS API Documentation
1094
+ #
1095
+ class KmsNotFound < Struct.new(
1096
+ :message)
1097
+ SENSITIVE = []
1098
+ include Aws::Structure
1099
+ end
1100
+
1101
+ # The request was rejected because the specified key policy isn't
1102
+ # syntactically or semantically correct.
1103
+ #
1104
+ # @!attribute [rw] message
1105
+ # @return [String]
1106
+ #
1107
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsOptInRequired AWS API Documentation
1108
+ #
1109
+ class KmsOptInRequired < Struct.new(
1110
+ :message)
1111
+ SENSITIVE = []
1112
+ include Aws::Structure
1113
+ end
1114
+
1115
+ # Amazon Web Services KMS throttles requests for the following
1116
+ # conditions.
1117
+ #
1118
+ # @!attribute [rw] message
1119
+ # @return [String]
1120
+ #
1121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsThrottled AWS API Documentation
1122
+ #
1123
+ class KmsThrottled < Struct.new(
1124
+ :message)
1125
+ SENSITIVE = []
1126
+ include Aws::Structure
1127
+ end
1128
+
1129
+ # @!attribute [rw] queue_url
1130
+ # The URL of a dead-letter queue.
1131
+ #
1132
+ # Queue URLs and names are case-sensitive.
1133
+ # @return [String]
1134
+ #
1135
+ # @!attribute [rw] next_token
1136
+ # Pagination token to request the next set of results.
1137
+ # @return [String]
1138
+ #
1139
+ # @!attribute [rw] max_results
1140
+ # Maximum number of results to include in the response. Value range is
1141
+ # 1 to 1000. You must set `MaxResults` to receive a value for
1142
+ # `NextToken` in the response.
1143
+ # @return [Integer]
1144
+ #
1145
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesRequest AWS API Documentation
1146
+ #
1147
+ class ListDeadLetterSourceQueuesRequest < Struct.new(
1148
+ :queue_url,
1149
+ :next_token,
1150
+ :max_results)
1151
+ SENSITIVE = []
1152
+ include Aws::Structure
1153
+ end
1154
+
1155
+ # A list of your dead letter source queues.
1156
+ #
1157
+ # @!attribute [rw] queue_urls
1158
+ # A list of source queue URLs that have the `RedrivePolicy` queue
1159
+ # attribute configured with a dead-letter queue.
1160
+ # @return [Array<String>]
1161
+ #
1162
+ # @!attribute [rw] next_token
1163
+ # Pagination token to include in the next request. Token value is
1164
+ # `null` if there are no additional results to request, or if you did
1165
+ # not set `MaxResults` in the request.
1166
+ # @return [String]
1167
+ #
1168
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesResult AWS API Documentation
1169
+ #
1170
+ class ListDeadLetterSourceQueuesResult < Struct.new(
1171
+ :queue_urls,
1172
+ :next_token)
1173
+ SENSITIVE = []
1174
+ include Aws::Structure
1175
+ end
1176
+
1177
+ # @!attribute [rw] source_arn
1178
+ # The ARN of the queue whose message movement tasks are to be listed.
1179
+ # @return [String]
1180
+ #
1181
+ # @!attribute [rw] max_results
1182
+ # The maximum number of results to include in the response. The
1183
+ # default is 1, which provides the most recent message movement task.
1184
+ # The upper limit is 10.
1185
+ # @return [Integer]
1186
+ #
1187
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksRequest AWS API Documentation
1188
+ #
1189
+ class ListMessageMoveTasksRequest < Struct.new(
1190
+ :source_arn,
1191
+ :max_results)
1192
+ SENSITIVE = []
1193
+ include Aws::Structure
1194
+ end
1195
+
1196
+ # @!attribute [rw] results
1197
+ # A list of message movement tasks and their attributes.
1198
+ # @return [Array<Types::ListMessageMoveTasksResultEntry>]
1199
+ #
1200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksResult AWS API Documentation
767
1201
  #
768
- class GetQueueUrlResult < Struct.new(
769
- :queue_url)
1202
+ class ListMessageMoveTasksResult < Struct.new(
1203
+ :results)
1204
+ SENSITIVE = []
770
1205
  include Aws::Structure
771
1206
  end
772
1207
 
773
- # @note When making an API call, you may pass ListDeadLetterSourceQueuesRequest
774
- # data as a hash:
1208
+ # Contains the details of a message movement task.
775
1209
  #
776
- # {
777
- # queue_url: "String", # required
778
- # }
1210
+ # @!attribute [rw] task_handle
1211
+ # An identifier associated with a message movement task. When this
1212
+ # field is returned in the response of the `ListMessageMoveTasks`
1213
+ # action, it is only populated for tasks that are in RUNNING status.
1214
+ # @return [String]
779
1215
  #
780
- # @!attribute [rw] queue_url
781
- # The URL of a dead-letter queue.
1216
+ # @!attribute [rw] status
1217
+ # The status of the message movement task. Possible values are:
1218
+ # RUNNING, COMPLETED, CANCELLING, CANCELLED, and FAILED.
1219
+ # @return [String]
782
1220
  #
783
- # Queue URLs and names are case-sensitive.
1221
+ # @!attribute [rw] source_arn
1222
+ # The ARN of the queue that contains the messages to be moved to
1223
+ # another queue.
784
1224
  # @return [String]
785
1225
  #
786
- # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesRequest AWS API Documentation
1226
+ # @!attribute [rw] destination_arn
1227
+ # The ARN of the destination queue if it has been specified in the
1228
+ # `StartMessageMoveTask` request. If a `DestinationArn` has not been
1229
+ # specified in the `StartMessageMoveTask` request, this field value
1230
+ # will be NULL.
1231
+ # @return [String]
787
1232
  #
788
- class ListDeadLetterSourceQueuesRequest < Struct.new(
789
- :queue_url)
790
- include Aws::Structure
791
- end
792
-
793
- # A list of your dead letter source queues.
1233
+ # @!attribute [rw] max_number_of_messages_per_second
1234
+ # The number of messages to be moved per second (the message movement
1235
+ # rate), if it has been specified in the `StartMessageMoveTask`
1236
+ # request. If a `MaxNumberOfMessagesPerSecond` has not been specified
1237
+ # in the `StartMessageMoveTask` request, this field value will be
1238
+ # NULL.
1239
+ # @return [Integer]
794
1240
  #
795
- # @!attribute [rw] queue_urls
796
- # A list of source queue URLs that have the `RedrivePolicy` queue
797
- # attribute configured with a dead-letter queue.
798
- # @return [Array<String>]
1241
+ # @!attribute [rw] approximate_number_of_messages_moved
1242
+ # The approximate number of messages already moved to the destination
1243
+ # queue.
1244
+ # @return [Integer]
799
1245
  #
800
- # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesResult AWS API Documentation
1246
+ # @!attribute [rw] approximate_number_of_messages_to_move
1247
+ # The number of messages to be moved from the source queue. This
1248
+ # number is obtained at the time of starting the message movement
1249
+ # task.
1250
+ # @return [Integer]
801
1251
  #
802
- class ListDeadLetterSourceQueuesResult < Struct.new(
803
- :queue_urls)
1252
+ # @!attribute [rw] failure_reason
1253
+ # The task failure reason (only included if the task status is
1254
+ # FAILED).
1255
+ # @return [String]
1256
+ #
1257
+ # @!attribute [rw] started_timestamp
1258
+ # The timestamp of starting the message movement task.
1259
+ # @return [Integer]
1260
+ #
1261
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksResultEntry AWS API Documentation
1262
+ #
1263
+ class ListMessageMoveTasksResultEntry < Struct.new(
1264
+ :task_handle,
1265
+ :status,
1266
+ :source_arn,
1267
+ :destination_arn,
1268
+ :max_number_of_messages_per_second,
1269
+ :approximate_number_of_messages_moved,
1270
+ :approximate_number_of_messages_to_move,
1271
+ :failure_reason,
1272
+ :started_timestamp)
1273
+ SENSITIVE = []
804
1274
  include Aws::Structure
805
1275
  end
806
1276
 
807
- # @note When making an API call, you may pass ListQueueTagsRequest
808
- # data as a hash:
809
- #
810
- # {
811
- # queue_url: "String", # required
812
- # }
813
- #
814
1277
  # @!attribute [rw] queue_url
815
1278
  # The URL of the queue.
816
1279
  # @return [String]
@@ -819,6 +1282,7 @@ module Aws::SQS
819
1282
  #
820
1283
  class ListQueueTagsRequest < Struct.new(
821
1284
  :queue_url)
1285
+ SENSITIVE = []
822
1286
  include Aws::Structure
823
1287
  end
824
1288
 
@@ -830,16 +1294,10 @@ module Aws::SQS
830
1294
  #
831
1295
  class ListQueueTagsResult < Struct.new(
832
1296
  :tags)
1297
+ SENSITIVE = []
833
1298
  include Aws::Structure
834
1299
  end
835
1300
 
836
- # @note When making an API call, you may pass ListQueuesRequest
837
- # data as a hash:
838
- #
839
- # {
840
- # queue_name_prefix: "String",
841
- # }
842
- #
843
1301
  # @!attribute [rw] queue_name_prefix
844
1302
  # A string to use for filtering the list results. Only those queues
845
1303
  # whose name begins with the specified string are returned.
@@ -847,23 +1305,45 @@ module Aws::SQS
847
1305
  # Queue URLs and names are case-sensitive.
848
1306
  # @return [String]
849
1307
  #
1308
+ # @!attribute [rw] next_token
1309
+ # Pagination token to request the next set of results.
1310
+ # @return [String]
1311
+ #
1312
+ # @!attribute [rw] max_results
1313
+ # Maximum number of results to include in the response. Value range is
1314
+ # 1 to 1000. You must set `MaxResults` to receive a value for
1315
+ # `NextToken` in the response.
1316
+ # @return [Integer]
1317
+ #
850
1318
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesRequest AWS API Documentation
851
1319
  #
852
1320
  class ListQueuesRequest < Struct.new(
853
- :queue_name_prefix)
1321
+ :queue_name_prefix,
1322
+ :next_token,
1323
+ :max_results)
1324
+ SENSITIVE = []
854
1325
  include Aws::Structure
855
1326
  end
856
1327
 
857
1328
  # A list of your queues.
858
1329
  #
859
1330
  # @!attribute [rw] queue_urls
860
- # A list of queue URLs, up to 1,000 entries.
1331
+ # A list of queue URLs, up to 1,000 entries, or the value of
1332
+ # `MaxResults` that you sent in the request.
861
1333
  # @return [Array<String>]
862
1334
  #
1335
+ # @!attribute [rw] next_token
1336
+ # Pagination token to include in the next request. Token value is
1337
+ # `null` if there are no additional results to request, or if you did
1338
+ # not set `MaxResults` in the request.
1339
+ # @return [String]
1340
+ #
863
1341
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesResult AWS API Documentation
864
1342
  #
865
1343
  class ListQueuesResult < Struct.new(
866
- :queue_urls)
1344
+ :queue_urls,
1345
+ :next_token)
1346
+ SENSITIVE = []
867
1347
  include Aws::Structure
868
1348
  end
869
1349
 
@@ -871,7 +1351,8 @@ module Aws::SQS
871
1351
  #
872
1352
  # @!attribute [rw] message_id
873
1353
  # A unique identifier for the message. A `MessageId`is considered
874
- # unique across all AWS accounts for an extended period of time.
1354
+ # unique across all Amazon Web Services accounts for an extended
1355
+ # period of time.
875
1356
  # @return [String]
876
1357
  #
877
1358
  # @!attribute [rw] receipt_handle
@@ -930,12 +1411,12 @@ module Aws::SQS
930
1411
  #
931
1412
  # @!attribute [rw] message_attributes
932
1413
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
933
- # For more information, see [Amazon SQS Message Attributes][1] in the
934
- # *Amazon Simple Queue Service Developer Guide*.
1414
+ # For more information, see [Amazon SQS message attributes][1] in the
1415
+ # *Amazon SQS Developer Guide*.
935
1416
  #
936
1417
  #
937
1418
  #
938
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1419
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
939
1420
  # @return [Hash<String,Types::MessageAttributeValue>]
940
1421
  #
941
1422
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/Message AWS API Documentation
@@ -948,6 +1429,7 @@ module Aws::SQS
948
1429
  :attributes,
949
1430
  :md5_of_message_attributes,
950
1431
  :message_attributes)
1432
+ SENSITIVE = []
951
1433
  include Aws::Structure
952
1434
  end
953
1435
 
@@ -957,20 +1439,9 @@ module Aws::SQS
957
1439
  #
958
1440
  # `Name`, `type`, `value` and the message body must not be empty or
959
1441
  # null. All parts of the message attribute, including `Name`, `Type`,
960
- # and `Value`, are part of the message size restriction (256 KB or
1442
+ # and `Value`, are part of the message size restriction (256 KiB or
961
1443
  # 262,144 bytes).
962
1444
  #
963
- # @note When making an API call, you may pass MessageAttributeValue
964
- # data as a hash:
965
- #
966
- # {
967
- # string_value: "String",
968
- # binary_value: "data",
969
- # string_list_values: ["String"],
970
- # binary_list_values: ["data"],
971
- # data_type: "String", # required
972
- # }
973
- #
974
1445
  # @!attribute [rw] string_value
975
1446
  # Strings are Unicode with UTF-8 binary encoding. For a list of code
976
1447
  # values, see [ASCII Printable Characters][1].
@@ -999,12 +1470,11 @@ module Aws::SQS
999
1470
  # `StringValue`.
1000
1471
  #
1001
1472
  # You can also append custom labels. For more information, see [Amazon
1002
- # SQS Message Attributes][1] in the *Amazon Simple Queue Service
1003
- # Developer Guide*.
1473
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1004
1474
  #
1005
1475
  #
1006
1476
  #
1007
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1477
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1008
1478
  # @return [String]
1009
1479
  #
1010
1480
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageAttributeValue AWS API Documentation
@@ -1015,16 +1485,101 @@ module Aws::SQS
1015
1485
  :string_list_values,
1016
1486
  :binary_list_values,
1017
1487
  :data_type)
1488
+ SENSITIVE = []
1489
+ include Aws::Structure
1490
+ end
1491
+
1492
+ # The specified message isn't in flight.
1493
+ #
1494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageNotInflight AWS API Documentation
1495
+ #
1496
+ class MessageNotInflight < Aws::EmptyStructure; end
1497
+
1498
+ # The user-specified message system attribute value. For string data
1499
+ # types, the `Value` attribute has the same restrictions on the content
1500
+ # as the message body. For more information, see ` SendMessage.`
1501
+ #
1502
+ # `Name`, `type`, `value` and the message body must not be empty or
1503
+ # null.
1504
+ #
1505
+ # @!attribute [rw] string_value
1506
+ # Strings are Unicode with UTF-8 binary encoding. For a list of code
1507
+ # values, see [ASCII Printable Characters][1].
1508
+ #
1509
+ #
1510
+ #
1511
+ # [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
1512
+ # @return [String]
1513
+ #
1514
+ # @!attribute [rw] binary_value
1515
+ # Binary type attributes can store any binary data, such as compressed
1516
+ # data, encrypted data, or images.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] string_list_values
1520
+ # Not implemented. Reserved for future use.
1521
+ # @return [Array<String>]
1522
+ #
1523
+ # @!attribute [rw] binary_list_values
1524
+ # Not implemented. Reserved for future use.
1525
+ # @return [Array<String>]
1526
+ #
1527
+ # @!attribute [rw] data_type
1528
+ # Amazon SQS supports the following logical data types: `String`,
1529
+ # `Number`, and `Binary`. For the `Number` data type, you must use
1530
+ # `StringValue`.
1531
+ #
1532
+ # You can also append custom labels. For more information, see [Amazon
1533
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1534
+ #
1535
+ #
1536
+ #
1537
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1538
+ # @return [String]
1539
+ #
1540
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageSystemAttributeValue AWS API Documentation
1541
+ #
1542
+ class MessageSystemAttributeValue < Struct.new(
1543
+ :string_value,
1544
+ :binary_value,
1545
+ :string_list_values,
1546
+ :binary_list_values,
1547
+ :data_type)
1548
+ SENSITIVE = []
1549
+ include Aws::Structure
1550
+ end
1551
+
1552
+ # The specified action violates a limit. For example, `ReceiveMessage`
1553
+ # returns this error if the maximum number of in flight messages is
1554
+ # reached and `AddPermission` returns this error if the maximum number
1555
+ # of permissions for the queue is reached.
1556
+ #
1557
+ # @!attribute [rw] message
1558
+ # @return [String]
1559
+ #
1560
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/OverLimit AWS API Documentation
1561
+ #
1562
+ class OverLimit < Struct.new(
1563
+ :message)
1564
+ SENSITIVE = []
1018
1565
  include Aws::Structure
1019
1566
  end
1020
1567
 
1021
- # @note When making an API call, you may pass PurgeQueueRequest
1022
- # data as a hash:
1568
+ # Indicates that the specified queue previously received a `PurgeQueue`
1569
+ # request within the last 60 seconds (the time it can take to delete the
1570
+ # messages in the queue).
1023
1571
  #
1024
- # {
1025
- # queue_url: "String", # required
1026
- # }
1572
+ # @!attribute [rw] message
1573
+ # @return [String]
1027
1574
  #
1575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueueInProgress AWS API Documentation
1576
+ #
1577
+ class PurgeQueueInProgress < Struct.new(
1578
+ :message)
1579
+ SENSITIVE = []
1580
+ include Aws::Structure
1581
+ end
1582
+
1028
1583
  # @!attribute [rw] queue_url
1029
1584
  # The URL of the queue from which the `PurgeQueue` action deletes
1030
1585
  # messages.
@@ -1036,22 +1591,65 @@ module Aws::SQS
1036
1591
  #
1037
1592
  class PurgeQueueRequest < Struct.new(
1038
1593
  :queue_url)
1594
+ SENSITIVE = []
1595
+ include Aws::Structure
1596
+ end
1597
+
1598
+ # You must wait 60 seconds after deleting a queue before you can create
1599
+ # another queue with the same name.
1600
+ #
1601
+ # @!attribute [rw] message
1602
+ # @return [String]
1603
+ #
1604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDeletedRecently AWS API Documentation
1605
+ #
1606
+ class QueueDeletedRecently < Struct.new(
1607
+ :message)
1608
+ SENSITIVE = []
1609
+ include Aws::Structure
1610
+ end
1611
+
1612
+ # The specified queue doesn't exist.
1613
+ #
1614
+ # @!attribute [rw] message
1615
+ # @return [String]
1616
+ #
1617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDoesNotExist AWS API Documentation
1618
+ #
1619
+ class QueueDoesNotExist < Struct.new(
1620
+ :message)
1621
+ SENSITIVE = []
1622
+ include Aws::Structure
1623
+ end
1624
+
1625
+ # A queue with this name already exists. Amazon SQS returns this error
1626
+ # only if the request includes attributes whose values differ from those
1627
+ # of the existing queue.
1628
+ #
1629
+ # @!attribute [rw] message
1630
+ # @return [String]
1631
+ #
1632
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueNameExists AWS API Documentation
1633
+ #
1634
+ class QueueNameExists < Struct.new(
1635
+ :message)
1636
+ SENSITIVE = []
1039
1637
  include Aws::Structure
1040
1638
  end
1041
1639
 
1042
- # @note When making an API call, you may pass ReceiveMessageRequest
1043
- # data as a hash:
1640
+ # The specified receipt handle isn't valid.
1641
+ #
1642
+ # @!attribute [rw] message
1643
+ # @return [String]
1044
1644
  #
1045
- # {
1046
- # queue_url: "String", # required
1047
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
1048
- # message_attribute_names: ["MessageAttributeName"],
1049
- # max_number_of_messages: 1,
1050
- # visibility_timeout: 1,
1051
- # wait_time_seconds: 1,
1052
- # receive_request_attempt_id: "String",
1053
- # }
1645
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiptHandleIsInvalid AWS API Documentation
1054
1646
  #
1647
+ class ReceiptHandleIsInvalid < Struct.new(
1648
+ :message)
1649
+ SENSITIVE = []
1650
+ include Aws::Structure
1651
+ end
1652
+
1055
1653
  # @!attribute [rw] queue_url
1056
1654
  # The URL of the Amazon SQS queue from which messages are received.
1057
1655
  #
@@ -1059,41 +1657,50 @@ module Aws::SQS
1059
1657
  # @return [String]
1060
1658
  #
1061
1659
  # @!attribute [rw] attribute_names
1062
- # A list of s that need to be returned along with each message. These
1063
- # attributes include:
1660
+ # A list of attributes that need to be returned along with each
1661
+ # message. These attributes include:
1064
1662
  #
1065
- # * `All` - Returns all values.
1663
+ # * `All` Returns all values.
1066
1664
  #
1067
- # * `ApproximateFirstReceiveTimestamp` - Returns the time the message
1665
+ # * `ApproximateFirstReceiveTimestamp` Returns the time the message
1068
1666
  # was first received from the queue ([epoch time][1] in
1069
1667
  # milliseconds).
1070
1668
  #
1071
- # * `ApproximateReceiveCount` - Returns the number of times a message
1072
- # has been received from the queue but not deleted.
1669
+ # * `ApproximateReceiveCount` Returns the number of times a message
1670
+ # has been received across all queues but not deleted.
1671
+ #
1672
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1073
1673
  #
1074
1674
  # * `SenderId`
1075
1675
  #
1076
- # * For an IAM user, returns the IAM user ID, for example
1676
+ # * For a user, returns the user ID, for example
1077
1677
  # `ABCDEFGHI1JKLMNOPQ23R`.
1078
1678
  #
1079
1679
  # * For an IAM role, returns the IAM role ID, for example
1080
1680
  # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1081
1681
  #
1082
- # * `SentTimestamp` - Returns the time the message was sent to the
1682
+ # * `SentTimestamp` Returns the time the message was sent to the
1083
1683
  # queue ([epoch time][1] in milliseconds).
1084
1684
  #
1085
- # * `MessageDeduplicationId` - Returns the value provided by the
1685
+ # * `SqsManagedSseEnabled` Enables server-side queue encryption
1686
+ # using SQS owned encryption keys. Only one server-side encryption
1687
+ # option is supported per queue (for example, [SSE-KMS][2] or
1688
+ # [SSE-SQS][3]).
1689
+ #
1690
+ # * `MessageDeduplicationId` – Returns the value provided by the
1086
1691
  # producer that calls the ` SendMessage ` action.
1087
1692
  #
1088
- # * `MessageGroupId` - Returns the value provided by the producer that
1693
+ # * `MessageGroupId` Returns the value provided by the producer that
1089
1694
  # calls the ` SendMessage ` action. Messages with the same
1090
1695
  # `MessageGroupId` are returned in sequence.
1091
1696
  #
1092
- # * `SequenceNumber` - Returns the value provided by Amazon SQS.
1697
+ # * `SequenceNumber` Returns the value provided by Amazon SQS.
1093
1698
  #
1094
1699
  #
1095
1700
  #
1096
1701
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1702
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1703
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1097
1704
  # @return [Array<String>]
1098
1705
  #
1099
1706
  # @!attribute [rw] message_attribute_names
@@ -1137,6 +1744,18 @@ module Aws::SQS
1137
1744
  # call returns sooner than `WaitTimeSeconds`. If no messages are
1138
1745
  # available and the wait time expires, the call returns successfully
1139
1746
  # with an empty list of messages.
1747
+ #
1748
+ # To avoid HTTP errors, ensure that the HTTP response timeout for
1749
+ # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
1750
+ # parameter. For example, with the Java SDK, you can set HTTP
1751
+ # transport settings using the [ NettyNioAsyncHttpClient][1] for
1752
+ # asynchronous clients, or the [ ApacheHttpClient][2] for synchronous
1753
+ # clients.
1754
+ #
1755
+ #
1756
+ #
1757
+ # [1]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/nio/netty/NettyNioAsyncHttpClient.html
1758
+ # [2]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/apache/ApacheHttpClient.html
1140
1759
  # @return [Integer]
1141
1760
  #
1142
1761
  # @!attribute [rw] receive_request_attempt_id
@@ -1144,10 +1763,10 @@ module Aws::SQS
1144
1763
  #
1145
1764
  # The token used for deduplication of `ReceiveMessage` calls. If a
1146
1765
  # networking issue occurs after a `ReceiveMessage` action, and instead
1147
- # of a response you receive a generic error, you can retry the same
1148
- # action with an identical `ReceiveRequestAttemptId` to retrieve the
1149
- # same set of messages, even if their visibility timeout has not yet
1150
- # expired.
1766
+ # of a response you receive a generic error, it is possible to retry
1767
+ # the same action with an identical `ReceiveRequestAttemptId` to
1768
+ # retrieve the same set of messages, even if their visibility timeout
1769
+ # has not yet expired.
1151
1770
  #
1152
1771
  # * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
1153
1772
  # `ReceiveMessage` action.
@@ -1159,7 +1778,7 @@ module Aws::SQS
1159
1778
  # `ReceiveRequestAttemptId`, Amazon SQS generates a
1160
1779
  # `ReceiveRequestAttemptId`.
1161
1780
  #
1162
- # * You can retry the `ReceiveMessage` action with the same
1781
+ # * It is possible to retry the `ReceiveMessage` action with the same
1163
1782
  # `ReceiveRequestAttemptId` if none of the messages have been
1164
1783
  # modified (deleted or had their visibility changes).
1165
1784
  #
@@ -1167,8 +1786,7 @@ module Aws::SQS
1167
1786
  # `ReceiveRequestAttemptId` return the same messages and receipt
1168
1787
  # handles. If a retry occurs within the deduplication interval, it
1169
1788
  # resets the visibility timeout. For more information, see
1170
- # [Visibility Timeout][1] in the *Amazon Simple Queue Service
1171
- # Developer Guide*.
1789
+ # [Visibility Timeout][1] in the *Amazon SQS Developer Guide*.
1172
1790
  #
1173
1791
  # If a caller of the `ReceiveMessage` action still processes
1174
1792
  # messages when the visibility timeout expires and messages become
@@ -1193,19 +1811,19 @@ module Aws::SQS
1193
1811
  # visibility timeout expires. As a result, delays might occur but
1194
1812
  # the messages in the queue remain in a strict order.
1195
1813
  #
1196
- # The length of `ReceiveRequestAttemptId` is 128 characters.
1814
+ # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1197
1815
  # `ReceiveRequestAttemptId` can contain alphanumeric characters
1198
1816
  # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1199
1817
  # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1200
1818
  #
1201
1819
  # For best practices of using `ReceiveRequestAttemptId`, see [Using
1202
- # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
1203
- # Simple Queue Service Developer Guide*.
1820
+ # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
1821
+ # Developer Guide*.
1204
1822
  #
1205
1823
  #
1206
1824
  #
1207
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1208
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html
1825
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1826
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html
1209
1827
  # @return [String]
1210
1828
  #
1211
1829
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiveMessageRequest AWS API Documentation
@@ -1218,6 +1836,7 @@ module Aws::SQS
1218
1836
  :visibility_timeout,
1219
1837
  :wait_time_seconds,
1220
1838
  :receive_request_attempt_id)
1839
+ SENSITIVE = []
1221
1840
  include Aws::Structure
1222
1841
  end
1223
1842
 
@@ -1231,17 +1850,10 @@ module Aws::SQS
1231
1850
  #
1232
1851
  class ReceiveMessageResult < Struct.new(
1233
1852
  :messages)
1853
+ SENSITIVE = []
1234
1854
  include Aws::Structure
1235
1855
  end
1236
1856
 
1237
- # @note When making an API call, you may pass RemovePermissionRequest
1238
- # data as a hash:
1239
- #
1240
- # {
1241
- # queue_url: "String", # required
1242
- # label: "String", # required
1243
- # }
1244
- #
1245
1857
  # @!attribute [rw] queue_url
1246
1858
  # The URL of the Amazon SQS queue from which permissions are removed.
1247
1859
  #
@@ -1258,34 +1870,49 @@ module Aws::SQS
1258
1870
  class RemovePermissionRequest < Struct.new(
1259
1871
  :queue_url,
1260
1872
  :label)
1873
+ SENSITIVE = []
1874
+ include Aws::Structure
1875
+ end
1876
+
1877
+ # The request was denied due to request throttling.
1878
+ #
1879
+ # * The rate of requests per second exceeds the Amazon Web Services KMS
1880
+ # request quota for an account and Region.
1881
+ #
1882
+ # * A burst or sustained high rate of requests to change the state of
1883
+ # the same KMS key. This condition is often known as a "hot key."
1884
+ #
1885
+ # * Requests for operations on KMS keys in a Amazon Web Services
1886
+ # CloudHSM key store might be throttled at a lower-than-expected rate
1887
+ # when the Amazon Web Services CloudHSM cluster associated with the
1888
+ # Amazon Web Services CloudHSM key store is processing numerous
1889
+ # commands, including those unrelated to the Amazon Web Services
1890
+ # CloudHSM key store.
1891
+ #
1892
+ # @!attribute [rw] message
1893
+ # @return [String]
1894
+ #
1895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RequestThrottled AWS API Documentation
1896
+ #
1897
+ class RequestThrottled < Struct.new(
1898
+ :message)
1899
+ SENSITIVE = []
1261
1900
  include Aws::Structure
1262
1901
  end
1263
1902
 
1264
- # @note When making an API call, you may pass SendMessageBatchRequest
1265
- # data as a hash:
1266
- #
1267
- # {
1268
- # queue_url: "String", # required
1269
- # entries: [ # required
1270
- # {
1271
- # id: "String", # required
1272
- # message_body: "String", # required
1273
- # delay_seconds: 1,
1274
- # message_attributes: {
1275
- # "String" => {
1276
- # string_value: "String",
1277
- # binary_value: "data",
1278
- # string_list_values: ["String"],
1279
- # binary_list_values: ["data"],
1280
- # data_type: "String", # required
1281
- # },
1282
- # },
1283
- # message_deduplication_id: "String",
1284
- # message_group_id: "String",
1285
- # },
1286
- # ],
1287
- # }
1903
+ # One or more specified resources don't exist.
1904
+ #
1905
+ # @!attribute [rw] message
1906
+ # @return [String]
1907
+ #
1908
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ResourceNotFoundException AWS API Documentation
1288
1909
  #
1910
+ class ResourceNotFoundException < Struct.new(
1911
+ :message)
1912
+ SENSITIVE = []
1913
+ include Aws::Structure
1914
+ end
1915
+
1289
1916
  # @!attribute [rw] queue_url
1290
1917
  # The URL of the Amazon SQS queue to which batched messages are sent.
1291
1918
  #
@@ -1301,37 +1928,18 @@ module Aws::SQS
1301
1928
  class SendMessageBatchRequest < Struct.new(
1302
1929
  :queue_url,
1303
1930
  :entries)
1931
+ SENSITIVE = []
1304
1932
  include Aws::Structure
1305
1933
  end
1306
1934
 
1307
1935
  # Contains the details of a single Amazon SQS message along with an
1308
1936
  # `Id`.
1309
1937
  #
1310
- # @note When making an API call, you may pass SendMessageBatchRequestEntry
1311
- # data as a hash:
1312
- #
1313
- # {
1314
- # id: "String", # required
1315
- # message_body: "String", # required
1316
- # delay_seconds: 1,
1317
- # message_attributes: {
1318
- # "String" => {
1319
- # string_value: "String",
1320
- # binary_value: "data",
1321
- # string_list_values: ["String"],
1322
- # binary_list_values: ["data"],
1323
- # data_type: "String", # required
1324
- # },
1325
- # },
1326
- # message_deduplication_id: "String",
1327
- # message_group_id: "String",
1328
- # }
1329
- #
1330
1938
  # @!attribute [rw] id
1331
1939
  # An identifier for a message in this batch used to communicate the
1332
1940
  # result.
1333
1941
  #
1334
- # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
1942
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request.
1335
1943
  #
1336
1944
  # This identifier can have up to 80 characters. The following
1337
1945
  # characters are accepted: alphanumeric characters, hyphens(-), and
@@ -1359,14 +1967,26 @@ module Aws::SQS
1359
1967
  #
1360
1968
  # @!attribute [rw] message_attributes
1361
1969
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1362
- # For more information, see [Amazon SQS Message Attributes][1] in the
1363
- # *Amazon Simple Queue Service Developer Guide*.
1970
+ # For more information, see [Amazon SQS message attributes][1] in the
1971
+ # *Amazon SQS Developer Guide*.
1364
1972
  #
1365
1973
  #
1366
1974
  #
1367
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
1975
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1368
1976
  # @return [Hash<String,Types::MessageAttributeValue>]
1369
1977
  #
1978
+ # @!attribute [rw] message_system_attributes
1979
+ # The message system attribute to send Each message system attribute
1980
+ # consists of a `Name`, `Type`, and `Value`.
1981
+ #
1982
+ # * Currently, the only supported message system attribute is
1983
+ # `AWSTraceHeader`. Its type must be `String` and its value must be
1984
+ # a correctly formatted X-Ray trace header string.
1985
+ #
1986
+ # * The size of a message system attribute doesn't count towards the
1987
+ # total size of a message.
1988
+ # @return [Hash<String,Types::MessageSystemAttributeValue>]
1989
+ #
1370
1990
  # @!attribute [rw] message_deduplication_id
1371
1991
  # This parameter applies only to FIFO (first-in-first-out) queues.
1372
1992
  #
@@ -1374,8 +1994,8 @@ module Aws::SQS
1374
1994
  # minimum deduplication interval. If a message with a particular
1375
1995
  # `MessageDeduplicationId` is sent successfully, subsequent messages
1376
1996
  # with the same `MessageDeduplicationId` are accepted successfully but
1377
- # aren't delivered. For more information, see [ Exactly-Once
1378
- # Processing][1] in the *Amazon Simple Queue Service Developer Guide*.
1997
+ # aren't delivered. For more information, see [ Exactly-once
1998
+ # processing][1] in the *Amazon SQS Developer Guide*.
1379
1999
  #
1380
2000
  # * Every message must have a unique `MessageDeduplicationId`,
1381
2001
  #
@@ -1424,13 +2044,13 @@ module Aws::SQS
1424
2044
  # ``).
1425
2045
  #
1426
2046
  # For best practices of using `MessageDeduplicationId`, see [Using the
1427
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1428
- # Service Developer Guide*.
2047
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2048
+ # Guide*.
1429
2049
  #
1430
2050
  #
1431
2051
  #
1432
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1433
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
2052
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2053
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1434
2054
  # @return [String]
1435
2055
  #
1436
2056
  # @!attribute [rw] message_group_id
@@ -1458,15 +2078,14 @@ module Aws::SQS
1458
2078
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1459
2079
  #
1460
2080
  # For best practices of using `MessageGroupId`, see [Using the
1461
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1462
- # Developer Guide*.
2081
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1463
2082
  #
1464
2083
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1465
2084
  # Standard queues.
1466
2085
  #
1467
2086
  #
1468
2087
  #
1469
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
2088
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
1470
2089
  # @return [String]
1471
2090
  #
1472
2091
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessageBatchRequestEntry AWS API Documentation
@@ -1476,8 +2095,10 @@ module Aws::SQS
1476
2095
  :message_body,
1477
2096
  :delay_seconds,
1478
2097
  :message_attributes,
2098
+ :message_system_attributes,
1479
2099
  :message_deduplication_id,
1480
2100
  :message_group_id)
2101
+ SENSITIVE = []
1481
2102
  include Aws::Structure
1482
2103
  end
1483
2104
 
@@ -1499,6 +2120,7 @@ module Aws::SQS
1499
2120
  class SendMessageBatchResult < Struct.new(
1500
2121
  :successful,
1501
2122
  :failed)
2123
+ SENSITIVE = []
1502
2124
  include Aws::Structure
1503
2125
  end
1504
2126
 
@@ -1514,11 +2136,10 @@ module Aws::SQS
1514
2136
  # @return [String]
1515
2137
  #
1516
2138
  # @!attribute [rw] md5_of_message_body
1517
- # An MD5 digest of the non-URL-encoded message attribute string. You
1518
- # can use this attribute to verify that Amazon SQS received the
1519
- # message correctly. Amazon SQS URL-decodes the message before
1520
- # creating the MD5 digest. For information about MD5, see
1521
- # [RFC1321][1].
2139
+ # An MD5 digest of the non-URL-encoded message body string. You can
2140
+ # use this attribute to verify that Amazon SQS received the message
2141
+ # correctly. Amazon SQS URL-decodes the message before creating the
2142
+ # MD5 digest. For information about MD5, see [RFC1321][1].
1522
2143
  #
1523
2144
  #
1524
2145
  #
@@ -1537,6 +2158,18 @@ module Aws::SQS
1537
2158
  # [1]: https://www.ietf.org/rfc/rfc1321.txt
1538
2159
  # @return [String]
1539
2160
  #
2161
+ # @!attribute [rw] md5_of_message_system_attributes
2162
+ # An MD5 digest of the non-URL-encoded message system attribute
2163
+ # string. You can use this attribute to verify that Amazon SQS
2164
+ # received the message correctly. Amazon SQS URL-decodes the message
2165
+ # before creating the MD5 digest. For information about MD5, see
2166
+ # [RFC1321][1].
2167
+ #
2168
+ #
2169
+ #
2170
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
2171
+ # @return [String]
2172
+ #
1540
2173
  # @!attribute [rw] sequence_number
1541
2174
  # This parameter applies only to FIFO (first-in-first-out) queues.
1542
2175
  #
@@ -1554,30 +2187,12 @@ module Aws::SQS
1554
2187
  :message_id,
1555
2188
  :md5_of_message_body,
1556
2189
  :md5_of_message_attributes,
2190
+ :md5_of_message_system_attributes,
1557
2191
  :sequence_number)
2192
+ SENSITIVE = []
1558
2193
  include Aws::Structure
1559
2194
  end
1560
2195
 
1561
- # @note When making an API call, you may pass SendMessageRequest
1562
- # data as a hash:
1563
- #
1564
- # {
1565
- # queue_url: "String", # required
1566
- # message_body: "String", # required
1567
- # delay_seconds: 1,
1568
- # message_attributes: {
1569
- # "String" => {
1570
- # string_value: "String",
1571
- # binary_value: "data",
1572
- # string_list_values: ["String"],
1573
- # binary_list_values: ["data"],
1574
- # data_type: "String", # required
1575
- # },
1576
- # },
1577
- # message_deduplication_id: "String",
1578
- # message_group_id: "String",
1579
- # }
1580
- #
1581
2196
  # @!attribute [rw] queue_url
1582
2197
  # The URL of the Amazon SQS queue to which a message is sent.
1583
2198
  #
@@ -1585,7 +2200,8 @@ module Aws::SQS
1585
2200
  # @return [String]
1586
2201
  #
1587
2202
  # @!attribute [rw] message_body
1588
- # The message to send. The maximum string size is 256 KB.
2203
+ # The message to send. The minimum size is one character. The maximum
2204
+ # size is 256 KiB.
1589
2205
  #
1590
2206
  # A message can include only XML, JSON, and unformatted text. The
1591
2207
  # following Unicode characters are allowed:
@@ -1616,14 +2232,26 @@ module Aws::SQS
1616
2232
  #
1617
2233
  # @!attribute [rw] message_attributes
1618
2234
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1619
- # For more information, see [Amazon SQS Message Attributes][1] in the
1620
- # *Amazon Simple Queue Service Developer Guide*.
2235
+ # For more information, see [Amazon SQS message attributes][1] in the
2236
+ # *Amazon SQS Developer Guide*.
1621
2237
  #
1622
2238
  #
1623
2239
  #
1624
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html
2240
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1625
2241
  # @return [Hash<String,Types::MessageAttributeValue>]
1626
2242
  #
2243
+ # @!attribute [rw] message_system_attributes
2244
+ # The message system attribute to send. Each message system attribute
2245
+ # consists of a `Name`, `Type`, and `Value`.
2246
+ #
2247
+ # * Currently, the only supported message system attribute is
2248
+ # `AWSTraceHeader`. Its type must be `String` and its value must be
2249
+ # a correctly formatted X-Ray trace header string.
2250
+ #
2251
+ # * The size of a message system attribute doesn't count towards the
2252
+ # total size of a message.
2253
+ # @return [Hash<String,Types::MessageSystemAttributeValue>]
2254
+ #
1627
2255
  # @!attribute [rw] message_deduplication_id
1628
2256
  # This parameter applies only to FIFO (first-in-first-out) queues.
1629
2257
  #
@@ -1631,8 +2259,8 @@ module Aws::SQS
1631
2259
  # a particular `MessageDeduplicationId` is sent successfully, any
1632
2260
  # messages sent with the same `MessageDeduplicationId` are accepted
1633
2261
  # successfully but aren't delivered during the 5-minute deduplication
1634
- # interval. For more information, see [ Exactly-Once Processing][1] in
1635
- # the *Amazon Simple Queue Service Developer Guide*.
2262
+ # interval. For more information, see [ Exactly-once processing][1] in
2263
+ # the *Amazon SQS Developer Guide*.
1636
2264
  #
1637
2265
  # * Every message must have a unique `MessageDeduplicationId`,
1638
2266
  #
@@ -1675,19 +2303,19 @@ module Aws::SQS
1675
2303
  #
1676
2304
  # </note>
1677
2305
  #
1678
- # The length of `MessageDeduplicationId` is 128 characters.
2306
+ # The maximum length of `MessageDeduplicationId` is 128 characters.
1679
2307
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1680
2308
  # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1681
2309
  # ``).
1682
2310
  #
1683
2311
  # For best practices of using `MessageDeduplicationId`, see [Using the
1684
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1685
- # Service Developer Guide*.
2312
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2313
+ # Guide*.
1686
2314
  #
1687
2315
  #
1688
2316
  #
1689
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1690
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
2317
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2318
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1691
2319
  # @return [String]
1692
2320
  #
1693
2321
  # @!attribute [rw] message_group_id
@@ -1715,15 +2343,14 @@ module Aws::SQS
1715
2343
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1716
2344
  #
1717
2345
  # For best practices of using `MessageGroupId`, see [Using the
1718
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1719
- # Developer Guide*.
2346
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1720
2347
  #
1721
2348
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1722
2349
  # Standard queues.
1723
2350
  #
1724
2351
  #
1725
2352
  #
1726
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
2353
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
1727
2354
  # @return [String]
1728
2355
  #
1729
2356
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessageRequest AWS API Documentation
@@ -1733,19 +2360,20 @@ module Aws::SQS
1733
2360
  :message_body,
1734
2361
  :delay_seconds,
1735
2362
  :message_attributes,
2363
+ :message_system_attributes,
1736
2364
  :message_deduplication_id,
1737
2365
  :message_group_id)
2366
+ SENSITIVE = []
1738
2367
  include Aws::Structure
1739
2368
  end
1740
2369
 
1741
2370
  # The `MD5OfMessageBody` and `MessageId` elements.
1742
2371
  #
1743
2372
  # @!attribute [rw] md5_of_message_body
1744
- # An MD5 digest of the non-URL-encoded message attribute string. You
1745
- # can use this attribute to verify that Amazon SQS received the
1746
- # message correctly. Amazon SQS URL-decodes the message before
1747
- # creating the MD5 digest. For information about MD5, see
1748
- # [RFC1321][1].
2373
+ # An MD5 digest of the non-URL-encoded message body string. You can
2374
+ # use this attribute to verify that Amazon SQS received the message
2375
+ # correctly. Amazon SQS URL-decodes the message before creating the
2376
+ # MD5 digest. For information about MD5, see [RFC1321][1].
1749
2377
  #
1750
2378
  #
1751
2379
  #
@@ -1764,14 +2392,21 @@ module Aws::SQS
1764
2392
  # [1]: https://www.ietf.org/rfc/rfc1321.txt
1765
2393
  # @return [String]
1766
2394
  #
2395
+ # @!attribute [rw] md5_of_message_system_attributes
2396
+ # An MD5 digest of the non-URL-encoded message system attribute
2397
+ # string. You can use this attribute to verify that Amazon SQS
2398
+ # received the message correctly. Amazon SQS URL-decodes the message
2399
+ # before creating the MD5 digest.
2400
+ # @return [String]
2401
+ #
1767
2402
  # @!attribute [rw] message_id
1768
2403
  # An attribute containing the `MessageId` of the message sent to the
1769
2404
  # queue. For more information, see [Queue and Message Identifiers][1]
1770
- # in the *Amazon Simple Queue Service Developer Guide*.
2405
+ # in the *Amazon SQS Developer Guide*.
1771
2406
  #
1772
2407
  #
1773
2408
  #
1774
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
2409
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1775
2410
  # @return [String]
1776
2411
  #
1777
2412
  # @!attribute [rw] sequence_number
@@ -1789,21 +2424,13 @@ module Aws::SQS
1789
2424
  class SendMessageResult < Struct.new(
1790
2425
  :md5_of_message_body,
1791
2426
  :md5_of_message_attributes,
2427
+ :md5_of_message_system_attributes,
1792
2428
  :message_id,
1793
2429
  :sequence_number)
2430
+ SENSITIVE = []
1794
2431
  include Aws::Structure
1795
2432
  end
1796
2433
 
1797
- # @note When making an API call, you may pass SetQueueAttributesRequest
1798
- # data as a hash:
1799
- #
1800
- # {
1801
- # queue_url: "String", # required
1802
- # attributes: { # required
1803
- # "All" => "String",
1804
- # },
1805
- # }
1806
- #
1807
2434
  # @!attribute [rw] queue_url
1808
2435
  # The URL of the Amazon SQS queue whose attributes are set.
1809
2436
  #
@@ -1817,83 +2444,122 @@ module Aws::SQS
1817
2444
  # special request parameters that the `SetQueueAttributes` action
1818
2445
  # uses:
1819
2446
  #
1820
- # * `DelaySeconds` - The length of time, in seconds, for which the
2447
+ # * `DelaySeconds` The length of time, in seconds, for which the
1821
2448
  # delivery of all messages in the queue is delayed. Valid values: An
1822
2449
  # integer from 0 to 900 (15 minutes). Default: 0.
1823
2450
  #
1824
- # * `MaximumMessageSize` - The limit of how many bytes a message can
2451
+ # * `MaximumMessageSize` The limit of how many bytes a message can
1825
2452
  # contain before Amazon SQS rejects it. Valid values: An integer
1826
2453
  # from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). Default:
1827
2454
  # 262,144 (256 KiB).
1828
2455
  #
1829
- # * `MessageRetentionPeriod` - The length of time, in seconds, for
2456
+ # * `MessageRetentionPeriod` The length of time, in seconds, for
1830
2457
  # which Amazon SQS retains a message. Valid values: An integer
1831
2458
  # representing seconds, from 60 (1 minute) to 1,209,600 (14 days).
1832
- # Default: 345,600 (4 days).
1833
- #
1834
- # * `Policy` - The queue's policy. A valid AWS policy. For more
1835
- # information about policy structure, see [Overview of AWS IAM
1836
- # Policies][1] in the *Amazon IAM User Guide*.
1837
- #
1838
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
2459
+ # Default: 345,600 (4 days). When you change a queue's attributes,
2460
+ # the change can take up to 60 seconds for most of the attributes to
2461
+ # propagate throughout the Amazon SQS system. Changes made to the
2462
+ # `MessageRetentionPeriod` attribute can take up to 15 minutes and
2463
+ # will impact existing messages in the queue potentially causing
2464
+ # them to be expired and deleted if the `MessageRetentionPeriod` is
2465
+ # reduced below the age of existing messages.
2466
+ #
2467
+ # * `Policy` – The queue's policy. A valid Amazon Web Services
2468
+ # policy. For more information about policy structure, see [Overview
2469
+ # of Amazon Web Services IAM Policies][1] in the *Identity and
2470
+ # Access Management User Guide*.
2471
+ #
2472
+ # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
1839
2473
  # for which a ` ReceiveMessage ` action waits for a message to
1840
- # arrive. Valid values: an integer from 0 to 20 (seconds). Default:
2474
+ # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
1841
2475
  # 0.
1842
2476
  #
1843
- # * `RedrivePolicy` - The string that includes the parameters for the
1844
- # dead-letter queue functionality of the source queue. For more
1845
- # information about the redrive policy and dead-letter queues, see
1846
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple
1847
- # Queue Service Developer Guide*.
2477
+ # * `VisibilityTimeout` The visibility timeout for the queue, in
2478
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2479
+ # Default: 30. For more information about the visibility timeout,
2480
+ # see [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
2481
+ #
2482
+ # The following attributes apply only to [dead-letter queues:][3]
2483
+ #
2484
+ # * `RedrivePolicy` – The string that includes the parameters for the
2485
+ # dead-letter queue functionality of the source queue as a JSON
2486
+ # object. The parameters are as follows:
1848
2487
  #
1849
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
2488
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
1850
2489
  # dead-letter queue to which Amazon SQS moves messages after the
1851
2490
  # value of `maxReceiveCount` is exceeded.
1852
2491
  #
1853
- # * `maxReceiveCount` - The number of times a message is delivered
2492
+ # * `maxReceiveCount` The number of times a message is delivered
1854
2493
  # to the source queue before being moved to the dead-letter queue.
1855
- # When the `ReceiveCount` for a message exceeds the
2494
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
1856
2495
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
1857
2496
  # the dead-letter-queue.
1858
2497
  #
1859
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
1860
- # Similarly, the dead-letter queue of a standard queue must also be
1861
- # a standard queue.
2498
+ # * `RedriveAllowPolicy` The string that includes the parameters for
2499
+ # the permissions for the dead-letter queue redrive permission and
2500
+ # which source queues can specify dead-letter queues as a JSON
2501
+ # object. The parameters are as follows:
1862
2502
  #
1863
- # </note>
2503
+ # * `redrivePermission` – The permission type that defines which
2504
+ # source queues can specify the current queue as the dead-letter
2505
+ # queue. Valid values are:
1864
2506
  #
1865
- # * `VisibilityTimeout` - The visibility timeout for the queue, in
1866
- # seconds. Valid values: an integer from 0 to 43,200 (12 hours).
1867
- # Default: 30. For more information about the visibility timeout,
1868
- # see [Visibility Timeout][3] in the *Amazon Simple Queue Service
1869
- # Developer Guide*.
2507
+ # * `allowAll` (Default) Any source queues in this Amazon Web
2508
+ # Services account in the same Region can specify this queue as
2509
+ # the dead-letter queue.
2510
+ #
2511
+ # * `denyAll` – No source queues can specify this queue as the
2512
+ # dead-letter queue.
2513
+ #
2514
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
2515
+ # parameter can specify this queue as the dead-letter queue.
2516
+ #
2517
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
2518
+ # source queues that can specify this queue as the dead-letter
2519
+ # queue and redrive messages. You can specify this parameter only
2520
+ # when the `redrivePermission` parameter is set to `byQueue`. You
2521
+ # can specify up to 10 source queue ARNs. To allow more than 10
2522
+ # source queues to specify dead-letter queues, set the
2523
+ # `redrivePermission` parameter to `allowAll`.
2524
+ #
2525
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2526
+ # Similarly, the dead-letter queue of a standard queue must also be a
2527
+ # standard queue.
1870
2528
  #
1871
- # The following attributes apply only to [server-side-encryption][4]\:
2529
+ # </note>
2530
+ #
2531
+ # The following attributes apply only to [server-side-encryption][4]:
1872
2532
  #
1873
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
1874
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
1875
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
1876
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
1877
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
1878
- # the *AWS Key Management Service API Reference*.
2533
+ # * `KmsMasterKeyId` The ID of an Amazon Web Services managed
2534
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
2535
+ # information, see [Key Terms][5]. While the alias of the
2536
+ # AWS-managed CMK for Amazon SQS is always `alias/aws/sqs`, the
2537
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
2538
+ # more examples, see [KeyId][6] in the *Key Management Service API
2539
+ # Reference*.
1879
2540
  #
1880
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds,
2541
+ # * `KmsDataKeyReusePeriodSeconds` The length of time, in seconds,
1881
2542
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
1882
- # decrypt messages before calling AWS KMS again. An integer
1883
- # representing seconds, between 60 seconds (1 minute) and 86,400
1884
- # seconds (24 hours). Default: 300 (5 minutes). A shorter time
1885
- # period provides better security but results in more calls to KMS
1886
- # which might incur charges after Free Tier. For more information,
1887
- # see [How Does the Data Key Reuse Period Work?][8].
2543
+ # decrypt messages before calling KMS again. An integer representing
2544
+ # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
2545
+ # hours). Default: 300 (5 minutes). A shorter time period provides
2546
+ # better security but results in more calls to KMS which might incur
2547
+ # charges after Free Tier. For more information, see [How Does the
2548
+ # Data Key Reuse Period Work?][8].
2549
+ #
2550
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
2551
+ # using SQS owned encryption keys. Only one server-side encryption
2552
+ # option is supported per queue (for example, [SSE-KMS][9] or
2553
+ # [SSE-SQS][10]).
1888
2554
  #
1889
2555
  # The following attribute applies only to [FIFO (first-in-first-out)
1890
- # queues][9]\:
2556
+ # queues][11]:
1891
2557
  #
1892
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
1893
- # For more information, see [Exactly-Once Processing][10] in the
1894
- # *Amazon Simple Queue Service Developer Guide*.
2558
+ # * `ContentBasedDeduplication` Enables content-based deduplication.
2559
+ # For more information, see [Exactly-once processing][12] in the
2560
+ # *Amazon SQS Developer Guide*. Note the following:
1895
2561
  #
1896
- # * Every message must have a unique `MessageDeduplicationId`,
2562
+ # * Every message must have a unique `MessageDeduplicationId`.
1897
2563
  #
1898
2564
  # * You may provide a `MessageDeduplicationId` explicitly.
1899
2565
  #
@@ -1921,18 +2587,48 @@ module Aws::SQS
1921
2587
  # `MessageDeduplicationId`, the two messages are treated as
1922
2588
  # duplicates and only one copy of the message is delivered.
1923
2589
  #
2590
+ # The following attributes apply only to [high throughput for FIFO
2591
+ # queues][13]:
2592
+ #
2593
+ # * `DeduplicationScope` – Specifies whether message deduplication
2594
+ # occurs at the message group or queue level. Valid values are
2595
+ # `messageGroup` and `queue`.
2596
+ #
2597
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
2598
+ # throughput quota applies to the entire queue or per message group.
2599
+ # Valid values are `perQueue` and `perMessageGroupId`. The
2600
+ # `perMessageGroupId` value is allowed only when the value for
2601
+ # `DeduplicationScope` is `messageGroup`.
2602
+ #
2603
+ # To enable high throughput for FIFO queues, do the following:
2604
+ #
2605
+ # * Set `DeduplicationScope` to `messageGroup`.
2606
+ #
2607
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
2608
+ #
2609
+ # If you set these attributes to anything other than the values shown
2610
+ # for enabling high throughput, normal throughput is in effect and
2611
+ # deduplication occurs as specified.
1924
2612
  #
2613
+ # For information on throughput quotas, see [Quotas related to
2614
+ # messages][14] in the *Amazon SQS Developer Guide*.
1925
2615
  #
1926
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
1927
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1928
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1929
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
1930
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
1931
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
1932
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
1933
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
1934
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1935
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2616
+ #
2617
+ #
2618
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
2619
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2620
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2621
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
2622
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
2623
+ # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2624
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
2625
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
2626
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
2627
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
2628
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2629
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2630
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2631
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1936
2632
  # @return [Hash<String,String>]
1937
2633
  #
1938
2634
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SetQueueAttributesRequest AWS API Documentation
@@ -1940,19 +2636,58 @@ module Aws::SQS
1940
2636
  class SetQueueAttributesRequest < Struct.new(
1941
2637
  :queue_url,
1942
2638
  :attributes)
2639
+ SENSITIVE = []
2640
+ include Aws::Structure
2641
+ end
2642
+
2643
+ # @!attribute [rw] source_arn
2644
+ # The ARN of the queue that contains the messages to be moved to
2645
+ # another queue. Currently, only ARNs of dead-letter queues (DLQs)
2646
+ # whose sources are other Amazon SQS queues are accepted. DLQs whose
2647
+ # sources are non-SQS queues, such as Lambda or Amazon SNS topics, are
2648
+ # not currently supported.
2649
+ # @return [String]
2650
+ #
2651
+ # @!attribute [rw] destination_arn
2652
+ # The ARN of the queue that receives the moved messages. You can use
2653
+ # this field to specify the destination queue where you would like to
2654
+ # redrive messages. If this field is left blank, the messages will be
2655
+ # redriven back to their respective original source queues.
2656
+ # @return [String]
2657
+ #
2658
+ # @!attribute [rw] max_number_of_messages_per_second
2659
+ # The number of messages to be moved per second (the message movement
2660
+ # rate). You can use this field to define a fixed message movement
2661
+ # rate. The maximum value for messages per second is 500. If this
2662
+ # field is left blank, the system will optimize the rate based on the
2663
+ # queue message backlog size, which may vary throughout the duration
2664
+ # of the message movement task.
2665
+ # @return [Integer]
2666
+ #
2667
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskRequest AWS API Documentation
2668
+ #
2669
+ class StartMessageMoveTaskRequest < Struct.new(
2670
+ :source_arn,
2671
+ :destination_arn,
2672
+ :max_number_of_messages_per_second)
2673
+ SENSITIVE = []
1943
2674
  include Aws::Structure
1944
2675
  end
1945
2676
 
1946
- # @note When making an API call, you may pass TagQueueRequest
1947
- # data as a hash:
2677
+ # @!attribute [rw] task_handle
2678
+ # An identifier associated with a message movement task. You can use
2679
+ # this identifier to cancel a specified message movement task using
2680
+ # the `CancelMessageMoveTask` action.
2681
+ # @return [String]
1948
2682
  #
1949
- # {
1950
- # queue_url: "String", # required
1951
- # tags: { # required
1952
- # "TagKey" => "TagValue",
1953
- # },
1954
- # }
2683
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskResult AWS API Documentation
1955
2684
  #
2685
+ class StartMessageMoveTaskResult < Struct.new(
2686
+ :task_handle)
2687
+ SENSITIVE = []
2688
+ include Aws::Structure
2689
+ end
2690
+
1956
2691
  # @!attribute [rw] queue_url
1957
2692
  # The URL of the queue.
1958
2693
  # @return [String]
@@ -1966,17 +2701,36 @@ module Aws::SQS
1966
2701
  class TagQueueRequest < Struct.new(
1967
2702
  :queue_url,
1968
2703
  :tags)
2704
+ SENSITIVE = []
1969
2705
  include Aws::Structure
1970
2706
  end
1971
2707
 
1972
- # @note When making an API call, you may pass UntagQueueRequest
1973
- # data as a hash:
2708
+ # The batch request contains more entries than permissible.
1974
2709
  #
1975
- # {
1976
- # queue_url: "String", # required
1977
- # tag_keys: ["TagKey"], # required
1978
- # }
2710
+ # @!attribute [rw] message
2711
+ # @return [String]
2712
+ #
2713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TooManyEntriesInBatchRequest AWS API Documentation
2714
+ #
2715
+ class TooManyEntriesInBatchRequest < Struct.new(
2716
+ :message)
2717
+ SENSITIVE = []
2718
+ include Aws::Structure
2719
+ end
2720
+
2721
+ # Error code 400. Unsupported operation.
1979
2722
  #
2723
+ # @!attribute [rw] message
2724
+ # @return [String]
2725
+ #
2726
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UnsupportedOperation AWS API Documentation
2727
+ #
2728
+ class UnsupportedOperation < Struct.new(
2729
+ :message)
2730
+ SENSITIVE = []
2731
+ include Aws::Structure
2732
+ end
2733
+
1980
2734
  # @!attribute [rw] queue_url
1981
2735
  # The URL of the queue.
1982
2736
  # @return [String]
@@ -1990,6 +2744,7 @@ module Aws::SQS
1990
2744
  class UntagQueueRequest < Struct.new(
1991
2745
  :queue_url,
1992
2746
  :tag_keys)
2747
+ SENSITIVE = []
1993
2748
  include Aws::Structure
1994
2749
  end
1995
2750