aws-sdk-sqs 1.5.0 → 1.80.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,27 +1,19 @@
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
  #
24
- # Queue URLs are case-sensitive.
16
+ # Queue URLs and names are case-sensitive.
25
17
  # @return [String]
26
18
  #
27
19
  # @!attribute [rw] label
@@ -32,39 +24,24 @@ 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/AWSCredentials.html
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
48
39
  # The action the client wants to allow for the specified principal.
49
- # The following values are valid:
50
- #
51
- # * `*`
52
- #
53
- # * `ChangeMessageVisibility`
40
+ # Valid values: the name of any action or `*`.
54
41
  #
55
- # * `DeleteMessage`
56
- #
57
- # * `GetQueueAttributes`
58
- #
59
- # * `GetQueueUrl`
60
- #
61
- # * `ReceiveMessage`
62
- #
63
- # * `SendMessage`
64
- #
65
- # For more information about these actions, see [Understanding
66
- # Permissions][1] in the *Amazon Simple Queue Service Developer
67
- # Guide*.
42
+ # For more information about these actions, see [Overview of Managing
43
+ # Access Permissions to Your Amazon Simple Queue Service Resource][1]
44
+ # in the *Amazon SQS Developer Guide*.
68
45
  #
69
46
  # Specifying `SendMessage`, `DeleteMessage`, or
70
47
  # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
@@ -74,7 +51,7 @@ module Aws::SQS
74
51
  #
75
52
  #
76
53
  #
77
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes
54
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-overview-of-managing-access.html
78
55
  # @return [Array<String>]
79
56
  #
80
57
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/AddPermissionRequest AWS API Documentation
@@ -84,18 +61,46 @@ module Aws::SQS
84
61
  :label,
85
62
  :aws_account_ids,
86
63
  :actions)
64
+ SENSITIVE = []
87
65
  include Aws::Structure
88
66
  end
89
67
 
90
- # This is used in the responses of batch API to give a detailed
91
- # description of the result of an action on each entry in the request.
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 = []
91
+ include Aws::Structure
92
+ end
93
+
94
+ # Gives a detailed description of the result of an action on each entry
95
+ # in the request.
92
96
  #
93
97
  # @!attribute [rw] id
94
98
  # The `Id` of an entry in a batch request.
95
99
  # @return [String]
96
100
  #
97
101
  # @!attribute [rw] sender_fault
98
- # Specifies whether the error happened due to the sender's fault.
102
+ # Specifies whether the error happened due to the caller of the batch
103
+ # API action.
99
104
  # @return [Boolean]
100
105
  #
101
106
  # @!attribute [rw] code
@@ -113,32 +118,44 @@ module Aws::SQS
113
118
  :sender_fault,
114
119
  :code,
115
120
  :message)
121
+ SENSITIVE = []
116
122
  include Aws::Structure
117
123
  end
118
124
 
119
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequest
120
- # data as a hash:
125
+ # @!attribute [rw] task_handle
126
+ # An identifier associated with a message movement task.
127
+ # @return [String]
121
128
  #
122
- # {
123
- # queue_url: "String", # required
124
- # entries: [ # required
125
- # {
126
- # id: "String", # required
127
- # receipt_handle: "String", # required
128
- # visibility_timeout: 1,
129
- # },
130
- # ],
131
- # }
129
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTaskRequest AWS API Documentation
132
130
  #
131
+ class CancelMessageMoveTaskRequest < Struct.new(
132
+ :task_handle)
133
+ SENSITIVE = []
134
+ include Aws::Structure
135
+ end
136
+
137
+ # @!attribute [rw] approximate_number_of_messages_moved
138
+ # The approximate number of messages already moved to the destination
139
+ # queue.
140
+ # @return [Integer]
141
+ #
142
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CancelMessageMoveTaskResult AWS API Documentation
143
+ #
144
+ class CancelMessageMoveTaskResult < Struct.new(
145
+ :approximate_number_of_messages_moved)
146
+ SENSITIVE = []
147
+ include Aws::Structure
148
+ end
149
+
133
150
  # @!attribute [rw] queue_url
134
151
  # The URL of the Amazon SQS queue whose messages' visibility is
135
152
  # changed.
136
153
  #
137
- # Queue URLs are case-sensitive.
154
+ # Queue URLs and names are case-sensitive.
138
155
  # @return [String]
139
156
  #
140
157
  # @!attribute [rw] entries
141
- # A list of receipt handles of the messages for which the visibility
158
+ # Lists the receipt handles of the messages for which the visibility
142
159
  # timeout must be changed.
143
160
  # @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
144
161
  #
@@ -147,37 +164,22 @@ module Aws::SQS
147
164
  class ChangeMessageVisibilityBatchRequest < Struct.new(
148
165
  :queue_url,
149
166
  :entries)
167
+ SENSITIVE = []
150
168
  include Aws::Structure
151
169
  end
152
170
 
153
- # 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 `
154
172
  # ChangeMessageVisibilityBatch.`
155
173
  #
156
- # All of the following list parameters must be prefixed with
157
- # `ChangeMessageVisibilityBatchRequestEntry.n`, where `n` is an integer
158
- # value starting with `1`. For example, a parameter list for this action
159
- # might look like this:
160
- #
161
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
162
- #
163
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=<replaceable>Your_Receipt_Handle</replaceable>`
164
- #
165
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
166
- #
167
- # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequestEntry
168
- # data as a hash:
169
- #
170
- # {
171
- # id: "String", # required
172
- # receipt_handle: "String", # required
173
- # visibility_timeout: 1,
174
- # }
175
- #
176
174
  # @!attribute [rw] id
177
175
  # An identifier for this particular receipt handle used to communicate
178
176
  # the result.
179
177
  #
180
- # <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 (\_).
181
183
  #
182
184
  # </note>
183
185
  # @return [String]
@@ -196,6 +198,7 @@ module Aws::SQS
196
198
  :id,
197
199
  :receipt_handle,
198
200
  :visibility_timeout)
201
+ SENSITIVE = []
199
202
  include Aws::Structure
200
203
  end
201
204
 
@@ -216,6 +219,7 @@ module Aws::SQS
216
219
  class ChangeMessageVisibilityBatchResult < Struct.new(
217
220
  :successful,
218
221
  :failed)
222
+ SENSITIVE = []
219
223
  include Aws::Structure
220
224
  end
221
225
 
@@ -230,34 +234,26 @@ module Aws::SQS
230
234
  #
231
235
  class ChangeMessageVisibilityBatchResultEntry < Struct.new(
232
236
  :id)
237
+ SENSITIVE = []
233
238
  include Aws::Structure
234
239
  end
235
240
 
236
- # @note When making an API call, you may pass ChangeMessageVisibilityRequest
237
- # data as a hash:
238
- #
239
- # {
240
- # queue_url: "String", # required
241
- # receipt_handle: "String", # required
242
- # visibility_timeout: 1, # required
243
- # }
244
- #
245
241
  # @!attribute [rw] queue_url
246
242
  # The URL of the Amazon SQS queue whose message's visibility is
247
243
  # changed.
248
244
  #
249
- # Queue URLs are case-sensitive.
245
+ # Queue URLs and names are case-sensitive.
250
246
  # @return [String]
251
247
  #
252
248
  # @!attribute [rw] receipt_handle
253
- # The receipt handle associated with the message whose visibility
249
+ # The receipt handle associated with the message, whose visibility
254
250
  # timeout is changed. This parameter is returned by the `
255
251
  # ReceiveMessage ` action.
256
252
  # @return [String]
257
253
  #
258
254
  # @!attribute [rw] visibility_timeout
259
255
  # The new value for the message's visibility timeout (in seconds).
260
- # Values values: `0` to `43200`. Maximum: 12 hours.
256
+ # Values range: `0` to `43200`. Maximum: 12 hours.
261
257
  # @return [Integer]
262
258
  #
263
259
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ChangeMessageVisibilityRequest AWS API Documentation
@@ -266,19 +262,10 @@ module Aws::SQS
266
262
  :queue_url,
267
263
  :receipt_handle,
268
264
  :visibility_timeout)
265
+ SENSITIVE = []
269
266
  include Aws::Structure
270
267
  end
271
268
 
272
- # @note When making an API call, you may pass CreateQueueRequest
273
- # data as a hash:
274
- #
275
- # {
276
- # queue_name: "String", # required
277
- # attributes: {
278
- # "All" => "String",
279
- # },
280
- # }
281
- #
282
269
  # @!attribute [rw] queue_name
283
270
  # The name of the new queue. The following limits apply to this name:
284
271
  #
@@ -289,7 +276,7 @@ module Aws::SQS
289
276
  #
290
277
  # * A FIFO queue name must end with the `.fifo` suffix.
291
278
  #
292
- # Queue names are case-sensitive.
279
+ # Queue URLs and names are case-sensitive.
293
280
  # @return [String]
294
281
  #
295
282
  # @!attribute [rw] attributes
@@ -298,90 +285,132 @@ module Aws::SQS
298
285
  # The following lists the names, descriptions, and values of the
299
286
  # special request parameters that the `CreateQueue` action uses:
300
287
  #
301
- # * `DelaySeconds` - The length of time, in seconds, for which the
288
+ # * `DelaySeconds` The length of time, in seconds, for which the
302
289
  # delivery of all messages in the queue is delayed. Valid values: An
303
- # integer from 0 to 900 seconds (15 minutes). The default is 0
304
- # (zero).
290
+ # integer from 0 to 900 seconds (15 minutes). Default: 0.
305
291
  #
306
- # * `MaximumMessageSize` - The limit of how many bytes a message can
292
+ # * `MaximumMessageSize` The limit of how many bytes a message can
307
293
  # contain before Amazon SQS rejects it. Valid values: An integer
308
- # from 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). The default
309
- # is 262,144 (256 KiB).
294
+ # from 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). Default:
295
+ # 262,144 (256 KiB).
310
296
  #
311
- # * `MessageRetentionPeriod` - The length of time, in seconds, for
297
+ # * `MessageRetentionPeriod` The length of time, in seconds, for
312
298
  # which Amazon SQS retains a message. Valid values: An integer from
313
- # 60 seconds (1 minute) to 1,209,600 seconds (14 days). The default
314
- # is 345,600 (4 days).
299
+ # 60 seconds (1 minute) to 1,209,600 seconds (14 days). Default:
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,
313
+ # for which a ` ReceiveMessage ` action waits for a message to
314
+ # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
315
+ # 0.
315
316
  #
316
- # * `Policy` - The queue's policy. A valid AWS policy. For more
317
- # information about policy structure, see [Overview of AWS IAM
318
- # Policies][1] in the *Amazon IAM User 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*.
319
321
  #
320
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
321
- # for which a ` ReceiveMessage ` action waits for a message to
322
- # arrive. Valid values: An integer from 0 to 20 (seconds). The
323
- # default is 0 (zero).
322
+ # The following attributes apply only to [dead-letter queues:][3]
324
323
  #
325
- # * `RedrivePolicy` - The string that includes the parameters for the
326
- # dead-letter queue functionality of the source queue. For more
327
- # information about the redrive policy and dead-letter queues, see
328
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple
329
- # Queue Service Developer Guide*.
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:
330
327
  #
331
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
328
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
332
329
  # dead-letter queue to which Amazon SQS moves messages after the
333
330
  # value of `maxReceiveCount` is exceeded.
334
331
  #
335
- # * `maxReceiveCount` - The number of times a message is delivered
332
+ # * `maxReceiveCount` The number of times a message is delivered
336
333
  # to the source queue before being moved to the dead-letter queue.
334
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
335
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to
336
+ # the dead-letter-queue.
337
337
  #
338
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
339
- # Similarly, the dead-letter queue of a standard queue must also be
340
- # 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:
341
342
  #
342
- # </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:
346
+ #
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.
343
353
  #
344
- # * `VisibilityTimeout` - The visibility timeout for the queue. Valid
345
- # values: An integer from 0 to 43,200 (12 hours). The default is 30.
346
- # For more information about the visibility timeout, see [Visibility
347
- # Timeout][3] in the *Amazon Simple Queue Service Developer Guide*.
354
+ # * `byQueue` Only queues specified by the `sourceQueueArns`
355
+ # parameter can specify this queue as the dead-letter queue.
348
356
  #
349
- # The following attributes apply only to [server-side-encryption][4]\:
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`.
350
364
  #
351
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
352
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
353
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
354
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
355
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
356
- # the *AWS Key Management Service API Reference*.
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.
357
368
  #
358
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds,
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*.
380
+ #
381
+ # * `KmsDataKeyReusePeriodSeconds` – The length of time, in seconds,
359
382
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
360
- # decrypt messages before calling AWS KMS again. An integer
361
- # representing seconds, between 60 seconds (1 minute) and 86,400
362
- # seconds (24 hours). The default is 300 (5 minutes). A shorter time
363
- # period provides better security but results in more calls to KMS
364
- # which might incur charges after Free Tier. For more information,
365
- # 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]).
366
394
  #
367
395
  # The following attributes apply only to [FIFO (first-in-first-out)
368
- # queues][9]\:
396
+ # queues][11]:
369
397
  #
370
- # * `FifoQueue` - Designates a queue as FIFO. Valid values: `true`,
371
- # `false`. You can provide this attribute only during queue
372
- # creation. You can't change it for an existing queue. When you set
373
- # this attribute, you must also provide the `MessageGroupId` for
374
- # 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.
375
404
  #
376
- # For more information, see [FIFO Queue Logic][10] in the *Amazon
377
- # Simple Queue Service Developer Guide*.
405
+ # For more information, see [FIFO queue logic][12] in the *Amazon
406
+ # SQS Developer Guide*.
378
407
  #
379
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
380
- # Valid values: `true`, `false`. For more information, see
381
- # [Exactly-Once Processing][11] in the *Amazon Simple Queue Service
382
- # 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:
383
412
  #
384
- # * Every message must have a unique `MessageDeduplicationId`,
413
+ # * Every message must have a unique `MessageDeduplicationId`.
385
414
  #
386
415
  # * You may provide a `MessageDeduplicationId` explicitly.
387
416
  #
@@ -409,41 +438,94 @@ module Aws::SQS
409
438
  # `MessageDeduplicationId`, the two messages are treated as
410
439
  # duplicates and only one copy of the message is delivered.
411
440
  #
412
- # Any other valid special request parameters (such as the following)
413
- # are ignored:
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*.
466
+ #
467
+ #
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.
414
494
  #
415
- # * `ApproximateNumberOfMessages`
495
+ # * Tags don't have any semantic meaning. Amazon SQS interprets tags
496
+ # as character strings.
416
497
  #
417
- # * `ApproximateNumberOfMessagesDelayed`
498
+ # * Tags are case-sensitive.
418
499
  #
419
- # * `ApproximateNumberOfMessagesNotVisible`
500
+ # * A new tag with a key identical to that of an existing tag
501
+ # overwrites the existing tag.
420
502
  #
421
- # * `CreatedTimestamp`
503
+ # For a full list of tag restrictions, see [Quotas related to
504
+ # queues][2] in the *Amazon SQS Developer Guide*.
422
505
  #
423
- # * `LastModifiedTimestamp`
506
+ # <note markdown="1"> To be able to tag a queue on creation, you must have the
507
+ # `sqs:CreateQueue` and `sqs:TagQueue` permissions.
424
508
  #
425
- # * `QueueArn`
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*.
426
512
  #
513
+ # </note>
427
514
  #
428
515
  #
429
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
430
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
431
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
432
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
433
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
434
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
435
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
436
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
437
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
438
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
439
- # [11]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
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
440
520
  # @return [Hash<String,String>]
441
521
  #
442
522
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/CreateQueueRequest AWS API Documentation
443
523
  #
444
524
  class CreateQueueRequest < Struct.new(
445
525
  :queue_name,
446
- :attributes)
526
+ :attributes,
527
+ :tags)
528
+ SENSITIVE = []
447
529
  include Aws::Structure
448
530
  end
449
531
 
@@ -457,30 +539,18 @@ module Aws::SQS
457
539
  #
458
540
  class CreateQueueResult < Struct.new(
459
541
  :queue_url)
542
+ SENSITIVE = []
460
543
  include Aws::Structure
461
544
  end
462
545
 
463
- # @note When making an API call, you may pass DeleteMessageBatchRequest
464
- # data as a hash:
465
- #
466
- # {
467
- # queue_url: "String", # required
468
- # entries: [ # required
469
- # {
470
- # id: "String", # required
471
- # receipt_handle: "String", # required
472
- # },
473
- # ],
474
- # }
475
- #
476
546
  # @!attribute [rw] queue_url
477
547
  # The URL of the Amazon SQS queue from which messages are deleted.
478
548
  #
479
- # Queue URLs are case-sensitive.
549
+ # Queue URLs and names are case-sensitive.
480
550
  # @return [String]
481
551
  #
482
552
  # @!attribute [rw] entries
483
- # A list of receipt handles for the messages to be deleted.
553
+ # Lists the receipt handles for the messages to be deleted.
484
554
  # @return [Array<Types::DeleteMessageBatchRequestEntry>]
485
555
  #
486
556
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteMessageBatchRequest AWS API Documentation
@@ -488,24 +558,21 @@ module Aws::SQS
488
558
  class DeleteMessageBatchRequest < Struct.new(
489
559
  :queue_url,
490
560
  :entries)
561
+ SENSITIVE = []
491
562
  include Aws::Structure
492
563
  end
493
564
 
494
565
  # Encloses a receipt handle and an identifier for it.
495
566
  #
496
- # @note When making an API call, you may pass DeleteMessageBatchRequestEntry
497
- # data as a hash:
498
- #
499
- # {
500
- # id: "String", # required
501
- # receipt_handle: "String", # required
502
- # }
503
- #
504
567
  # @!attribute [rw] id
505
- # An identifier for this particular receipt handle. This is used to
568
+ # The identifier for this particular receipt handle. This is used to
506
569
  # communicate the result.
507
570
  #
508
- # <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 (\_).
509
576
  #
510
577
  # </note>
511
578
  # @return [String]
@@ -519,6 +586,7 @@ module Aws::SQS
519
586
  class DeleteMessageBatchRequestEntry < Struct.new(
520
587
  :id,
521
588
  :receipt_handle)
589
+ SENSITIVE = []
522
590
  include Aws::Structure
523
591
  end
524
592
 
@@ -539,6 +607,7 @@ module Aws::SQS
539
607
  class DeleteMessageBatchResult < Struct.new(
540
608
  :successful,
541
609
  :failed)
610
+ SENSITIVE = []
542
611
  include Aws::Structure
543
612
  end
544
613
 
@@ -552,21 +621,14 @@ module Aws::SQS
552
621
  #
553
622
  class DeleteMessageBatchResultEntry < Struct.new(
554
623
  :id)
624
+ SENSITIVE = []
555
625
  include Aws::Structure
556
626
  end
557
627
 
558
- # @note When making an API call, you may pass DeleteMessageRequest
559
- # data as a hash:
560
- #
561
- # {
562
- # queue_url: "String", # required
563
- # receipt_handle: "String", # required
564
- # }
565
- #
566
628
  # @!attribute [rw] queue_url
567
629
  # The URL of the Amazon SQS queue from which messages are deleted.
568
630
  #
569
- # Queue URLs are case-sensitive.
631
+ # Queue URLs and names are case-sensitive.
570
632
  # @return [String]
571
633
  #
572
634
  # @!attribute [rw] receipt_handle
@@ -578,47 +640,51 @@ module Aws::SQS
578
640
  class DeleteMessageRequest < Struct.new(
579
641
  :queue_url,
580
642
  :receipt_handle)
643
+ SENSITIVE = []
581
644
  include Aws::Structure
582
645
  end
583
646
 
584
- # @note When making an API call, you may pass DeleteQueueRequest
585
- # data as a hash:
586
- #
587
- # {
588
- # queue_url: "String", # required
589
- # }
590
- #
591
647
  # @!attribute [rw] queue_url
592
648
  # The URL of the Amazon SQS queue to delete.
593
649
  #
594
- # Queue URLs are case-sensitive.
650
+ # Queue URLs and names are case-sensitive.
595
651
  # @return [String]
596
652
  #
597
653
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/DeleteQueueRequest AWS API Documentation
598
654
  #
599
655
  class DeleteQueueRequest < Struct.new(
600
656
  :queue_url)
657
+ SENSITIVE = []
601
658
  include Aws::Structure
602
659
  end
603
660
 
604
- # @note When making an API call, you may pass GetQueueAttributesRequest
605
- # data as a hash:
661
+ # The batch request doesn't contain any entries.
662
+ #
663
+ # @!attribute [rw] message
664
+ # @return [String]
606
665
  #
607
- # {
608
- # queue_url: "String", # required
609
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
610
- # }
666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/EmptyBatchRequest AWS API Documentation
611
667
  #
668
+ class EmptyBatchRequest < Struct.new(
669
+ :message)
670
+ SENSITIVE = []
671
+ include Aws::Structure
672
+ end
673
+
612
674
  # @!attribute [rw] queue_url
613
675
  # The URL of the Amazon SQS queue whose attribute information is
614
676
  # retrieved.
615
677
  #
616
- # Queue URLs are case-sensitive.
678
+ # Queue URLs and names are case-sensitive.
617
679
  # @return [String]
618
680
  #
619
681
  # @!attribute [rw] attribute_names
620
682
  # A list of attributes for which to retrieve information.
621
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
+ #
622
688
  # <note markdown="1"> In the future, new attributes might be added. If you write code that
623
689
  # calls this action, we recommend that you structure your code so that
624
690
  # it can handle new attributes gracefully.
@@ -627,102 +693,186 @@ module Aws::SQS
627
693
  #
628
694
  # The following attributes are supported:
629
695
  #
630
- # * `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.
631
702
  #
632
- # * `ApproximateNumberOfMessages` - Returns the approximate number of
633
- # visible messages in a queue. For more information, see [Resources
634
- # Required to Process Messages][1] in the *Amazon Simple Queue
635
- # Service Developer Guide*.
703
+ # * `All` Returns all values.
636
704
  #
637
- # * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
638
- # number of messages that are waiting to be added to the queue.
705
+ # * `ApproximateNumberOfMessages` Returns the approximate number of
706
+ # messages available for retrieval from the queue.
639
707
  #
640
- # * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
641
- # number of messages that have not timed-out and aren't deleted.
642
- # For more information, see [Resources Required to Process
643
- # Messages][1] in the *Amazon Simple Queue Service Developer Guide*.
708
+ # * `ApproximateNumberOfMessagesDelayed` Returns the approximate
709
+ # number of messages in the queue that are delayed and not available
710
+ # for reading immediately. This can happen when the queue is
711
+ # configured as a delay queue or when a message has been sent with a
712
+ # delay parameter.
644
713
  #
645
- # * `CreatedTimestamp` - Returns the time when the queue was created
646
- # in seconds ([epoch time][2]).
714
+ # * `ApproximateNumberOfMessagesNotVisible` Returns the approximate
715
+ # number of messages that are in flight. Messages are considered to
716
+ # be *in flight* if they have been sent to a client but have not yet
717
+ # been deleted or have not yet reached the end of their visibility
718
+ # window.
647
719
  #
648
- # * `DelaySeconds` - Returns the default delay on the queue in
720
+ # * `CreatedTimestamp` Returns the time when the queue was created
721
+ # in seconds ([epoch time][1]).
722
+ #
723
+ # * `DelaySeconds` – Returns the default delay on the queue in
649
724
  # seconds.
650
725
  #
651
- # * `LastModifiedTimestamp` - Returns the time when the queue was last
652
- # changed in seconds ([epoch time][2]).
726
+ # * `LastModifiedTimestamp` Returns the time when the queue was last
727
+ # changed in seconds ([epoch time][1]).
653
728
  #
654
- # * `MaximumMessageSize` - Returns the limit of how many bytes a
729
+ # * `MaximumMessageSize` Returns the limit of how many bytes a
655
730
  # message can contain before Amazon SQS rejects it.
656
731
  #
657
- # * `MessageRetentionPeriod` - Returns the length of time, in seconds,
658
- # 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.
659
741
  #
660
- # * `Policy` - Returns the policy of the queue.
742
+ # * `Policy` Returns the policy of the queue.
661
743
  #
662
- # * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
744
+ # * `QueueArn` Returns the Amazon resource name (ARN) of the queue.
663
745
  #
664
- # * `ReceiveMessageWaitTimeSeconds` - Returns the length of time, in
746
+ # * `ReceiveMessageWaitTimeSeconds` Returns the length of time, in
665
747
  # seconds, for which the `ReceiveMessage` action waits for a message
666
748
  # to arrive.
667
749
  #
668
- # * `RedrivePolicy` - Returns the string that includes the parameters
669
- # for dead-letter queue functionality of the source queue. For more
670
- # information about the redrive policy and dead-letter queues, see
671
- # [Using Amazon SQS Dead-Letter Queues][3] in the *Amazon Simple
672
- # 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*.
753
+ #
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:
673
759
  #
674
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
760
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
675
761
  # dead-letter queue to which Amazon SQS moves messages after the
676
762
  # value of `maxReceiveCount` is exceeded.
677
763
  #
678
- # * `maxReceiveCount` - The number of times a message is delivered
764
+ # * `maxReceiveCount` The number of times a message is delivered
679
765
  # to the source queue before being moved to the dead-letter queue.
766
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
767
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to
768
+ # the dead-letter-queue.
680
769
  #
681
- # * `VisibilityTimeout` - Returns the visibility timeout for the
682
- # queue. For more information about the visibility timeout, see
683
- # [Visibility Timeout][4] in the *Amazon Simple Queue Service
684
- # 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:
778
+ #
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.
782
+ #
783
+ # * `denyAll` – No source queues can specify this queue as the
784
+ # dead-letter queue.
785
+ #
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>
685
802
  #
686
- # The following attributes apply only to [server-side-encryption][5]\:
803
+ # The following attributes apply only to [server-side-encryption][4]:
687
804
  #
688
- # * `KmsMasterKeyId` - Returns the ID of an AWS-managed customer
689
- # master key (CMK) for Amazon SQS or a custom CMK. For more
690
- # information, see [Key Terms][6].
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].
691
808
  #
692
- # * `KmsDataKeyReusePeriodSeconds` - Returns the length of time, in
809
+ # * `KmsDataKeyReusePeriodSeconds` Returns the length of time, in
693
810
  # seconds, for which Amazon SQS can reuse a data key to encrypt or
694
- # decrypt messages before calling AWS KMS again. For more
695
- # information, see [How Does the Data Key Reuse Period Work?][7].
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]).
696
818
  #
697
819
  # The following attributes apply only to [FIFO (first-in-first-out)
698
- # queues][8]\:
820
+ # queues][9]:
699
821
  #
700
- # * `FifoQueue` - Returns whether the queue is FIFO. For more
701
- # information, see [FIFO Queue Logic][9] in the *Amazon Simple Queue
702
- # 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*.
703
825
  #
704
- # <note markdown="1"> To determine whether a queue is [FIFO][8], you can check whether
826
+ # <note markdown="1"> To determine whether a queue is [FIFO][9], you can check whether
705
827
  # `QueueName` ends with the `.fifo` suffix.
706
828
  #
707
829
  # </note>
708
830
  #
709
- # * `ContentBasedDeduplication` - Returns whether content-based
831
+ # * `ContentBasedDeduplication` Returns whether content-based
710
832
  # deduplication is enabled for the queue. For more information, see
711
- # [Exactly-Once Processing][10] in the *Amazon Simple Queue Service
712
- # 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*.
713
860
  #
714
861
  #
715
862
  #
716
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-resources-required-process-messages.html
717
- # [2]: http://en.wikipedia.org/wiki/Unix_time
718
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
719
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
720
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
721
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
722
- # [7]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
723
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
724
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
725
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
863
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
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
726
876
  # @return [Array<String>]
727
877
  #
728
878
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueAttributesRequest AWS API Documentation
@@ -730,6 +880,7 @@ module Aws::SQS
730
880
  class GetQueueAttributesRequest < Struct.new(
731
881
  :queue_url,
732
882
  :attribute_names)
883
+ SENSITIVE = []
733
884
  include Aws::Structure
734
885
  end
735
886
 
@@ -743,27 +894,21 @@ module Aws::SQS
743
894
  #
744
895
  class GetQueueAttributesResult < Struct.new(
745
896
  :attributes)
897
+ SENSITIVE = []
746
898
  include Aws::Structure
747
899
  end
748
900
 
749
- # @note When making an API call, you may pass GetQueueUrlRequest
750
- # data as a hash:
751
- #
752
- # {
753
- # queue_name: "String", # required
754
- # queue_owner_aws_account_id: "String",
755
- # }
756
- #
757
901
  # @!attribute [rw] queue_name
758
902
  # The name of the queue whose URL must be fetched. Maximum 80
759
903
  # characters. Valid values: alphanumeric characters, hyphens (`-`),
760
904
  # and underscores (`_`).
761
905
  #
762
- # Queue names are case-sensitive.
906
+ # Queue URLs and names are case-sensitive.
763
907
  # @return [String]
764
908
  #
765
909
  # @!attribute [rw] queue_owner_aws_account_id
766
- # 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.
767
912
  # @return [String]
768
913
  #
769
914
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlRequest AWS API Documentation
@@ -771,15 +916,16 @@ module Aws::SQS
771
916
  class GetQueueUrlRequest < Struct.new(
772
917
  :queue_name,
773
918
  :queue_owner_aws_account_id)
919
+ SENSITIVE = []
774
920
  include Aws::Structure
775
921
  end
776
922
 
777
- # For more information, see [Responses][1] in the *Amazon Simple Queue
778
- # Service Developer Guide*.
923
+ # For more information, see [Interpreting Responses][1] in the *Amazon
924
+ # SQS Developer Guide*.
779
925
  #
780
926
  #
781
927
  #
782
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html
928
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-api-responses.html
783
929
  #
784
930
  # @!attribute [rw] queue_url
785
931
  # The URL of the queue.
@@ -789,50 +935,346 @@ module Aws::SQS
789
935
  #
790
936
  class GetQueueUrlResult < Struct.new(
791
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 = []
792
1098
  include Aws::Structure
793
1099
  end
794
1100
 
795
- # @note When making an API call, you may pass ListDeadLetterSourceQueuesRequest
796
- # data as a hash:
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]
797
1120
  #
798
- # {
799
- # queue_url: "String", # required
800
- # }
1121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsThrottled AWS API Documentation
801
1122
  #
1123
+ class KmsThrottled < Struct.new(
1124
+ :message)
1125
+ SENSITIVE = []
1126
+ include Aws::Structure
1127
+ end
1128
+
802
1129
  # @!attribute [rw] queue_url
803
1130
  # The URL of a dead-letter queue.
804
1131
  #
805
- # Queue URLs are case-sensitive.
1132
+ # Queue URLs and names are case-sensitive.
806
1133
  # @return [String]
807
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
+ #
808
1145
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesRequest AWS API Documentation
809
1146
  #
810
- class ListDeadLetterSourceQueuesRequest < Struct.new(
811
- :queue_url)
812
- include Aws::Structure
813
- end
814
-
815
- # A list of your dead letter source queues.
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
1201
+ #
1202
+ class ListMessageMoveTasksResult < Struct.new(
1203
+ :results)
1204
+ SENSITIVE = []
1205
+ include Aws::Structure
1206
+ end
1207
+
1208
+ # Contains the details of a message movement task.
1209
+ #
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]
1215
+ #
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]
1220
+ #
1221
+ # @!attribute [rw] source_arn
1222
+ # The ARN of the queue that contains the messages to be moved to
1223
+ # another queue.
1224
+ # @return [String]
1225
+ #
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]
1232
+ #
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]
1240
+ #
1241
+ # @!attribute [rw] approximate_number_of_messages_moved
1242
+ # The approximate number of messages already moved to the destination
1243
+ # queue.
1244
+ # @return [Integer]
1245
+ #
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 task
1249
+ # and is only included after the message movement task is selected to
1250
+ # start.
1251
+ # @return [Integer]
816
1252
  #
817
- # @!attribute [rw] queue_urls
818
- # A list of source queue URLs that have the `RedrivePolicy` queue
819
- # attribute configured with a dead-letter queue.
820
- # @return [Array<String>]
1253
+ # @!attribute [rw] failure_reason
1254
+ # The task failure reason (only included if the task status is
1255
+ # FAILED).
1256
+ # @return [String]
821
1257
  #
822
- # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListDeadLetterSourceQueuesResult AWS API Documentation
1258
+ # @!attribute [rw] started_timestamp
1259
+ # The timestamp of starting the message movement task.
1260
+ # @return [Integer]
823
1261
  #
824
- class ListDeadLetterSourceQueuesResult < Struct.new(
825
- :queue_urls)
1262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListMessageMoveTasksResultEntry AWS API Documentation
1263
+ #
1264
+ class ListMessageMoveTasksResultEntry < Struct.new(
1265
+ :task_handle,
1266
+ :status,
1267
+ :source_arn,
1268
+ :destination_arn,
1269
+ :max_number_of_messages_per_second,
1270
+ :approximate_number_of_messages_moved,
1271
+ :approximate_number_of_messages_to_move,
1272
+ :failure_reason,
1273
+ :started_timestamp)
1274
+ SENSITIVE = []
826
1275
  include Aws::Structure
827
1276
  end
828
1277
 
829
- # @note When making an API call, you may pass ListQueueTagsRequest
830
- # data as a hash:
831
- #
832
- # {
833
- # queue_url: "String", # required
834
- # }
835
- #
836
1278
  # @!attribute [rw] queue_url
837
1279
  # The URL of the queue.
838
1280
  # @return [String]
@@ -841,6 +1283,7 @@ module Aws::SQS
841
1283
  #
842
1284
  class ListQueueTagsRequest < Struct.new(
843
1285
  :queue_url)
1286
+ SENSITIVE = []
844
1287
  include Aws::Structure
845
1288
  end
846
1289
 
@@ -852,40 +1295,56 @@ module Aws::SQS
852
1295
  #
853
1296
  class ListQueueTagsResult < Struct.new(
854
1297
  :tags)
1298
+ SENSITIVE = []
855
1299
  include Aws::Structure
856
1300
  end
857
1301
 
858
- # @note When making an API call, you may pass ListQueuesRequest
859
- # data as a hash:
860
- #
861
- # {
862
- # queue_name_prefix: "String",
863
- # }
864
- #
865
1302
  # @!attribute [rw] queue_name_prefix
866
1303
  # A string to use for filtering the list results. Only those queues
867
1304
  # whose name begins with the specified string are returned.
868
1305
  #
869
- # Queue names are case-sensitive.
1306
+ # Queue URLs and names are case-sensitive.
1307
+ # @return [String]
1308
+ #
1309
+ # @!attribute [rw] next_token
1310
+ # Pagination token to request the next set of results.
870
1311
  # @return [String]
871
1312
  #
1313
+ # @!attribute [rw] max_results
1314
+ # Maximum number of results to include in the response. Value range is
1315
+ # 1 to 1000. You must set `MaxResults` to receive a value for
1316
+ # `NextToken` in the response.
1317
+ # @return [Integer]
1318
+ #
872
1319
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesRequest AWS API Documentation
873
1320
  #
874
1321
  class ListQueuesRequest < Struct.new(
875
- :queue_name_prefix)
1322
+ :queue_name_prefix,
1323
+ :next_token,
1324
+ :max_results)
1325
+ SENSITIVE = []
876
1326
  include Aws::Structure
877
1327
  end
878
1328
 
879
1329
  # A list of your queues.
880
1330
  #
881
1331
  # @!attribute [rw] queue_urls
882
- # A list of queue URLs, up to 1,000 entries.
1332
+ # A list of queue URLs, up to 1,000 entries, or the value of
1333
+ # `MaxResults` that you sent in the request.
883
1334
  # @return [Array<String>]
884
1335
  #
1336
+ # @!attribute [rw] next_token
1337
+ # Pagination token to include in the next request. Token value is
1338
+ # `null` if there are no additional results to request, or if you did
1339
+ # not set `MaxResults` in the request.
1340
+ # @return [String]
1341
+ #
885
1342
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ListQueuesResult AWS API Documentation
886
1343
  #
887
1344
  class ListQueuesResult < Struct.new(
888
- :queue_urls)
1345
+ :queue_urls,
1346
+ :next_token)
1347
+ SENSITIVE = []
889
1348
  include Aws::Structure
890
1349
  end
891
1350
 
@@ -893,7 +1352,8 @@ module Aws::SQS
893
1352
  #
894
1353
  # @!attribute [rw] message_id
895
1354
  # A unique identifier for the message. A `MessageId`is considered
896
- # unique across all AWS accounts for an extended period of time.
1355
+ # unique across all Amazon Web Services accounts for an extended
1356
+ # period of time.
897
1357
  # @return [String]
898
1358
  #
899
1359
  # @!attribute [rw] receipt_handle
@@ -912,10 +1372,26 @@ module Aws::SQS
912
1372
  # @return [String]
913
1373
  #
914
1374
  # @!attribute [rw] attributes
915
- # `SenderId`, `SentTimestamp`, `ApproximateReceiveCount`, and/or
916
- # `ApproximateFirstReceiveTimestamp`. `SentTimestamp` and
917
- # `ApproximateFirstReceiveTimestamp` are each returned as an integer
918
- # representing the [epoch time][1] in milliseconds.
1375
+ # A map of the attributes requested in ` ReceiveMessage ` to their
1376
+ # respective values. Supported attributes:
1377
+ #
1378
+ # * `ApproximateReceiveCount`
1379
+ #
1380
+ # * `ApproximateFirstReceiveTimestamp`
1381
+ #
1382
+ # * `MessageDeduplicationId`
1383
+ #
1384
+ # * `MessageGroupId`
1385
+ #
1386
+ # * `SenderId`
1387
+ #
1388
+ # * `SentTimestamp`
1389
+ #
1390
+ # * `SequenceNumber`
1391
+ #
1392
+ # `ApproximateFirstReceiveTimestamp` and `SentTimestamp` are each
1393
+ # returned as an integer representing the [epoch time][1] in
1394
+ # milliseconds.
919
1395
  #
920
1396
  #
921
1397
  #
@@ -936,12 +1412,12 @@ module Aws::SQS
936
1412
  #
937
1413
  # @!attribute [rw] message_attributes
938
1414
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
939
- # For more information, see [Message Attribute Items and
940
- # Validation][1] in the *Amazon Simple Queue Service Developer Guide*.
1415
+ # For more information, see [Amazon SQS message attributes][1] in the
1416
+ # *Amazon SQS Developer Guide*.
941
1417
  #
942
1418
  #
943
1419
  #
944
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
1420
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
945
1421
  # @return [Hash<String,Types::MessageAttributeValue>]
946
1422
  #
947
1423
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/Message AWS API Documentation
@@ -954,6 +1430,7 @@ module Aws::SQS
954
1430
  :attributes,
955
1431
  :md5_of_message_attributes,
956
1432
  :message_attributes)
1433
+ SENSITIVE = []
957
1434
  include Aws::Structure
958
1435
  end
959
1436
 
@@ -963,20 +1440,9 @@ module Aws::SQS
963
1440
  #
964
1441
  # `Name`, `type`, `value` and the message body must not be empty or
965
1442
  # null. All parts of the message attribute, including `Name`, `Type`,
966
- # and `Value`, are part of the message size restriction (256 KB or
1443
+ # and `Value`, are part of the message size restriction (256 KiB or
967
1444
  # 262,144 bytes).
968
1445
  #
969
- # @note When making an API call, you may pass MessageAttributeValue
970
- # data as a hash:
971
- #
972
- # {
973
- # string_value: "String",
974
- # binary_value: "data",
975
- # string_list_values: ["String"],
976
- # binary_list_values: ["data"],
977
- # data_type: "String", # required
978
- # }
979
- #
980
1446
  # @!attribute [rw] string_value
981
1447
  # Strings are Unicode with UTF-8 binary encoding. For a list of code
982
1448
  # values, see [ASCII Printable Characters][1].
@@ -1004,13 +1470,12 @@ module Aws::SQS
1004
1470
  # `Number`, and `Binary`. For the `Number` data type, you must use
1005
1471
  # `StringValue`.
1006
1472
  #
1007
- # You can also append custom labels. For more information, see
1008
- # [Message Attribute Data Types and Validation][1] in the *Amazon
1009
- # Simple Queue Service Developer Guide*.
1473
+ # You can also append custom labels. For more information, see [Amazon
1474
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1010
1475
  #
1011
1476
  #
1012
1477
  #
1013
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-data-types-validation
1478
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1014
1479
  # @return [String]
1015
1480
  #
1016
1481
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageAttributeValue AWS API Documentation
@@ -1021,118 +1486,273 @@ module Aws::SQS
1021
1486
  :string_list_values,
1022
1487
  :binary_list_values,
1023
1488
  :data_type)
1489
+ SENSITIVE = []
1490
+ include Aws::Structure
1491
+ end
1492
+
1493
+ # The specified message isn't in flight.
1494
+ #
1495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageNotInflight AWS API Documentation
1496
+ #
1497
+ class MessageNotInflight < Aws::EmptyStructure; end
1498
+
1499
+ # The user-specified message system attribute value. For string data
1500
+ # types, the `Value` attribute has the same restrictions on the content
1501
+ # as the message body. For more information, see ` SendMessage.`
1502
+ #
1503
+ # `Name`, `type`, `value` and the message body must not be empty or
1504
+ # null.
1505
+ #
1506
+ # @!attribute [rw] string_value
1507
+ # Strings are Unicode with UTF-8 binary encoding. For a list of code
1508
+ # values, see [ASCII Printable Characters][1].
1509
+ #
1510
+ #
1511
+ #
1512
+ # [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
1513
+ # @return [String]
1514
+ #
1515
+ # @!attribute [rw] binary_value
1516
+ # Binary type attributes can store any binary data, such as compressed
1517
+ # data, encrypted data, or images.
1518
+ # @return [String]
1519
+ #
1520
+ # @!attribute [rw] string_list_values
1521
+ # Not implemented. Reserved for future use.
1522
+ # @return [Array<String>]
1523
+ #
1524
+ # @!attribute [rw] binary_list_values
1525
+ # Not implemented. Reserved for future use.
1526
+ # @return [Array<String>]
1527
+ #
1528
+ # @!attribute [rw] data_type
1529
+ # Amazon SQS supports the following logical data types: `String`,
1530
+ # `Number`, and `Binary`. For the `Number` data type, you must use
1531
+ # `StringValue`.
1532
+ #
1533
+ # You can also append custom labels. For more information, see [Amazon
1534
+ # SQS Message Attributes][1] in the *Amazon SQS Developer Guide*.
1535
+ #
1536
+ #
1537
+ #
1538
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1539
+ # @return [String]
1540
+ #
1541
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/MessageSystemAttributeValue AWS API Documentation
1542
+ #
1543
+ class MessageSystemAttributeValue < Struct.new(
1544
+ :string_value,
1545
+ :binary_value,
1546
+ :string_list_values,
1547
+ :binary_list_values,
1548
+ :data_type)
1549
+ SENSITIVE = []
1550
+ include Aws::Structure
1551
+ end
1552
+
1553
+ # The specified action violates a limit. For example, `ReceiveMessage`
1554
+ # returns this error if the maximum number of in flight messages is
1555
+ # reached and `AddPermission` returns this error if the maximum number
1556
+ # of permissions for the queue is reached.
1557
+ #
1558
+ # @!attribute [rw] message
1559
+ # @return [String]
1560
+ #
1561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/OverLimit AWS API Documentation
1562
+ #
1563
+ class OverLimit < Struct.new(
1564
+ :message)
1565
+ SENSITIVE = []
1024
1566
  include Aws::Structure
1025
1567
  end
1026
1568
 
1027
- # @note When making an API call, you may pass PurgeQueueRequest
1028
- # data as a hash:
1569
+ # Indicates that the specified queue previously received a `PurgeQueue`
1570
+ # request within the last 60 seconds (the time it can take to delete the
1571
+ # messages in the queue).
1029
1572
  #
1030
- # {
1031
- # queue_url: "String", # required
1032
- # }
1573
+ # @!attribute [rw] message
1574
+ # @return [String]
1033
1575
  #
1576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueueInProgress AWS API Documentation
1577
+ #
1578
+ class PurgeQueueInProgress < Struct.new(
1579
+ :message)
1580
+ SENSITIVE = []
1581
+ include Aws::Structure
1582
+ end
1583
+
1034
1584
  # @!attribute [rw] queue_url
1035
1585
  # The URL of the queue from which the `PurgeQueue` action deletes
1036
1586
  # messages.
1037
1587
  #
1038
- # Queue URLs are case-sensitive.
1588
+ # Queue URLs and names are case-sensitive.
1039
1589
  # @return [String]
1040
1590
  #
1041
1591
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueueRequest AWS API Documentation
1042
1592
  #
1043
1593
  class PurgeQueueRequest < Struct.new(
1044
1594
  :queue_url)
1595
+ SENSITIVE = []
1596
+ include Aws::Structure
1597
+ end
1598
+
1599
+ # You must wait 60 seconds after deleting a queue before you can create
1600
+ # another queue with the same name.
1601
+ #
1602
+ # @!attribute [rw] message
1603
+ # @return [String]
1604
+ #
1605
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDeletedRecently AWS API Documentation
1606
+ #
1607
+ class QueueDeletedRecently < Struct.new(
1608
+ :message)
1609
+ SENSITIVE = []
1610
+ include Aws::Structure
1611
+ end
1612
+
1613
+ # The specified queue doesn't exist.
1614
+ #
1615
+ # @!attribute [rw] message
1616
+ # @return [String]
1617
+ #
1618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDoesNotExist AWS API Documentation
1619
+ #
1620
+ class QueueDoesNotExist < Struct.new(
1621
+ :message)
1622
+ SENSITIVE = []
1623
+ include Aws::Structure
1624
+ end
1625
+
1626
+ # A queue with this name already exists. Amazon SQS returns this error
1627
+ # only if the request includes attributes whose values differ from those
1628
+ # of the existing queue.
1629
+ #
1630
+ # @!attribute [rw] message
1631
+ # @return [String]
1632
+ #
1633
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueNameExists AWS API Documentation
1634
+ #
1635
+ class QueueNameExists < Struct.new(
1636
+ :message)
1637
+ SENSITIVE = []
1045
1638
  include Aws::Structure
1046
1639
  end
1047
1640
 
1048
- # @note When making an API call, you may pass ReceiveMessageRequest
1049
- # data as a hash:
1641
+ # The specified receipt handle isn't valid.
1642
+ #
1643
+ # @!attribute [rw] message
1644
+ # @return [String]
1050
1645
  #
1051
- # {
1052
- # queue_url: "String", # required
1053
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication, KmsMasterKeyId, KmsDataKeyReusePeriodSeconds
1054
- # message_attribute_names: ["MessageAttributeName"],
1055
- # max_number_of_messages: 1,
1056
- # visibility_timeout: 1,
1057
- # wait_time_seconds: 1,
1058
- # receive_request_attempt_id: "String",
1059
- # }
1646
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiptHandleIsInvalid AWS API Documentation
1060
1647
  #
1648
+ class ReceiptHandleIsInvalid < Struct.new(
1649
+ :message)
1650
+ SENSITIVE = []
1651
+ include Aws::Structure
1652
+ end
1653
+
1061
1654
  # @!attribute [rw] queue_url
1062
1655
  # The URL of the Amazon SQS queue from which messages are received.
1063
1656
  #
1064
- # Queue URLs are case-sensitive.
1657
+ # Queue URLs and names are case-sensitive.
1065
1658
  # @return [String]
1066
1659
  #
1067
1660
  # @!attribute [rw] attribute_names
1661
+ # This parameter has been deprecated but will be supported for
1662
+ # backward compatibility. To provide attribute names, you are
1663
+ # encouraged to use `MessageSystemAttributeNames`.
1664
+ #
1068
1665
  # A list of attributes that need to be returned along with each
1069
1666
  # message. These attributes include:
1070
1667
  #
1071
- # * `All` - Returns all values.
1668
+ # * `All` Returns all values.
1072
1669
  #
1073
- # * `ApproximateFirstReceiveTimestamp` - Returns the time the message
1670
+ # * `ApproximateFirstReceiveTimestamp` Returns the time the message
1074
1671
  # was first received from the queue ([epoch time][1] in
1075
1672
  # milliseconds).
1076
1673
  #
1077
- # * `ApproximateReceiveCount` - Returns the number of times a message
1078
- # has been received from the queue but not deleted.
1674
+ # * `ApproximateReceiveCount` Returns the number of times a message
1675
+ # has been received across all queues but not deleted.
1676
+ #
1677
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1079
1678
  #
1080
1679
  # * `SenderId`
1081
1680
  #
1082
- # * For an IAM user, returns the IAM user ID, for example
1681
+ # * For a user, returns the user ID, for example
1083
1682
  # `ABCDEFGHI1JKLMNOPQ23R`.
1084
1683
  #
1085
1684
  # * For an IAM role, returns the IAM role ID, for example
1086
1685
  # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1087
1686
  #
1088
- # * `SentTimestamp` - Returns the time the message was sent to the
1687
+ # * `SentTimestamp` Returns the time the message was sent to the
1089
1688
  # queue ([epoch time][1] in milliseconds).
1090
1689
  #
1091
- # * `MessageDeduplicationId` - Returns the value provided by the
1092
- # sender that calls the ` SendMessage ` action.
1690
+ # * `SqsManagedSseEnabled` Enables server-side queue encryption
1691
+ # using SQS owned encryption keys. Only one server-side encryption
1692
+ # option is supported per queue (for example, [SSE-KMS][2] or
1693
+ # [SSE-SQS][3]).
1694
+ #
1695
+ # * `MessageDeduplicationId` – Returns the value provided by the
1696
+ # producer that calls the ` SendMessage ` action.
1093
1697
  #
1094
- # * `MessageGroupId` - Returns the value provided by the sender that
1698
+ # * `MessageGroupId` Returns the value provided by the producer that
1095
1699
  # calls the ` SendMessage ` action. Messages with the same
1096
1700
  # `MessageGroupId` are returned in sequence.
1097
1701
  #
1098
- # * `SequenceNumber` - Returns the value provided by Amazon SQS.
1702
+ # * `SequenceNumber` Returns the value provided by Amazon SQS.
1099
1703
  #
1100
- # Any other valid special request parameters (such as the following)
1101
- # are ignored:
1102
1704
  #
1103
- # * `ApproximateNumberOfMessages`
1104
1705
  #
1105
- # * `ApproximateNumberOfMessagesDelayed`
1706
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
1707
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1708
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1709
+ # @return [Array<String>]
1106
1710
  #
1107
- # * `ApproximateNumberOfMessagesNotVisible`
1711
+ # @!attribute [rw] message_system_attribute_names
1712
+ # A list of attributes that need to be returned along with each
1713
+ # message. These attributes include:
1108
1714
  #
1109
- # * `CreatedTimestamp`
1715
+ # * `All` – Returns all values.
1110
1716
  #
1111
- # * `ContentBasedDeduplication`
1717
+ # * `ApproximateFirstReceiveTimestamp` – Returns the time the message
1718
+ # was first received from the queue ([epoch time][1] in
1719
+ # milliseconds).
1112
1720
  #
1113
- # * `DelaySeconds`
1721
+ # * `ApproximateReceiveCount` – Returns the number of times a message
1722
+ # has been received across all queues but not deleted.
1114
1723
  #
1115
- # * `FifoQueue`
1724
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1116
1725
  #
1117
- # * `LastModifiedTimestamp`
1726
+ # * `SenderId`
1118
1727
  #
1119
- # * `MaximumMessageSize`
1728
+ # * For a user, returns the user ID, for example
1729
+ # `ABCDEFGHI1JKLMNOPQ23R`.
1120
1730
  #
1121
- # * `MessageRetentionPeriod`
1731
+ # * For an IAM role, returns the IAM role ID, for example
1732
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1122
1733
  #
1123
- # * `Policy`
1734
+ # * `SentTimestamp` – Returns the time the message was sent to the
1735
+ # queue ([epoch time][1] in milliseconds).
1124
1736
  #
1125
- # * `QueueArn`,
1737
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
1738
+ # using SQS owned encryption keys. Only one server-side encryption
1739
+ # option is supported per queue (for example, [SSE-KMS][2] or
1740
+ # [SSE-SQS][3]).
1126
1741
  #
1127
- # * `ReceiveMessageWaitTimeSeconds`
1742
+ # * `MessageDeduplicationId` – Returns the value provided by the
1743
+ # producer that calls the ` SendMessage ` action.
1128
1744
  #
1129
- # * `RedrivePolicy`
1745
+ # * `MessageGroupId` – Returns the value provided by the producer that
1746
+ # calls the ` SendMessage ` action. Messages with the same
1747
+ # `MessageGroupId` are returned in sequence.
1130
1748
  #
1131
- # * `VisibilityTimeout`
1749
+ # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1132
1750
  #
1133
1751
  #
1134
1752
  #
1135
1753
  # [1]: http://en.wikipedia.org/wiki/Unix_time
1754
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1755
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1136
1756
  # @return [Array<String>]
1137
1757
  #
1138
1758
  # @!attribute [rw] message_attribute_names
@@ -1161,7 +1781,7 @@ module Aws::SQS
1161
1781
  # @!attribute [rw] max_number_of_messages
1162
1782
  # The maximum number of messages to return. Amazon SQS never returns
1163
1783
  # more messages than this value (however, fewer messages might be
1164
- # returned). Valid values are 1 to 10. Default is 1.
1784
+ # returned). Valid values: 1 to 10. Default: 1.
1165
1785
  # @return [Integer]
1166
1786
  #
1167
1787
  # @!attribute [rw] visibility_timeout
@@ -1174,8 +1794,20 @@ module Aws::SQS
1174
1794
  # The duration (in seconds) for which the call waits for a message to
1175
1795
  # arrive in the queue before returning. If a message is available, the
1176
1796
  # call returns sooner than `WaitTimeSeconds`. If no messages are
1177
- # available and the wait time expires, the call returns successfully
1178
- # with an empty list of messages.
1797
+ # available and the wait time expires, the call does not return a
1798
+ # message list.
1799
+ #
1800
+ # To avoid HTTP errors, ensure that the HTTP response timeout for
1801
+ # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
1802
+ # parameter. For example, with the Java SDK, you can set HTTP
1803
+ # transport settings using the [ NettyNioAsyncHttpClient][1] for
1804
+ # asynchronous clients, or the [ ApacheHttpClient][2] for synchronous
1805
+ # clients.
1806
+ #
1807
+ #
1808
+ #
1809
+ # [1]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/nio/netty/NettyNioAsyncHttpClient.html
1810
+ # [2]: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/http/apache/ApacheHttpClient.html
1179
1811
  # @return [Integer]
1180
1812
  #
1181
1813
  # @!attribute [rw] receive_request_attempt_id
@@ -1183,10 +1815,10 @@ module Aws::SQS
1183
1815
  #
1184
1816
  # The token used for deduplication of `ReceiveMessage` calls. If a
1185
1817
  # networking issue occurs after a `ReceiveMessage` action, and instead
1186
- # of a response you receive a generic error, you can retry the same
1187
- # action with an identical `ReceiveRequestAttemptId` to retrieve the
1188
- # same set of messages, even if their visibility timeout has not yet
1189
- # expired.
1818
+ # of a response you receive a generic error, it is possible to retry
1819
+ # the same action with an identical `ReceiveRequestAttemptId` to
1820
+ # retrieve the same set of messages, even if their visibility timeout
1821
+ # has not yet expired.
1190
1822
  #
1191
1823
  # * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
1192
1824
  # `ReceiveMessage` action.
@@ -1194,11 +1826,7 @@ module Aws::SQS
1194
1826
  # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1195
1827
  # can provide a `ReceiveRequestAttemptId` explicitly.
1196
1828
  #
1197
- # * If a caller of the `ReceiveMessage` action doesn't provide a
1198
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
1199
- # `ReceiveRequestAttemptId`.
1200
- #
1201
- # * You can retry the `ReceiveMessage` action with the same
1829
+ # * It is possible to retry the `ReceiveMessage` action with the same
1202
1830
  # `ReceiveRequestAttemptId` if none of the messages have been
1203
1831
  # modified (deleted or had their visibility changes).
1204
1832
  #
@@ -1206,16 +1834,15 @@ module Aws::SQS
1206
1834
  # `ReceiveRequestAttemptId` return the same messages and receipt
1207
1835
  # handles. If a retry occurs within the deduplication interval, it
1208
1836
  # resets the visibility timeout. For more information, see
1209
- # [Visibility Timeout][1] in the *Amazon Simple Queue Service
1210
- # Developer Guide*.
1837
+ # [Visibility Timeout][1] in the *Amazon SQS Developer Guide*.
1211
1838
  #
1212
- # If a caller of the `ReceiveMessage` action is still processing
1839
+ # If a caller of the `ReceiveMessage` action still processes
1213
1840
  # messages when the visibility timeout expires and messages become
1214
- # visible, another worker reading from the same queue can receive
1841
+ # visible, another worker consuming from the same queue can receive
1215
1842
  # the same messages and therefore process duplicates. Also, if a
1216
- # reader whose message processing time is longer than the visibility
1217
- # timeout tries to delete the processed messages, the action fails
1218
- # with an error.
1843
+ # consumer whose message processing time is longer than the
1844
+ # visibility timeout tries to delete the processed messages, the
1845
+ # action fails with an error.
1219
1846
  #
1220
1847
  # To mitigate this effect, ensure that your application observes a
1221
1848
  # safe threshold before the visibility timeout expires and extend
@@ -1232,19 +1859,19 @@ module Aws::SQS
1232
1859
  # visibility timeout expires. As a result, delays might occur but
1233
1860
  # the messages in the queue remain in a strict order.
1234
1861
  #
1235
- # The length of `ReceiveRequestAttemptId` is 128 characters.
1862
+ # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1236
1863
  # `ReceiveRequestAttemptId` can contain alphanumeric characters
1237
1864
  # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1238
1865
  # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1239
1866
  #
1240
1867
  # For best practices of using `ReceiveRequestAttemptId`, see [Using
1241
- # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
1242
- # Simple Queue Service Developer Guide*.
1868
+ # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
1869
+ # Developer Guide*.
1243
1870
  #
1244
1871
  #
1245
1872
  #
1246
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1247
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-receiverequestattemptid-request-parameter
1873
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1874
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-receiverequestattemptid-request-parameter.html
1248
1875
  # @return [String]
1249
1876
  #
1250
1877
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiveMessageRequest AWS API Documentation
@@ -1252,11 +1879,13 @@ module Aws::SQS
1252
1879
  class ReceiveMessageRequest < Struct.new(
1253
1880
  :queue_url,
1254
1881
  :attribute_names,
1882
+ :message_system_attribute_names,
1255
1883
  :message_attribute_names,
1256
1884
  :max_number_of_messages,
1257
1885
  :visibility_timeout,
1258
1886
  :wait_time_seconds,
1259
1887
  :receive_request_attempt_id)
1888
+ SENSITIVE = []
1260
1889
  include Aws::Structure
1261
1890
  end
1262
1891
 
@@ -1270,21 +1899,14 @@ module Aws::SQS
1270
1899
  #
1271
1900
  class ReceiveMessageResult < Struct.new(
1272
1901
  :messages)
1902
+ SENSITIVE = []
1273
1903
  include Aws::Structure
1274
1904
  end
1275
1905
 
1276
- # @note When making an API call, you may pass RemovePermissionRequest
1277
- # data as a hash:
1278
- #
1279
- # {
1280
- # queue_url: "String", # required
1281
- # label: "String", # required
1282
- # }
1283
- #
1284
1906
  # @!attribute [rw] queue_url
1285
1907
  # The URL of the Amazon SQS queue from which permissions are removed.
1286
1908
  #
1287
- # Queue URLs are case-sensitive.
1909
+ # Queue URLs and names are case-sensitive.
1288
1910
  # @return [String]
1289
1911
  #
1290
1912
  # @!attribute [rw] label
@@ -1297,38 +1919,53 @@ module Aws::SQS
1297
1919
  class RemovePermissionRequest < Struct.new(
1298
1920
  :queue_url,
1299
1921
  :label)
1922
+ SENSITIVE = []
1923
+ include Aws::Structure
1924
+ end
1925
+
1926
+ # The request was denied due to request throttling.
1927
+ #
1928
+ # * The rate of requests per second exceeds the Amazon Web Services KMS
1929
+ # request quota for an account and Region.
1930
+ #
1931
+ # * A burst or sustained high rate of requests to change the state of
1932
+ # the same KMS key. This condition is often known as a "hot key."
1933
+ #
1934
+ # * Requests for operations on KMS keys in a Amazon Web Services
1935
+ # CloudHSM key store might be throttled at a lower-than-expected rate
1936
+ # when the Amazon Web Services CloudHSM cluster associated with the
1937
+ # Amazon Web Services CloudHSM key store is processing numerous
1938
+ # commands, including those unrelated to the Amazon Web Services
1939
+ # CloudHSM key store.
1940
+ #
1941
+ # @!attribute [rw] message
1942
+ # @return [String]
1943
+ #
1944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RequestThrottled AWS API Documentation
1945
+ #
1946
+ class RequestThrottled < Struct.new(
1947
+ :message)
1948
+ SENSITIVE = []
1300
1949
  include Aws::Structure
1301
1950
  end
1302
1951
 
1303
- # @note When making an API call, you may pass SendMessageBatchRequest
1304
- # data as a hash:
1305
- #
1306
- # {
1307
- # queue_url: "String", # required
1308
- # entries: [ # required
1309
- # {
1310
- # id: "String", # required
1311
- # message_body: "String", # required
1312
- # delay_seconds: 1,
1313
- # message_attributes: {
1314
- # "String" => {
1315
- # string_value: "String",
1316
- # binary_value: "data",
1317
- # string_list_values: ["String"],
1318
- # binary_list_values: ["data"],
1319
- # data_type: "String", # required
1320
- # },
1321
- # },
1322
- # message_deduplication_id: "String",
1323
- # message_group_id: "String",
1324
- # },
1325
- # ],
1326
- # }
1952
+ # One or more specified resources don't exist.
1953
+ #
1954
+ # @!attribute [rw] message
1955
+ # @return [String]
1327
1956
  #
1957
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ResourceNotFoundException AWS API Documentation
1958
+ #
1959
+ class ResourceNotFoundException < Struct.new(
1960
+ :message)
1961
+ SENSITIVE = []
1962
+ include Aws::Structure
1963
+ end
1964
+
1328
1965
  # @!attribute [rw] queue_url
1329
1966
  # The URL of the Amazon SQS queue to which batched messages are sent.
1330
1967
  #
1331
- # Queue URLs are case-sensitive.
1968
+ # Queue URLs and names are case-sensitive.
1332
1969
  # @return [String]
1333
1970
  #
1334
1971
  # @!attribute [rw] entries
@@ -1340,37 +1977,22 @@ module Aws::SQS
1340
1977
  class SendMessageBatchRequest < Struct.new(
1341
1978
  :queue_url,
1342
1979
  :entries)
1980
+ SENSITIVE = []
1343
1981
  include Aws::Structure
1344
1982
  end
1345
1983
 
1346
1984
  # Contains the details of a single Amazon SQS message along with an
1347
1985
  # `Id`.
1348
1986
  #
1349
- # @note When making an API call, you may pass SendMessageBatchRequestEntry
1350
- # data as a hash:
1351
- #
1352
- # {
1353
- # id: "String", # required
1354
- # message_body: "String", # required
1355
- # delay_seconds: 1,
1356
- # message_attributes: {
1357
- # "String" => {
1358
- # string_value: "String",
1359
- # binary_value: "data",
1360
- # string_list_values: ["String"],
1361
- # binary_list_values: ["data"],
1362
- # data_type: "String", # required
1363
- # },
1364
- # },
1365
- # message_deduplication_id: "String",
1366
- # message_group_id: "String",
1367
- # }
1368
- #
1369
1987
  # @!attribute [rw] id
1370
1988
  # An identifier for a message in this batch used to communicate the
1371
1989
  # result.
1372
1990
  #
1373
- # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
1991
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request.
1992
+ #
1993
+ # This identifier can have up to 80 characters. The following
1994
+ # characters are accepted: alphanumeric characters, hyphens(-), and
1995
+ # underscores (\_).
1374
1996
  #
1375
1997
  # </note>
1376
1998
  # @return [String]
@@ -1394,14 +2016,26 @@ module Aws::SQS
1394
2016
  #
1395
2017
  # @!attribute [rw] message_attributes
1396
2018
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1397
- # For more information, see [Message Attribute Items and
1398
- # Validation][1] in the *Amazon Simple Queue Service Developer Guide*.
2019
+ # For more information, see [Amazon SQS message attributes][1] in the
2020
+ # *Amazon SQS Developer Guide*.
1399
2021
  #
1400
2022
  #
1401
2023
  #
1402
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
2024
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1403
2025
  # @return [Hash<String,Types::MessageAttributeValue>]
1404
2026
  #
2027
+ # @!attribute [rw] message_system_attributes
2028
+ # The message system attribute to send Each message system attribute
2029
+ # consists of a `Name`, `Type`, and `Value`.
2030
+ #
2031
+ # * Currently, the only supported message system attribute is
2032
+ # `AWSTraceHeader`. Its type must be `String` and its value must be
2033
+ # a correctly formatted X-Ray trace header string.
2034
+ #
2035
+ # * The size of a message system attribute doesn't count towards the
2036
+ # total size of a message.
2037
+ # @return [Hash<String,Types::MessageSystemAttributeValue>]
2038
+ #
1405
2039
  # @!attribute [rw] message_deduplication_id
1406
2040
  # This parameter applies only to FIFO (first-in-first-out) queues.
1407
2041
  #
@@ -1409,8 +2043,8 @@ module Aws::SQS
1409
2043
  # minimum deduplication interval. If a message with a particular
1410
2044
  # `MessageDeduplicationId` is sent successfully, subsequent messages
1411
2045
  # with the same `MessageDeduplicationId` are accepted successfully but
1412
- # aren't delivered. For more information, see [ Exactly-Once
1413
- # Processing][1] in the *Amazon Simple Queue Service Developer Guide*.
2046
+ # aren't delivered. For more information, see [ Exactly-once
2047
+ # processing][1] in the *Amazon SQS Developer Guide*.
1414
2048
  #
1415
2049
  # * Every message must have a unique `MessageDeduplicationId`,
1416
2050
  #
@@ -1440,7 +2074,7 @@ module Aws::SQS
1440
2074
  # `MessageDeduplicationId`, the two messages are treated as
1441
2075
  # duplicates and only one copy of the message is delivered.
1442
2076
  #
1443
- # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
2077
+ # <note markdown="1"> The `MessageDeduplicationId` is available to the consumer of the
1444
2078
  # message (this can be useful for troubleshooting delivery issues).
1445
2079
  #
1446
2080
  # If a message is sent successfully but the acknowledgement is lost
@@ -1448,6 +2082,9 @@ module Aws::SQS
1448
2082
  # after the deduplication interval, Amazon SQS can't detect duplicate
1449
2083
  # messages.
1450
2084
  #
2085
+ # Amazon SQS continues to keep track of the message deduplication ID
2086
+ # even after the message is received and deleted.
2087
+ #
1451
2088
  # </note>
1452
2089
  #
1453
2090
  # The length of `MessageDeduplicationId` is 128 characters.
@@ -1456,13 +2093,13 @@ module Aws::SQS
1456
2093
  # ``).
1457
2094
  #
1458
2095
  # For best practices of using `MessageDeduplicationId`, see [Using the
1459
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1460
- # Service Developer Guide*.
2096
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2097
+ # Guide*.
1461
2098
  #
1462
2099
  #
1463
2100
  #
1464
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1465
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
2101
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2102
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1466
2103
  # @return [String]
1467
2104
  #
1468
2105
  # @!attribute [rw] message_group_id
@@ -1474,8 +2111,8 @@ module Aws::SQS
1474
2111
  # might be processed out of order). To interleave multiple ordered
1475
2112
  # streams within a single queue, use `MessageGroupId` values (for
1476
2113
  # example, session data for multiple users). In this scenario,
1477
- # multiple readers can process the queue, but the session data of each
1478
- # user is processed in a FIFO fashion.
2114
+ # multiple consumers can process the queue, but the session data of
2115
+ # each user is processed in a FIFO fashion.
1479
2116
  #
1480
2117
  # * You must associate a non-empty `MessageGroupId` with a message. If
1481
2118
  # you don't provide a `MessageGroupId`, the action fails.
@@ -1485,20 +2122,19 @@ module Aws::SQS
1485
2122
  # are sorted by time sent. The caller can't specify a
1486
2123
  # `MessageGroupId`.
1487
2124
  #
1488
- # The length of `MessageGroupId` is 128 characters. Valid values are
2125
+ # The length of `MessageGroupId` is 128 characters. Valid values:
1489
2126
  # alphanumeric characters and punctuation ``
1490
2127
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1491
2128
  #
1492
2129
  # For best practices of using `MessageGroupId`, see [Using the
1493
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1494
- # Developer Guide*.
2130
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1495
2131
  #
1496
2132
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1497
2133
  # Standard queues.
1498
2134
  #
1499
2135
  #
1500
2136
  #
1501
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
2137
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
1502
2138
  # @return [String]
1503
2139
  #
1504
2140
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessageBatchRequestEntry AWS API Documentation
@@ -1508,8 +2144,10 @@ module Aws::SQS
1508
2144
  :message_body,
1509
2145
  :delay_seconds,
1510
2146
  :message_attributes,
2147
+ :message_system_attributes,
1511
2148
  :message_deduplication_id,
1512
2149
  :message_group_id)
2150
+ SENSITIVE = []
1513
2151
  include Aws::Structure
1514
2152
  end
1515
2153
 
@@ -1531,6 +2169,7 @@ module Aws::SQS
1531
2169
  class SendMessageBatchResult < Struct.new(
1532
2170
  :successful,
1533
2171
  :failed)
2172
+ SENSITIVE = []
1534
2173
  include Aws::Structure
1535
2174
  end
1536
2175
 
@@ -1546,11 +2185,10 @@ module Aws::SQS
1546
2185
  # @return [String]
1547
2186
  #
1548
2187
  # @!attribute [rw] md5_of_message_body
1549
- # An MD5 digest of the non-URL-encoded message attribute string. You
1550
- # can use this attribute to verify that Amazon SQS received the
1551
- # message correctly. Amazon SQS URL-decodes the message before
1552
- # creating the MD5 digest. For information about MD5, see
1553
- # [RFC1321][1].
2188
+ # An MD5 digest of the non-URL-encoded message body string. You can
2189
+ # use this attribute to verify that Amazon SQS received the message
2190
+ # correctly. Amazon SQS URL-decodes the message before creating the
2191
+ # MD5 digest. For information about MD5, see [RFC1321][1].
1554
2192
  #
1555
2193
  #
1556
2194
  #
@@ -1569,6 +2207,18 @@ module Aws::SQS
1569
2207
  # [1]: https://www.ietf.org/rfc/rfc1321.txt
1570
2208
  # @return [String]
1571
2209
  #
2210
+ # @!attribute [rw] md5_of_message_system_attributes
2211
+ # An MD5 digest of the non-URL-encoded message system attribute
2212
+ # string. You can use this attribute to verify that Amazon SQS
2213
+ # received the message correctly. Amazon SQS URL-decodes the message
2214
+ # before creating the MD5 digest. For information about MD5, see
2215
+ # [RFC1321][1].
2216
+ #
2217
+ #
2218
+ #
2219
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
2220
+ # @return [String]
2221
+ #
1572
2222
  # @!attribute [rw] sequence_number
1573
2223
  # This parameter applies only to FIFO (first-in-first-out) queues.
1574
2224
  #
@@ -1586,47 +2236,34 @@ module Aws::SQS
1586
2236
  :message_id,
1587
2237
  :md5_of_message_body,
1588
2238
  :md5_of_message_attributes,
2239
+ :md5_of_message_system_attributes,
1589
2240
  :sequence_number)
2241
+ SENSITIVE = []
1590
2242
  include Aws::Structure
1591
2243
  end
1592
2244
 
1593
- # @note When making an API call, you may pass SendMessageRequest
1594
- # data as a hash:
1595
- #
1596
- # {
1597
- # queue_url: "String", # required
1598
- # message_body: "String", # required
1599
- # delay_seconds: 1,
1600
- # message_attributes: {
1601
- # "String" => {
1602
- # string_value: "String",
1603
- # binary_value: "data",
1604
- # string_list_values: ["String"],
1605
- # binary_list_values: ["data"],
1606
- # data_type: "String", # required
1607
- # },
1608
- # },
1609
- # message_deduplication_id: "String",
1610
- # message_group_id: "String",
1611
- # }
1612
- #
1613
2245
  # @!attribute [rw] queue_url
1614
2246
  # The URL of the Amazon SQS queue to which a message is sent.
1615
2247
  #
1616
- # Queue URLs are case-sensitive.
2248
+ # Queue URLs and names are case-sensitive.
1617
2249
  # @return [String]
1618
2250
  #
1619
2251
  # @!attribute [rw] message_body
1620
- # The message to send. The maximum string size is 256 KB.
2252
+ # The message to send. The minimum size is one character. The maximum
2253
+ # size is 256 KiB.
1621
2254
  #
1622
2255
  # A message can include only XML, JSON, and unformatted text. The
1623
- # following Unicode characters are allowed:
2256
+ # following Unicode characters are allowed. For more information, see
2257
+ # the [W3C specification for characters][1].
1624
2258
  #
1625
2259
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to
1626
2260
  # `#xFFFD` \| `#x10000` to `#x10FFFF`
1627
2261
  #
1628
- # Any characters not included in this list will be rejected. For more
1629
- # information, see the [W3C specification for characters][1].
2262
+ # Amazon SQS does not throw an exception or completely reject the
2263
+ # message if it contains invalid characters. Instead, it replaces
2264
+ # those invalid characters with `U+FFFD` before storing the message in
2265
+ # the queue, as long as the message body contains at least one valid
2266
+ # character.
1630
2267
  #
1631
2268
  #
1632
2269
  #
@@ -1648,14 +2285,26 @@ module Aws::SQS
1648
2285
  #
1649
2286
  # @!attribute [rw] message_attributes
1650
2287
  # Each message attribute consists of a `Name`, `Type`, and `Value`.
1651
- # For more information, see [Message Attribute Items and
1652
- # Validation][1] in the *Amazon Simple Queue Service Developer Guide*.
2288
+ # For more information, see [Amazon SQS message attributes][1] in the
2289
+ # *Amazon SQS Developer Guide*.
1653
2290
  #
1654
2291
  #
1655
2292
  #
1656
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
2293
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-metadata.html#sqs-message-attributes
1657
2294
  # @return [Hash<String,Types::MessageAttributeValue>]
1658
2295
  #
2296
+ # @!attribute [rw] message_system_attributes
2297
+ # The message system attribute to send. Each message system attribute
2298
+ # consists of a `Name`, `Type`, and `Value`.
2299
+ #
2300
+ # * Currently, the only supported message system attribute is
2301
+ # `AWSTraceHeader`. Its type must be `String` and its value must be
2302
+ # a correctly formatted X-Ray trace header string.
2303
+ #
2304
+ # * The size of a message system attribute doesn't count towards the
2305
+ # total size of a message.
2306
+ # @return [Hash<String,Types::MessageSystemAttributeValue>]
2307
+ #
1659
2308
  # @!attribute [rw] message_deduplication_id
1660
2309
  # This parameter applies only to FIFO (first-in-first-out) queues.
1661
2310
  #
@@ -1663,8 +2312,8 @@ module Aws::SQS
1663
2312
  # a particular `MessageDeduplicationId` is sent successfully, any
1664
2313
  # messages sent with the same `MessageDeduplicationId` are accepted
1665
2314
  # successfully but aren't delivered during the 5-minute deduplication
1666
- # interval. For more information, see [ Exactly-Once Processing][1] in
1667
- # the *Amazon Simple Queue Service Developer Guide*.
2315
+ # interval. For more information, see [ Exactly-once processing][1] in
2316
+ # the *Amazon SQS Developer Guide*.
1668
2317
  #
1669
2318
  # * Every message must have a unique `MessageDeduplicationId`,
1670
2319
  #
@@ -1694,7 +2343,7 @@ module Aws::SQS
1694
2343
  # `MessageDeduplicationId`, the two messages are treated as
1695
2344
  # duplicates and only one copy of the message is delivered.
1696
2345
  #
1697
- # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
2346
+ # <note markdown="1"> The `MessageDeduplicationId` is available to the consumer of the
1698
2347
  # message (this can be useful for troubleshooting delivery issues).
1699
2348
  #
1700
2349
  # If a message is sent successfully but the acknowledgement is lost
@@ -1702,21 +2351,24 @@ module Aws::SQS
1702
2351
  # after the deduplication interval, Amazon SQS can't detect duplicate
1703
2352
  # messages.
1704
2353
  #
2354
+ # Amazon SQS continues to keep track of the message deduplication ID
2355
+ # even after the message is received and deleted.
2356
+ #
1705
2357
  # </note>
1706
2358
  #
1707
- # The length of `MessageDeduplicationId` is 128 characters.
2359
+ # The maximum length of `MessageDeduplicationId` is 128 characters.
1708
2360
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1709
2361
  # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1710
2362
  # ``).
1711
2363
  #
1712
2364
  # For best practices of using `MessageDeduplicationId`, see [Using the
1713
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1714
- # Service Developer Guide*.
2365
+ # MessageDeduplicationId Property][2] in the *Amazon SQS Developer
2366
+ # Guide*.
1715
2367
  #
1716
2368
  #
1717
2369
  #
1718
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1719
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
2370
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2371
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1720
2372
  # @return [String]
1721
2373
  #
1722
2374
  # @!attribute [rw] message_group_id
@@ -1728,8 +2380,8 @@ module Aws::SQS
1728
2380
  # might be processed out of order). To interleave multiple ordered
1729
2381
  # streams within a single queue, use `MessageGroupId` values (for
1730
2382
  # example, session data for multiple users). In this scenario,
1731
- # multiple readers can process the queue, but the session data of each
1732
- # user is processed in a FIFO fashion.
2383
+ # multiple consumers can process the queue, but the session data of
2384
+ # each user is processed in a FIFO fashion.
1733
2385
  #
1734
2386
  # * You must associate a non-empty `MessageGroupId` with a message. If
1735
2387
  # you don't provide a `MessageGroupId`, the action fails.
@@ -1739,20 +2391,19 @@ module Aws::SQS
1739
2391
  # are sorted by time sent. The caller can't specify a
1740
2392
  # `MessageGroupId`.
1741
2393
  #
1742
- # The length of `MessageGroupId` is 128 characters. Valid values are
1743
- # alphanumeric characters and punctuation ``
2394
+ # The maximum length of `MessageGroupId` is 128 characters. Valid
2395
+ # values: alphanumeric characters and punctuation ``
1744
2396
  # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1745
2397
  #
1746
2398
  # For best practices of using `MessageGroupId`, see [Using the
1747
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1748
- # Developer Guide*.
2399
+ # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1749
2400
  #
1750
2401
  # `MessageGroupId` is required for FIFO queues. You can't use it for
1751
2402
  # Standard queues.
1752
2403
  #
1753
2404
  #
1754
2405
  #
1755
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
2406
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
1756
2407
  # @return [String]
1757
2408
  #
1758
2409
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SendMessageRequest AWS API Documentation
@@ -1762,19 +2413,20 @@ module Aws::SQS
1762
2413
  :message_body,
1763
2414
  :delay_seconds,
1764
2415
  :message_attributes,
2416
+ :message_system_attributes,
1765
2417
  :message_deduplication_id,
1766
2418
  :message_group_id)
2419
+ SENSITIVE = []
1767
2420
  include Aws::Structure
1768
2421
  end
1769
2422
 
1770
2423
  # The `MD5OfMessageBody` and `MessageId` elements.
1771
2424
  #
1772
2425
  # @!attribute [rw] md5_of_message_body
1773
- # An MD5 digest of the non-URL-encoded message attribute string. You
1774
- # can use this attribute to verify that Amazon SQS received the
1775
- # message correctly. Amazon SQS URL-decodes the message before
1776
- # creating the MD5 digest. For information about MD5, see
1777
- # [RFC1321][1].
2426
+ # An MD5 digest of the non-URL-encoded message body string. You can
2427
+ # use this attribute to verify that Amazon SQS received the message
2428
+ # correctly. Amazon SQS URL-decodes the message before creating the
2429
+ # MD5 digest. For information about MD5, see [RFC1321][1].
1778
2430
  #
1779
2431
  #
1780
2432
  #
@@ -1793,14 +2445,21 @@ module Aws::SQS
1793
2445
  # [1]: https://www.ietf.org/rfc/rfc1321.txt
1794
2446
  # @return [String]
1795
2447
  #
2448
+ # @!attribute [rw] md5_of_message_system_attributes
2449
+ # An MD5 digest of the non-URL-encoded message system attribute
2450
+ # string. You can use this attribute to verify that Amazon SQS
2451
+ # received the message correctly. Amazon SQS URL-decodes the message
2452
+ # before creating the MD5 digest.
2453
+ # @return [String]
2454
+ #
1796
2455
  # @!attribute [rw] message_id
1797
2456
  # An attribute containing the `MessageId` of the message sent to the
1798
2457
  # queue. For more information, see [Queue and Message Identifiers][1]
1799
- # in the *Amazon Simple Queue Service Developer Guide*.
2458
+ # in the *Amazon SQS Developer Guide*.
1800
2459
  #
1801
2460
  #
1802
2461
  #
1803
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
2462
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1804
2463
  # @return [String]
1805
2464
  #
1806
2465
  # @!attribute [rw] sequence_number
@@ -1818,25 +2477,17 @@ module Aws::SQS
1818
2477
  class SendMessageResult < Struct.new(
1819
2478
  :md5_of_message_body,
1820
2479
  :md5_of_message_attributes,
2480
+ :md5_of_message_system_attributes,
1821
2481
  :message_id,
1822
2482
  :sequence_number)
2483
+ SENSITIVE = []
1823
2484
  include Aws::Structure
1824
2485
  end
1825
2486
 
1826
- # @note When making an API call, you may pass SetQueueAttributesRequest
1827
- # data as a hash:
1828
- #
1829
- # {
1830
- # queue_url: "String", # required
1831
- # attributes: { # required
1832
- # "All" => "String",
1833
- # },
1834
- # }
1835
- #
1836
2487
  # @!attribute [rw] queue_url
1837
2488
  # The URL of the Amazon SQS queue whose attributes are set.
1838
2489
  #
1839
- # Queue URLs are case-sensitive.
2490
+ # Queue URLs and names are case-sensitive.
1840
2491
  # @return [String]
1841
2492
  #
1842
2493
  # @!attribute [rw] attributes
@@ -1846,79 +2497,122 @@ module Aws::SQS
1846
2497
  # special request parameters that the `SetQueueAttributes` action
1847
2498
  # uses:
1848
2499
  #
1849
- # * `DelaySeconds` - The length of time, in seconds, for which the
2500
+ # * `DelaySeconds` The length of time, in seconds, for which the
1850
2501
  # delivery of all messages in the queue is delayed. Valid values: An
1851
- # integer from 0 to 900 (15 minutes). The default is 0 (zero).
2502
+ # integer from 0 to 900 (15 minutes). Default: 0.
1852
2503
  #
1853
- # * `MaximumMessageSize` - The limit of how many bytes a message can
2504
+ # * `MaximumMessageSize` The limit of how many bytes a message can
1854
2505
  # contain before Amazon SQS rejects it. Valid values: An integer
1855
- # from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The
1856
- # default is 262,144 (256 KiB).
2506
+ # from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). Default:
2507
+ # 262,144 (256 KiB).
1857
2508
  #
1858
- # * `MessageRetentionPeriod` - The length of time, in seconds, for
2509
+ # * `MessageRetentionPeriod` The length of time, in seconds, for
1859
2510
  # which Amazon SQS retains a message. Valid values: An integer
1860
2511
  # representing seconds, from 60 (1 minute) to 1,209,600 (14 days).
1861
- # The default is 345,600 (4 days).
2512
+ # Default: 345,600 (4 days). When you change a queue's attributes,
2513
+ # the change can take up to 60 seconds for most of the attributes to
2514
+ # propagate throughout the Amazon SQS system. Changes made to the
2515
+ # `MessageRetentionPeriod` attribute can take up to 15 minutes and
2516
+ # will impact existing messages in the queue potentially causing
2517
+ # them to be expired and deleted if the `MessageRetentionPeriod` is
2518
+ # reduced below the age of existing messages.
2519
+ #
2520
+ # * `Policy` – The queue's policy. A valid Amazon Web Services
2521
+ # policy. For more information about policy structure, see [Overview
2522
+ # of Amazon Web Services IAM Policies][1] in the *Identity and
2523
+ # Access Management User Guide*.
2524
+ #
2525
+ # * `ReceiveMessageWaitTimeSeconds` – The length of time, in seconds,
2526
+ # for which a ` ReceiveMessage ` action waits for a message to
2527
+ # arrive. Valid values: An integer from 0 to 20 (seconds). Default:
2528
+ # 0.
1862
2529
  #
1863
- # * `Policy` - The queue's policy. A valid AWS policy. For more
1864
- # information about policy structure, see [Overview of AWS IAM
1865
- # Policies][1] in the *Amazon IAM User Guide*.
2530
+ # * `VisibilityTimeout` The visibility timeout for the queue, in
2531
+ # seconds. Valid values: An integer from 0 to 43,200 (12 hours).
2532
+ # Default: 30. For more information about the visibility timeout,
2533
+ # see [Visibility Timeout][2] in the *Amazon SQS Developer Guide*.
1866
2534
  #
1867
- # * `ReceiveMessageWaitTimeSeconds` - The length of time, in seconds,
1868
- # for which a ` ReceiveMessage ` action waits for a message to
1869
- # arrive. Valid values: an integer from 0 to 20 (seconds). The
1870
- # default is 0.
2535
+ # The following attributes apply only to [dead-letter queues:][3]
1871
2536
  #
1872
- # * `RedrivePolicy` - The string that includes the parameters for the
1873
- # dead-letter queue functionality of the source queue. For more
1874
- # information about the redrive policy and dead-letter queues, see
1875
- # [Using Amazon SQS Dead-Letter Queues][2] in the *Amazon Simple
1876
- # Queue Service Developer Guide*.
2537
+ # * `RedrivePolicy` The string that includes the parameters for the
2538
+ # dead-letter queue functionality of the source queue as a JSON
2539
+ # object. The parameters are as follows:
1877
2540
  #
1878
- # * `deadLetterTargetArn` - The Amazon Resource Name (ARN) of the
2541
+ # * `deadLetterTargetArn` The Amazon Resource Name (ARN) of the
1879
2542
  # dead-letter queue to which Amazon SQS moves messages after the
1880
2543
  # value of `maxReceiveCount` is exceeded.
1881
2544
  #
1882
- # * `maxReceiveCount` - The number of times a message is delivered
2545
+ # * `maxReceiveCount` The number of times a message is delivered
1883
2546
  # to the source queue before being moved to the dead-letter queue.
2547
+ # Default: 10. When the `ReceiveCount` for a message exceeds the
2548
+ # `maxReceiveCount` for a queue, Amazon SQS moves the message to
2549
+ # the dead-letter-queue.
1884
2550
  #
1885
- # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
1886
- # Similarly, the dead-letter queue of a standard queue must also be
1887
- # a standard queue.
2551
+ # * `RedriveAllowPolicy` The string that includes the parameters for
2552
+ # the permissions for the dead-letter queue redrive permission and
2553
+ # which source queues can specify dead-letter queues as a JSON
2554
+ # object. The parameters are as follows:
1888
2555
  #
1889
- # </note>
2556
+ # * `redrivePermission` – The permission type that defines which
2557
+ # source queues can specify the current queue as the dead-letter
2558
+ # queue. Valid values are:
2559
+ #
2560
+ # * `allowAll` – (Default) Any source queues in this Amazon Web
2561
+ # Services account in the same Region can specify this queue as
2562
+ # the dead-letter queue.
2563
+ #
2564
+ # * `denyAll` – No source queues can specify this queue as the
2565
+ # dead-letter queue.
2566
+ #
2567
+ # * `byQueue` – Only queues specified by the `sourceQueueArns`
2568
+ # parameter can specify this queue as the dead-letter queue.
2569
+ #
2570
+ # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
2571
+ # source queues that can specify this queue as the dead-letter
2572
+ # queue and redrive messages. You can specify this parameter only
2573
+ # when the `redrivePermission` parameter is set to `byQueue`. You
2574
+ # can specify up to 10 source queue ARNs. To allow more than 10
2575
+ # source queues to specify dead-letter queues, set the
2576
+ # `redrivePermission` parameter to `allowAll`.
2577
+ #
2578
+ # <note markdown="1"> The dead-letter queue of a FIFO queue must also be a FIFO queue.
2579
+ # Similarly, the dead-letter queue of a standard queue must also be a
2580
+ # standard queue.
1890
2581
  #
1891
- # * `VisibilityTimeout` - The visibility timeout for the queue. Valid
1892
- # values: an integer from 0 to 43,200 (12 hours). The default is 30.
1893
- # For more information about the visibility timeout, see [Visibility
1894
- # Timeout][3] in the *Amazon Simple Queue Service Developer Guide*.
2582
+ # </note>
1895
2583
  #
1896
- # The following attributes apply only to [server-side-encryption][4]\:
2584
+ # The following attributes apply only to [server-side-encryption][4]:
1897
2585
  #
1898
- # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
1899
- # (CMK) for Amazon SQS or a custom CMK. For more information, see
1900
- # [Key Terms][5]. While the alias of the AWS-managed CMK for Amazon
1901
- # SQS is always `alias/aws/sqs`, the alias of a custom CMK can, for
1902
- # example, be `alias/MyAlias `. For more examples, see [KeyId][6] in
1903
- # the *AWS Key Management Service API Reference*.
2586
+ # * `KmsMasterKeyId` The ID of an Amazon Web Services managed
2587
+ # customer master key (CMK) for Amazon SQS or a custom CMK. For more
2588
+ # information, see [Key Terms][5]. While the alias of the
2589
+ # AWS-managed CMK for Amazon SQS is always `alias/aws/sqs`, the
2590
+ # alias of a custom CMK can, for example, be `alias/MyAlias `. For
2591
+ # more examples, see [KeyId][6] in the *Key Management Service API
2592
+ # Reference*.
1904
2593
  #
1905
- # * `KmsDataKeyReusePeriodSeconds` - The length of time, in seconds,
2594
+ # * `KmsDataKeyReusePeriodSeconds` The length of time, in seconds,
1906
2595
  # for which Amazon SQS can reuse a [data key][7] to encrypt or
1907
- # decrypt messages before calling AWS KMS again. An integer
1908
- # representing seconds, between 60 seconds (1 minute) and 86,400
1909
- # seconds (24 hours). The default is 300 (5 minutes). A shorter time
1910
- # period provides better security but results in more calls to KMS
1911
- # which might incur charges after Free Tier. For more information,
1912
- # see [How Does the Data Key Reuse Period Work?][8].
2596
+ # decrypt messages before calling KMS again. An integer representing
2597
+ # seconds, between 60 seconds (1 minute) and 86,400 seconds (24
2598
+ # hours). Default: 300 (5 minutes). A shorter time period provides
2599
+ # better security but results in more calls to KMS which might incur
2600
+ # charges after Free Tier. For more information, see [How Does the
2601
+ # Data Key Reuse Period Work?][8].
2602
+ #
2603
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
2604
+ # using SQS owned encryption keys. Only one server-side encryption
2605
+ # option is supported per queue (for example, [SSE-KMS][9] or
2606
+ # [SSE-SQS][10]).
1913
2607
  #
1914
2608
  # The following attribute applies only to [FIFO (first-in-first-out)
1915
- # queues][9]\:
2609
+ # queues][11]:
1916
2610
  #
1917
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
1918
- # For more information, see [Exactly-Once Processing][10] in the
1919
- # *Amazon Simple Queue Service Developer Guide*.
2611
+ # * `ContentBasedDeduplication` Enables content-based deduplication.
2612
+ # For more information, see [Exactly-once processing][12] in the
2613
+ # *Amazon SQS Developer Guide*. Note the following:
1920
2614
  #
1921
- # * Every message must have a unique `MessageDeduplicationId`,
2615
+ # * Every message must have a unique `MessageDeduplicationId`.
1922
2616
  #
1923
2617
  # * You may provide a `MessageDeduplicationId` explicitly.
1924
2618
  #
@@ -1946,33 +2640,48 @@ module Aws::SQS
1946
2640
  # `MessageDeduplicationId`, the two messages are treated as
1947
2641
  # duplicates and only one copy of the message is delivered.
1948
2642
  #
1949
- # Any other valid special request parameters (such as the following)
1950
- # are ignored:
2643
+ # The following attributes apply only to [high throughput for FIFO
2644
+ # queues][13]:
2645
+ #
2646
+ # * `DeduplicationScope` – Specifies whether message deduplication
2647
+ # occurs at the message group or queue level. Valid values are
2648
+ # `messageGroup` and `queue`.
1951
2649
  #
1952
- # * `ApproximateNumberOfMessages`
2650
+ # * `FifoThroughputLimit` – Specifies whether the FIFO queue
2651
+ # throughput quota applies to the entire queue or per message group.
2652
+ # Valid values are `perQueue` and `perMessageGroupId`. The
2653
+ # `perMessageGroupId` value is allowed only when the value for
2654
+ # `DeduplicationScope` is `messageGroup`.
1953
2655
  #
1954
- # * `ApproximateNumberOfMessagesDelayed`
2656
+ # To enable high throughput for FIFO queues, do the following:
1955
2657
  #
1956
- # * `ApproximateNumberOfMessagesNotVisible`
2658
+ # * Set `DeduplicationScope` to `messageGroup`.
1957
2659
  #
1958
- # * `CreatedTimestamp`
2660
+ # * Set `FifoThroughputLimit` to `perMessageGroupId`.
1959
2661
  #
1960
- # * `LastModifiedTimestamp`
2662
+ # If you set these attributes to anything other than the values shown
2663
+ # for enabling high throughput, normal throughput is in effect and
2664
+ # deduplication occurs as specified.
1961
2665
  #
1962
- # * `QueueArn`
2666
+ # For information on throughput quotas, see [Quotas related to
2667
+ # messages][14] in the *Amazon SQS Developer Guide*.
1963
2668
  #
1964
2669
  #
1965
2670
  #
1966
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
1967
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1968
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1969
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
1970
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
1971
- # [6]: http://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
1972
- # [7]: http://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
1973
- # [8]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
1974
- # [9]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1975
- # [10]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
2671
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
2672
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
2673
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
2674
+ # [4]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html
2675
+ # [5]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-sse-key-terms
2676
+ # [6]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
2677
+ # [7]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys
2678
+ # [8]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-server-side-encryption.html#sqs-how-does-the-data-key-reuse-period-work
2679
+ # [9]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
2680
+ # [10]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
2681
+ # [11]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
2682
+ # [12]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues-exactly-once-processing.html
2683
+ # [13]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/high-throughput-fifo.html
2684
+ # [14]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/quotas-messages.html
1976
2685
  # @return [Hash<String,String>]
1977
2686
  #
1978
2687
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/SetQueueAttributesRequest AWS API Documentation
@@ -1980,19 +2689,58 @@ module Aws::SQS
1980
2689
  class SetQueueAttributesRequest < Struct.new(
1981
2690
  :queue_url,
1982
2691
  :attributes)
2692
+ SENSITIVE = []
2693
+ include Aws::Structure
2694
+ end
2695
+
2696
+ # @!attribute [rw] source_arn
2697
+ # The ARN of the queue that contains the messages to be moved to
2698
+ # another queue. Currently, only ARNs of dead-letter queues (DLQs)
2699
+ # whose sources are other Amazon SQS queues are accepted. DLQs whose
2700
+ # sources are non-SQS queues, such as Lambda or Amazon SNS topics, are
2701
+ # not currently supported.
2702
+ # @return [String]
2703
+ #
2704
+ # @!attribute [rw] destination_arn
2705
+ # The ARN of the queue that receives the moved messages. You can use
2706
+ # this field to specify the destination queue where you would like to
2707
+ # redrive messages. If this field is left blank, the messages will be
2708
+ # redriven back to their respective original source queues.
2709
+ # @return [String]
2710
+ #
2711
+ # @!attribute [rw] max_number_of_messages_per_second
2712
+ # The number of messages to be moved per second (the message movement
2713
+ # rate). You can use this field to define a fixed message movement
2714
+ # rate. The maximum value for messages per second is 500. If this
2715
+ # field is left blank, the system will optimize the rate based on the
2716
+ # queue message backlog size, which may vary throughout the duration
2717
+ # of the message movement task.
2718
+ # @return [Integer]
2719
+ #
2720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskRequest AWS API Documentation
2721
+ #
2722
+ class StartMessageMoveTaskRequest < Struct.new(
2723
+ :source_arn,
2724
+ :destination_arn,
2725
+ :max_number_of_messages_per_second)
2726
+ SENSITIVE = []
1983
2727
  include Aws::Structure
1984
2728
  end
1985
2729
 
1986
- # @note When making an API call, you may pass TagQueueRequest
1987
- # data as a hash:
2730
+ # @!attribute [rw] task_handle
2731
+ # An identifier associated with a message movement task. You can use
2732
+ # this identifier to cancel a specified message movement task using
2733
+ # the `CancelMessageMoveTask` action.
2734
+ # @return [String]
1988
2735
  #
1989
- # {
1990
- # queue_url: "String", # required
1991
- # tags: { # required
1992
- # "TagKey" => "TagValue",
1993
- # },
1994
- # }
2736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/StartMessageMoveTaskResult AWS API Documentation
1995
2737
  #
2738
+ class StartMessageMoveTaskResult < Struct.new(
2739
+ :task_handle)
2740
+ SENSITIVE = []
2741
+ include Aws::Structure
2742
+ end
2743
+
1996
2744
  # @!attribute [rw] queue_url
1997
2745
  # The URL of the queue.
1998
2746
  # @return [String]
@@ -2006,17 +2754,36 @@ module Aws::SQS
2006
2754
  class TagQueueRequest < Struct.new(
2007
2755
  :queue_url,
2008
2756
  :tags)
2757
+ SENSITIVE = []
2009
2758
  include Aws::Structure
2010
2759
  end
2011
2760
 
2012
- # @note When making an API call, you may pass UntagQueueRequest
2013
- # data as a hash:
2761
+ # The batch request contains more entries than permissible.
2014
2762
  #
2015
- # {
2016
- # queue_url: "String", # required
2017
- # tag_keys: ["TagKey"], # required
2018
- # }
2763
+ # @!attribute [rw] message
2764
+ # @return [String]
2765
+ #
2766
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TooManyEntriesInBatchRequest AWS API Documentation
2767
+ #
2768
+ class TooManyEntriesInBatchRequest < Struct.new(
2769
+ :message)
2770
+ SENSITIVE = []
2771
+ include Aws::Structure
2772
+ end
2773
+
2774
+ # Error code 400. Unsupported operation.
2019
2775
  #
2776
+ # @!attribute [rw] message
2777
+ # @return [String]
2778
+ #
2779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UnsupportedOperation AWS API Documentation
2780
+ #
2781
+ class UnsupportedOperation < Struct.new(
2782
+ :message)
2783
+ SENSITIVE = []
2784
+ include Aws::Structure
2785
+ end
2786
+
2020
2787
  # @!attribute [rw] queue_url
2021
2788
  # The URL of the queue.
2022
2789
  # @return [String]
@@ -2030,6 +2797,7 @@ module Aws::SQS
2030
2797
  class UntagQueueRequest < Struct.new(
2031
2798
  :queue_url,
2032
2799
  :tag_keys)
2800
+ SENSITIVE = []
2033
2801
  include Aws::Structure
2034
2802
  end
2035
2803