aws-sdk-sqs 1.0.0.rc2 → 1.0.0.rc3

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,220 +1,229 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module SQS
10
- class Resource
8
+ module Aws::SQS
9
+ class Resource
11
10
 
12
- # @param options ({})
13
- # @option options [Client] :client
14
- def initialize(options = {})
15
- @client = options[:client] || Client.new(options)
16
- end
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
17
16
 
18
- # @return [Client]
19
- def client
20
- @client
21
- end
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
22
21
 
23
- # @!group Actions
22
+ # @!group Actions
24
23
 
25
- # @example Request syntax with placeholder values
26
- #
27
- # queue = sqs.create_queue({
28
- # queue_name: "String", # required
29
- # attributes: {
30
- # "All" => "String",
31
- # },
32
- # })
33
- # @param [Hash] options ({})
34
- # @option options [required, String] :queue_name
35
- # The name of the new queue. The following limits apply to this name:
36
- #
37
- # * A queue name can have up to 80 characters.
38
- #
39
- # * The following are accepted: alphanumeric chatacters, hyphens (`-`),
40
- # and underscores (`_`).
41
- #
42
- # * A FIFO queue name must end with the `.fifo` suffix.
43
- #
44
- # Queue names are case-sensitive.
45
- # @option options [Hash<String,String>] :attributes
46
- # A map of attributes with their corresponding values.
47
- #
48
- # The following lists the names, descriptions, and values of the special
49
- # request parameters that the `CreateQueue` action uses:
50
- #
51
- # * `DelaySeconds` - The number of seconds for which the delivery of all
52
- # messages in the queue is delayed. An integer from 0 to 900 (15
53
- # minutes). The default is 0 (zero).
54
- #
55
- # * `MaximumMessageSize` - The limit of how many bytes a message can
56
- # contain before Amazon SQS rejects it. An integer from 1,024 bytes (1
57
- # KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256
58
- # KiB).
59
- #
60
- # * `MessageRetentionPeriod` - The number of seconds for which Amazon
61
- # SQS retains a message. An integer representing seconds, from 60 (1
62
- # minute) to 120,9600 (14 days). The default is 345,600 (4 days).
63
- #
64
- # * `Policy` - The queue's policy. A valid AWS policy. For more
65
- # information about policy structure, see [Overview of AWS IAM
66
- # Policies][1] in the *Amazon IAM User Guide*.
67
- #
68
- # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which a
69
- # ReceiveMessage action will wait for a message to arrive. An integer
70
- # from 0 to 20 (seconds). The default is 0.
71
- #
72
- # * `RedrivePolicy` - The parameters for the dead letter queue
73
- # functionality of the source queue. For more information about the
74
- # redrive policy and dead letter queues, see [Using Amazon SQS Dead
75
- # Letter Queues][2] in the *Amazon SQS Developer Guide*.
76
- #
77
- # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
78
- # Similarly, the dead letter queue of a standard queue must also be a
79
- # standard queue.
80
- #
81
- # </note>
82
- #
83
- # * `VisibilityTimeout` - The visibility timeout for the queue. An
84
- # integer from 0 to 43200 (12 hours). The default is 30. For more
85
- # information about the visibility timeout, see [Visibility
86
- # Timeout][3] in the *Amazon SQS Developer Guide*.
87
- #
88
- # The following attributes apply only to [FIFO (first-in-first-out)
89
- # queues][4]\:
90
- #
91
- # * `FifoQueue` - Designates a queue as FIFO. You can provide this
92
- # attribute only during queue creation; you can't change it for an
93
- # existing queue. When you set this attribute, you must provide a
94
- # `MessageGroupId` explicitly.
95
- #
96
- # For more information, see [FIFO Queue Logic][5] in the *Amazon SQS
97
- # Developer Guide*.
98
- #
99
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
100
- # For more information, see [Exactly-Once Processing][6] in the
101
- # *Amazon SQS Developer Guide*.
102
- #
103
- # * Every message must have a unique `MessageDeduplicationId`,
104
- #
105
- # * You may provide a `MessageDeduplicationId` explicitly.
106
- #
107
- # * If you aren't able to provide a `MessageDeduplicationId` and
108
- # you enable `ContentBasedDeduplication` for your queue, Amazon
109
- # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
110
- # using the body of the message (but not the attributes of the
111
- # message).
112
- #
113
- # * If you don't provide a `MessageDeduplicationId` and the queue
114
- # doesn't have `ContentBasedDeduplication` set, the action fails
115
- # with an error.
116
- #
117
- # * If the queue has `ContentBasedDeduplication` set, your
118
- # `MessageDeduplicationId` overrides the generated one.
119
- #
120
- # * When `ContentBasedDeduplication` is in effect, messages with
121
- # identical content sent within the deduplication interval are
122
- # treated as duplicates and only one copy of the message is
123
- # delivered.
124
- #
125
- # * You can also use `ContentBasedDeduplication` for messages with
126
- # identical content to be treated as duplicates.
127
- #
128
- # * If you send one message with `ContentBasedDeduplication` enabled
129
- # and then another message with a `MessageDeduplicationId` that is
130
- # the same as the one generated for the first
131
- # `MessageDeduplicationId`, the two messages are treated as
132
- # duplicates and only one copy of the message is delivered.
133
- #
134
- # Any other valid special request parameters that are specified (such as
135
- # `ApproximateNumberOfMessages`, `ApproximateNumberOfMessagesDelayed`,
136
- # `ApproximateNumberOfMessagesNotVisible`, `CreatedTimestamp`,
137
- # `LastModifiedTimestamp`, and `QueueArn`) will be ignored.
138
- #
139
- #
140
- #
141
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
142
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
143
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
144
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
145
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
146
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
147
- # @return [Queue]
148
- def create_queue(options = {})
149
- resp = @client.create_queue(options)
150
- Queue.new(
151
- url: resp.data.queue_url,
152
- client: @client
153
- )
154
- end
24
+ # @example Request syntax with placeholder values
25
+ #
26
+ # queue = sqs.create_queue({
27
+ # queue_name: "String", # required
28
+ # attributes: {
29
+ # "All" => "String",
30
+ # },
31
+ # })
32
+ # @param [Hash] options ({})
33
+ # @option options [required, String] :queue_name
34
+ # The name of the new queue. The following limits apply to this name:
35
+ #
36
+ # * A queue name can have up to 80 characters.
37
+ #
38
+ # * Valid values: alphanumeric characters, hyphens (`-`), and
39
+ # underscores (`_`).
40
+ #
41
+ # * A FIFO queue name must end with the `.fifo` suffix.
42
+ #
43
+ # Queue names are case-sensitive.
44
+ # @option options [Hash<String,String>] :attributes
45
+ # A map of attributes with their corresponding values.
46
+ #
47
+ # The following lists the names, descriptions, and values of the special
48
+ # request parameters that the `CreateQueue` action uses:
49
+ #
50
+ # * `DelaySeconds` - The number of seconds for which the delivery of all
51
+ # messages in the queue is delayed. Valid values: An integer from 0 to
52
+ # 900 seconds (15 minutes). The default is 0 (zero).
53
+ #
54
+ # * `MaximumMessageSize` - The limit of how many bytes a message can
55
+ # contain before Amazon SQS rejects it. Valid values: An integer from
56
+ # 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). The default is
57
+ # 262,144 (256 KiB).
58
+ #
59
+ # * `MessageRetentionPeriod` - The number of seconds for which Amazon
60
+ # SQS retains a message. Valid values: An integer from 60 seconds (1
61
+ # minute) to 1,209,600 seconds (14 days). The default is 345,600 (4
62
+ # days).
63
+ #
64
+ # * `Policy` - The queue's policy. A valid AWS policy. For more
65
+ # information about policy structure, see [Overview of AWS IAM
66
+ # Policies][1] in the *Amazon IAM User Guide*.
67
+ #
68
+ # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which a
69
+ # ` ReceiveMessage ` action waits for a message to arrive. Valid
70
+ # values: An integer from 0 to 20 (seconds). The default is 0 (zero).
71
+ #
72
+ # * `RedrivePolicy` - The parameters for the dead letter queue
73
+ # functionality of the source queue. For more information about the
74
+ # redrive policy and dead letter queues, see [Using Amazon SQS Dead
75
+ # Letter Queues][2] in the *Amazon SQS Developer Guide*.
76
+ #
77
+ # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
78
+ # Similarly, the dead letter queue of a standard queue must also be a
79
+ # standard queue.
80
+ #
81
+ # </note>
82
+ #
83
+ # * `VisibilityTimeout` - The visibility timeout for the queue. Valid
84
+ # values: An integer from 0 to 43,200 (12 hours). The default is 30.
85
+ # For more information about the visibility timeout, see [Visibility
86
+ # Timeout][3] in the *Amazon SQS Developer Guide*.
87
+ #
88
+ # The following attributes apply only to [FIFO (first-in-first-out)
89
+ # queues][4]\:
90
+ #
91
+ # * `FifoQueue` - Designates a queue as FIFO. You can provide this
92
+ # attribute only during queue creation. You can't change it for an
93
+ # existing queue. When you set this attribute, you must provide a
94
+ # `MessageGroupId` explicitly.
95
+ #
96
+ # For more information, see [FIFO Queue Logic][5] in the *Amazon SQS
97
+ # Developer Guide*.
98
+ #
99
+ # * `ContentBasedDeduplication` - Enables content-based deduplication.
100
+ # For more information, see [Exactly-Once Processing][6] in the
101
+ # *Amazon SQS Developer Guide*.
102
+ #
103
+ # * Every message must have a unique `MessageDeduplicationId`,
104
+ #
105
+ # * You may provide a `MessageDeduplicationId` explicitly.
106
+ #
107
+ # * If you aren't able to provide a `MessageDeduplicationId` and
108
+ # you enable `ContentBasedDeduplication` for your queue, Amazon
109
+ # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
110
+ # using the body of the message (but not the attributes of the
111
+ # message).
112
+ #
113
+ # * If you don't provide a `MessageDeduplicationId` and the queue
114
+ # doesn't have `ContentBasedDeduplication` set, the action fails
115
+ # with an error.
116
+ #
117
+ # * If the queue has `ContentBasedDeduplication` set, your
118
+ # `MessageDeduplicationId` overrides the generated one.
119
+ #
120
+ # * When `ContentBasedDeduplication` is in effect, messages with
121
+ # identical content sent within the deduplication interval are
122
+ # treated as duplicates and only one copy of the message is
123
+ # delivered.
124
+ #
125
+ # * You can also use `ContentBasedDeduplication` for messages with
126
+ # identical content to be treated as duplicates.
127
+ #
128
+ # * If you send one message with `ContentBasedDeduplication` enabled
129
+ # and then another message with a `MessageDeduplicationId` that is
130
+ # the same as the one generated for the first
131
+ # `MessageDeduplicationId`, the two messages are treated as
132
+ # duplicates and only one copy of the message is delivered.
133
+ #
134
+ # Any other valid special request parameters (such as the following) are
135
+ # ignored:
136
+ #
137
+ # * `ApproximateNumberOfMessages`
138
+ #
139
+ # * `ApproximateNumberOfMessagesDelayed`
140
+ #
141
+ # * `ApproximateNumberOfMessagesNotVisible`
142
+ #
143
+ # * `CreatedTimestamp`
144
+ #
145
+ # * `LastModifiedTimestamp`
146
+ #
147
+ # * `QueueArn`
148
+ #
149
+ #
150
+ #
151
+ # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
152
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
153
+ # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
154
+ # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
155
+ # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
156
+ # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
157
+ # @return [Queue]
158
+ def create_queue(options = {})
159
+ resp = @client.create_queue(options)
160
+ Queue.new(
161
+ url: resp.data.queue_url,
162
+ client: @client
163
+ )
164
+ end
155
165
 
156
- # @example Request syntax with placeholder values
157
- #
158
- # queue = sqs.get_queue_by_name({
159
- # queue_name: "String", # required
160
- # queue_owner_aws_account_id: "String",
161
- # })
162
- # @param [Hash] options ({})
163
- # @option options [required, String] :queue_name
164
- # The name of the queue whose URL must be fetched. Maximum 80
165
- # characters; alphanumeric characters, hyphens (-), and underscores (\_)
166
- # are allowed.
167
- #
168
- # Queue names are case-sensitive.
169
- # @option options [String] :queue_owner_aws_account_id
170
- # The AWS account ID of the account that created the queue.
171
- # @return [Queue]
172
- def get_queue_by_name(options = {})
173
- resp = @client.get_queue_url(options)
174
- Queue.new(
175
- url: resp.data.queue_url,
176
- client: @client
177
- )
178
- end
166
+ # @example Request syntax with placeholder values
167
+ #
168
+ # queue = sqs.get_queue_by_name({
169
+ # queue_name: "String", # required
170
+ # queue_owner_aws_account_id: "String",
171
+ # })
172
+ # @param [Hash] options ({})
173
+ # @option options [required, String] :queue_name
174
+ # The name of the queue whose URL must be fetched. Maximum 80
175
+ # characters. Valid values: alphanumeric characters, hyphens (`-`), and
176
+ # underscores (`_`).
177
+ #
178
+ # Queue names are case-sensitive.
179
+ # @option options [String] :queue_owner_aws_account_id
180
+ # The AWS account ID of the account that created the queue.
181
+ # @return [Queue]
182
+ def get_queue_by_name(options = {})
183
+ resp = @client.get_queue_url(options)
184
+ Queue.new(
185
+ url: resp.data.queue_url,
186
+ client: @client
187
+ )
188
+ end
179
189
 
180
- # @!group Associations
190
+ # @!group Associations
181
191
 
182
- # @param [String] url
183
- # @return [Queue]
184
- def queue(url)
185
- Queue.new(
186
- url: url,
187
- client: @client
188
- )
189
- end
192
+ # @param [String] url
193
+ # @return [Queue]
194
+ def queue(url)
195
+ Queue.new(
196
+ url: url,
197
+ client: @client
198
+ )
199
+ end
190
200
 
191
- # @example Request syntax with placeholder values
192
- #
193
- # queues = sqs.queues({
194
- # queue_name_prefix: "String",
195
- # })
196
- # @param [Hash] options ({})
197
- # @option options [String] :queue_name_prefix
198
- # A string to use for filtering the list results. Only those queues
199
- # whose name begins with the specified string are returned.
200
- #
201
- # Queue names are case-sensitive.
202
- # @return [Queue::Collection]
203
- def queues(options = {})
204
- batches = Enumerator.new do |y|
205
- batch = []
206
- resp = @client.list_queues(options)
207
- resp.data.queue_urls.each do |q|
208
- batch << Queue.new(
209
- url: q,
210
- client: @client
211
- )
212
- end
213
- y.yield(batch)
201
+ # @example Request syntax with placeholder values
202
+ #
203
+ # queues = sqs.queues({
204
+ # queue_name_prefix: "String",
205
+ # })
206
+ # @param [Hash] options ({})
207
+ # @option options [String] :queue_name_prefix
208
+ # A string to use for filtering the list results. Only those queues
209
+ # whose name begins with the specified string are returned.
210
+ #
211
+ # Queue names are case-sensitive.
212
+ # @return [Queue::Collection]
213
+ def queues(options = {})
214
+ batches = Enumerator.new do |y|
215
+ batch = []
216
+ resp = @client.list_queues(options)
217
+ resp.data.queue_urls.each do |q|
218
+ batch << Queue.new(
219
+ url: q,
220
+ client: @client
221
+ )
214
222
  end
215
- Queue::Collection.new(batches)
223
+ y.yield(batch)
216
224
  end
217
-
225
+ Queue::Collection.new(batches)
218
226
  end
227
+
219
228
  end
220
229
  end
@@ -1,1642 +1,1798 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module SQS
10
- module Types
8
+ module Aws::SQS
9
+ module Types
11
10
 
12
- # @note When making an API call, pass AddPermissionRequest
13
- # data as a hash:
14
- #
15
- # {
16
- # queue_url: "String", # required
17
- # label: "String", # required
18
- # aws_account_ids: ["String"], # required
19
- # actions: ["String"], # required
20
- # }
21
- # @!attribute [rw] queue_url
22
- # The URL of the Amazon SQS queue to take action on.
23
- #
24
- # Queue URLs are case-sensitive.
25
- # @return [String]
26
- #
27
- # @!attribute [rw] label
28
- # The unique identification of the permission you're setting (e.g.,
29
- # `AliceSendMessage`). Constraints: Maximum 80 characters;
30
- # alphanumeric characters, hyphens (-), and underscores (\_) are
31
- # allowed.
32
- # @return [String]
33
- #
34
- # @!attribute [rw] aws_account_ids
35
- # The AWS account number of the [principal][1] who will be 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 SQS Developer Guide*.
40
- #
41
- #
42
- #
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
45
- # @return [Array<String>]
46
- #
47
- # @!attribute [rw] actions
48
- # The action the client wants to allow for the specified principal.
49
- # The following are valid values: `* | SendMessage | ReceiveMessage |
50
- # DeleteMessage | ChangeMessageVisibility | GetQueueAttributes |
51
- # GetQueueUrl`. For more information about these actions, see
52
- # [Understanding Permissions][1] in the *Amazon SQS Developer Guide*.
53
- #
54
- # Specifying `SendMessage`, `DeleteMessage`, or
55
- # `ChangeMessageVisibility` for the `ActionName.n` also grants
56
- # permissions for the corresponding batch versions of those actions:
57
- # `SendMessageBatch`, `DeleteMessageBatch`, and
58
- # `ChangeMessageVisibilityBatch`.
59
- #
60
- #
61
- #
62
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes
63
- # @return [Array<String>]
64
- class AddPermissionRequest < Struct.new(
65
- :queue_url,
66
- :label,
67
- :aws_account_ids,
68
- :actions)
69
- include Aws::Structure
70
- end
71
-
72
- # This is used in the responses of batch API to give a detailed
73
- # description of the result of an action on each entry in the request.
74
- # @!attribute [rw] id
75
- # The id of an entry in a batch request.
76
- # @return [String]
77
- #
78
- # @!attribute [rw] sender_fault
79
- # Whether the error happened due to the sender's fault.
80
- # @return [Boolean]
81
- #
82
- # @!attribute [rw] code
83
- # An error code representing why the action failed on this entry.
84
- # @return [String]
85
- #
86
- # @!attribute [rw] message
87
- # A message explaining why the action failed on this entry.
88
- # @return [String]
89
- class BatchResultErrorEntry < Struct.new(
90
- :id,
91
- :sender_fault,
92
- :code,
93
- :message)
94
- include Aws::Structure
95
- end
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
+ # @!attribute [rw] queue_url
22
+ # The URL of the Amazon SQS queue to which permissions are added.
23
+ #
24
+ # Queue URLs are case-sensitive.
25
+ # @return [String]
26
+ #
27
+ # @!attribute [rw] label
28
+ # The unique identification of the permission you're setting (for
29
+ # example, `AliceSendMessage`). Maximum 80 characters. Allowed
30
+ # characters include alphanumeric characters, hyphens (`-`), and
31
+ # underscores (`_`).
32
+ # @return [String]
33
+ #
34
+ # @!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 SQS Developer Guide*.
40
+ #
41
+ #
42
+ #
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
45
+ # @return [Array<String>]
46
+ #
47
+ # @!attribute [rw] actions
48
+ # The action the client wants to allow for the specified principal.
49
+ # The following values are valid:
50
+ #
51
+ # * `*`
52
+ #
53
+ # * `ChangeMessageVisibility`
54
+ #
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 SQS Developer Guide*.
67
+ #
68
+ # Specifying `SendMessage`, `DeleteMessage`, or
69
+ # `ChangeMessageVisibility` for `ActionName.n` also grants permissions
70
+ # for the corresponding batch versions of those actions:
71
+ # `SendMessageBatch`, `DeleteMessageBatch`, and
72
+ # `ChangeMessageVisibilityBatch`.
73
+ #
74
+ #
75
+ #
76
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/acp-overview.html#PermissionTypes
77
+ # @return [Array<String>]
78
+ #
79
+ class AddPermissionRequest < Struct.new(
80
+ :queue_url,
81
+ :label,
82
+ :aws_account_ids,
83
+ :actions)
84
+ include Aws::Structure
85
+ end
96
86
 
97
- # @note When making an API call, pass ChangeMessageVisibilityBatchRequest
98
- # data as a hash:
99
- #
100
- # {
101
- # queue_url: "String", # required
102
- # entries: [ # required
103
- # {
104
- # id: "String", # required
105
- # receipt_handle: "String", # required
106
- # visibility_timeout: 1,
107
- # },
108
- # ],
109
- # }
110
- # @!attribute [rw] queue_url
111
- # The URL of the Amazon SQS queue to take action on.
112
- #
113
- # Queue URLs are case-sensitive.
114
- # @return [String]
115
- #
116
- # @!attribute [rw] entries
117
- # A list of receipt handles of the messages for which the visibility
118
- # timeout must be changed.
119
- # @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
120
- class ChangeMessageVisibilityBatchRequest < Struct.new(
121
- :queue_url,
122
- :entries)
123
- include Aws::Structure
124
- end
87
+ # This is used in the responses of batch API to give a detailed
88
+ # description of the result of an action on each entry in the request.
89
+ #
90
+ # @!attribute [rw] id
91
+ # The `Id` of an entry in a batch request.
92
+ # @return [String]
93
+ #
94
+ # @!attribute [rw] sender_fault
95
+ # Specifies whether the error happened due to the sender's fault.
96
+ # @return [Boolean]
97
+ #
98
+ # @!attribute [rw] code
99
+ # An error code representing why the action failed on this entry.
100
+ # @return [String]
101
+ #
102
+ # @!attribute [rw] message
103
+ # A message explaining why the action failed on this entry.
104
+ # @return [String]
105
+ #
106
+ class BatchResultErrorEntry < Struct.new(
107
+ :id,
108
+ :sender_fault,
109
+ :code,
110
+ :message)
111
+ include Aws::Structure
112
+ end
125
113
 
126
- # Encloses a receipt handle and an entry id for each message in
127
- # ChangeMessageVisibilityBatch.
128
- #
129
- # All of the following parameters are list parameters that must be
130
- # prefixed with `ChangeMessageVisibilityBatchRequestEntry.n`, where `n`
131
- # is an integer value starting with 1. For example, a parameter list for
132
- # this action might look like this:
133
- #
134
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
135
- #
136
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=<replaceable>Your_Receipt_Handle</replaceable>`
137
- #
138
- # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
139
- # @note When making an API call, pass ChangeMessageVisibilityBatchRequestEntry
140
- # data as a hash:
141
- #
142
- # {
143
- # id: "String", # required
144
- # receipt_handle: "String", # required
145
- # visibility_timeout: 1,
146
- # }
147
- # @!attribute [rw] id
148
- # An identifier for this particular receipt handle. This is used to
149
- # communicate the result. Note that the `Id`s of a batch request need
150
- # to be unique within the request.
151
- # @return [String]
152
- #
153
- # @!attribute [rw] receipt_handle
154
- # A receipt handle.
155
- # @return [String]
156
- #
157
- # @!attribute [rw] visibility_timeout
158
- # The new value (in seconds) for the message's visibility timeout.
159
- # @return [Integer]
160
- class ChangeMessageVisibilityBatchRequestEntry < Struct.new(
161
- :id,
162
- :receipt_handle,
163
- :visibility_timeout)
164
- include Aws::Structure
165
- end
114
+ # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequest
115
+ # data as a hash:
116
+ #
117
+ # {
118
+ # queue_url: "String", # required
119
+ # entries: [ # required
120
+ # {
121
+ # id: "String", # required
122
+ # receipt_handle: "String", # required
123
+ # visibility_timeout: 1,
124
+ # },
125
+ # ],
126
+ # }
127
+ #
128
+ # @!attribute [rw] queue_url
129
+ # The URL of the Amazon SQS queue whose messages' visibility is
130
+ # changed.
131
+ #
132
+ # Queue URLs are case-sensitive.
133
+ # @return [String]
134
+ #
135
+ # @!attribute [rw] entries
136
+ # A list of receipt handles of the messages for which the visibility
137
+ # timeout must be changed.
138
+ # @return [Array<Types::ChangeMessageVisibilityBatchRequestEntry>]
139
+ #
140
+ class ChangeMessageVisibilityBatchRequest < Struct.new(
141
+ :queue_url,
142
+ :entries)
143
+ include Aws::Structure
144
+ end
166
145
 
167
- # For each message in the batch, the response contains a
168
- # ChangeMessageVisibilityBatchResultEntry tag if the message succeeds or
169
- # a BatchResultErrorEntry tag if the message fails.
170
- # @!attribute [rw] successful
171
- # A list of ChangeMessageVisibilityBatchResultEntry items.
172
- # @return [Array<Types::ChangeMessageVisibilityBatchResultEntry>]
173
- #
174
- # @!attribute [rw] failed
175
- # A list of BatchResultErrorEntry items.
176
- # @return [Array<Types::BatchResultErrorEntry>]
177
- class ChangeMessageVisibilityBatchResult < Struct.new(
178
- :successful,
179
- :failed)
180
- include Aws::Structure
181
- end
146
+ # Encloses a receipt handle and an entry id for each message in `
147
+ # ChangeMessageVisibilityBatch `.
148
+ #
149
+ # All of the following list parameters must be prefixed with
150
+ # `ChangeMessageVisibilityBatchRequestEntry.n`, where `n` is an integer
151
+ # value starting with `1`. For example, a parameter list for this action
152
+ # might look like this:
153
+ #
154
+ # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2`
155
+ #
156
+ # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=<replaceable>Your_Receipt_Handle</replaceable>`
157
+ #
158
+ # `&amp;ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45`
159
+ #
160
+ # @note When making an API call, you may pass ChangeMessageVisibilityBatchRequestEntry
161
+ # data as a hash:
162
+ #
163
+ # {
164
+ # id: "String", # required
165
+ # receipt_handle: "String", # required
166
+ # visibility_timeout: 1,
167
+ # }
168
+ #
169
+ # @!attribute [rw] id
170
+ # An identifier for this particular receipt handle used to communicate
171
+ # the result.
172
+ #
173
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
174
+ #
175
+ # </note>
176
+ # @return [String]
177
+ #
178
+ # @!attribute [rw] receipt_handle
179
+ # A receipt handle.
180
+ # @return [String]
181
+ #
182
+ # @!attribute [rw] visibility_timeout
183
+ # The new value (in seconds) for the message's visibility timeout.
184
+ # @return [Integer]
185
+ #
186
+ class ChangeMessageVisibilityBatchRequestEntry < Struct.new(
187
+ :id,
188
+ :receipt_handle,
189
+ :visibility_timeout)
190
+ include Aws::Structure
191
+ end
182
192
 
183
- # Encloses the id of an entry in ChangeMessageVisibilityBatch.
184
- # @!attribute [rw] id
185
- # Represents a message whose visibility timeout has been changed
186
- # successfully.
187
- # @return [String]
188
- class ChangeMessageVisibilityBatchResultEntry < Struct.new(
189
- :id)
190
- include Aws::Structure
191
- end
193
+ # For each message in the batch, the response contains a `
194
+ # ChangeMessageVisibilityBatchResultEntry ` tag if the message succeeds
195
+ # or a ` BatchResultErrorEntry ` tag if the message fails.
196
+ #
197
+ # @!attribute [rw] successful
198
+ # A list of ` ChangeMessageVisibilityBatchResultEntry ` items.
199
+ # @return [Array<Types::ChangeMessageVisibilityBatchResultEntry>]
200
+ #
201
+ # @!attribute [rw] failed
202
+ # A list of ` BatchResultErrorEntry ` items.
203
+ # @return [Array<Types::BatchResultErrorEntry>]
204
+ #
205
+ class ChangeMessageVisibilityBatchResult < Struct.new(
206
+ :successful,
207
+ :failed)
208
+ include Aws::Structure
209
+ end
192
210
 
193
- # @note When making an API call, pass ChangeMessageVisibilityRequest
194
- # data as a hash:
195
- #
196
- # {
197
- # queue_url: "String", # required
198
- # receipt_handle: "String", # required
199
- # visibility_timeout: 1, # required
200
- # }
201
- # @!attribute [rw] queue_url
202
- # The URL of the Amazon SQS queue to take action on.
203
- #
204
- # Queue URLs are case-sensitive.
205
- # @return [String]
206
- #
207
- # @!attribute [rw] receipt_handle
208
- # The receipt handle associated with the message whose visibility
209
- # timeout should be changed. This parameter is returned by the
210
- # ReceiveMessage action.
211
- # @return [String]
212
- #
213
- # @!attribute [rw] visibility_timeout
214
- # The new value (in seconds - from 0 to 43200 - maximum 12 hours) for
215
- # the message's visibility timeout.
216
- # @return [Integer]
217
- class ChangeMessageVisibilityRequest < Struct.new(
218
- :queue_url,
219
- :receipt_handle,
220
- :visibility_timeout)
221
- include Aws::Structure
222
- end
211
+ # Encloses the `Id` of an entry in ` ChangeMessageVisibilityBatch `.
212
+ #
213
+ # @!attribute [rw] id
214
+ # Represents a message whose visibility timeout has been changed
215
+ # successfully.
216
+ # @return [String]
217
+ #
218
+ class ChangeMessageVisibilityBatchResultEntry < Struct.new(
219
+ :id)
220
+ include Aws::Structure
221
+ end
223
222
 
224
- # @note When making an API call, pass CreateQueueRequest
225
- # data as a hash:
226
- #
227
- # {
228
- # queue_name: "String", # required
229
- # attributes: {
230
- # "All" => "String",
231
- # },
232
- # }
233
- # @!attribute [rw] queue_name
234
- # The name of the new queue. The following limits apply to this name:
235
- #
236
- # * A queue name can have up to 80 characters.
237
- #
238
- # * The following are accepted: alphanumeric chatacters, hyphens
239
- # (`-`), and underscores (`_`).
240
- #
241
- # * A FIFO queue name must end with the `.fifo` suffix.
242
- #
243
- # Queue names are case-sensitive.
244
- # @return [String]
245
- #
246
- # @!attribute [rw] attributes
247
- # A map of attributes with their corresponding values.
248
- #
249
- # The following lists the names, descriptions, and values of the
250
- # special request parameters that the `CreateQueue` action uses:
251
- #
252
- # * `DelaySeconds` - The number of seconds for which the delivery of
253
- # all messages in the queue is delayed. An integer from 0 to 900 (15
254
- # minutes). The default is 0 (zero).
255
- #
256
- # * `MaximumMessageSize` - The limit of how many bytes a message can
257
- # contain before Amazon SQS rejects it. An integer from 1,024 bytes
258
- # (1 KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256
259
- # KiB).
260
- #
261
- # * `MessageRetentionPeriod` - The number of seconds for which Amazon
262
- # SQS retains a message. An integer representing seconds, from 60 (1
263
- # minute) to 120,9600 (14 days). The default is 345,600 (4 days).
264
- #
265
- # * `Policy` - The queue's policy. A valid AWS policy. For more
266
- # information about policy structure, see [Overview of AWS IAM
267
- # Policies][1] in the *Amazon IAM User Guide*.
268
- #
269
- # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
270
- # a ReceiveMessage action will wait for a message to arrive. An
271
- # integer from 0 to 20 (seconds). The default is 0.
272
- #
273
- # * `RedrivePolicy` - The parameters for the dead letter queue
274
- # functionality of the source queue. For more information about the
275
- # redrive policy and dead letter queues, see [Using Amazon SQS Dead
276
- # Letter Queues][2] in the *Amazon SQS Developer Guide*.
277
- #
278
- # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
279
- # Similarly, the dead letter queue of a standard queue must also be
280
- # a standard queue.
281
- #
282
- # </note>
283
- #
284
- # * `VisibilityTimeout` - The visibility timeout for the queue. An
285
- # integer from 0 to 43200 (12 hours). The default is 30. For more
286
- # information about the visibility timeout, see [Visibility
287
- # Timeout][3] in the *Amazon SQS Developer Guide*.
288
- #
289
- # The following attributes apply only to [FIFO (first-in-first-out)
290
- # queues][4]\:
291
- #
292
- # * `FifoQueue` - Designates a queue as FIFO. You can provide this
293
- # attribute only during queue creation; you can't change it for an
294
- # existing queue. When you set this attribute, you must provide a
295
- # `MessageGroupId` explicitly.
296
- #
297
- # For more information, see [FIFO Queue Logic][5] in the *Amazon SQS
298
- # Developer Guide*.
299
- #
300
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
301
- # For more information, see [Exactly-Once Processing][6] in the
302
- # *Amazon SQS Developer Guide*.
303
- #
304
- # * Every message must have a unique `MessageDeduplicationId`,
305
- #
306
- # * You may provide a `MessageDeduplicationId` explicitly.
307
- #
308
- # * If you aren't able to provide a `MessageDeduplicationId` and
309
- # you enable `ContentBasedDeduplication` for your queue, Amazon
310
- # SQS uses a SHA-256 hash to generate the
311
- # `MessageDeduplicationId` using the body of the message (but
312
- # not the attributes of the message).
313
- #
314
- # * If you don't provide a `MessageDeduplicationId` and the queue
315
- # doesn't have `ContentBasedDeduplication` set, the action
316
- # fails with an error.
317
- #
318
- # * If the queue has `ContentBasedDeduplication` set, your
319
- # `MessageDeduplicationId` overrides the generated one.
320
- #
321
- # * When `ContentBasedDeduplication` is in effect, messages with
322
- # identical content sent within the deduplication interval are
323
- # treated as duplicates and only one copy of the message is
324
- # delivered.
325
- #
326
- # * You can also use `ContentBasedDeduplication` for messages with
327
- # identical content to be treated as duplicates.
328
- #
329
- # * If you send one message with `ContentBasedDeduplication` enabled
330
- # and then another message with a `MessageDeduplicationId` that is
331
- # the same as the one generated for the first
332
- # `MessageDeduplicationId`, the two messages are treated as
333
- # duplicates and only one copy of the message is delivered.
334
- #
335
- # Any other valid special request parameters that are specified (such
336
- # as `ApproximateNumberOfMessages`,
337
- # `ApproximateNumberOfMessagesDelayed`,
338
- # `ApproximateNumberOfMessagesNotVisible`, `CreatedTimestamp`,
339
- # `LastModifiedTimestamp`, and `QueueArn`) will be ignored.
340
- #
341
- #
342
- #
343
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
344
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
345
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
346
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
347
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
348
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
349
- # @return [Hash<String,String>]
350
- class CreateQueueRequest < Struct.new(
351
- :queue_name,
352
- :attributes)
353
- include Aws::Structure
354
- end
223
+ # @note When making an API call, you may pass ChangeMessageVisibilityRequest
224
+ # data as a hash:
225
+ #
226
+ # {
227
+ # queue_url: "String", # required
228
+ # receipt_handle: "String", # required
229
+ # visibility_timeout: 1, # required
230
+ # }
231
+ #
232
+ # @!attribute [rw] queue_url
233
+ # The URL of the Amazon SQS queue whose message's visibility is
234
+ # changed.
235
+ #
236
+ # Queue URLs are case-sensitive.
237
+ # @return [String]
238
+ #
239
+ # @!attribute [rw] receipt_handle
240
+ # The receipt handle associated with the message whose visibility
241
+ # timeout is changed. This parameter is returned by the `
242
+ # ReceiveMessage ` action.
243
+ # @return [String]
244
+ #
245
+ # @!attribute [rw] visibility_timeout
246
+ # The new value for the message's visibility timeout (in seconds).
247
+ # Values values: `0` to `43200`. Maximum: 12 hours.
248
+ # @return [Integer]
249
+ #
250
+ class ChangeMessageVisibilityRequest < Struct.new(
251
+ :queue_url,
252
+ :receipt_handle,
253
+ :visibility_timeout)
254
+ include Aws::Structure
255
+ end
355
256
 
356
- # Returns the QueueUrl element of the created queue.
357
- # @!attribute [rw] queue_url
358
- # The URL for the created Amazon SQS queue.
359
- # @return [String]
360
- class CreateQueueResult < Struct.new(
361
- :queue_url)
362
- include Aws::Structure
363
- end
257
+ # @note When making an API call, you may pass CreateQueueRequest
258
+ # data as a hash:
259
+ #
260
+ # {
261
+ # queue_name: "String", # required
262
+ # attributes: {
263
+ # "All" => "String",
264
+ # },
265
+ # }
266
+ #
267
+ # @!attribute [rw] queue_name
268
+ # The name of the new queue. The following limits apply to this name:
269
+ #
270
+ # * A queue name can have up to 80 characters.
271
+ #
272
+ # * Valid values: alphanumeric characters, hyphens (`-`), and
273
+ # underscores (`_`).
274
+ #
275
+ # * A FIFO queue name must end with the `.fifo` suffix.
276
+ #
277
+ # Queue names are case-sensitive.
278
+ # @return [String]
279
+ #
280
+ # @!attribute [rw] attributes
281
+ # A map of attributes with their corresponding values.
282
+ #
283
+ # The following lists the names, descriptions, and values of the
284
+ # special request parameters that the `CreateQueue` action uses:
285
+ #
286
+ # * `DelaySeconds` - The number of seconds for which the delivery of
287
+ # all messages in the queue is delayed. Valid values: An integer
288
+ # from 0 to 900 seconds (15 minutes). The default is 0 (zero).
289
+ #
290
+ # * `MaximumMessageSize` - The limit of how many bytes a message can
291
+ # contain before Amazon SQS rejects it. Valid values: An integer
292
+ # from 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). The default
293
+ # is 262,144 (256 KiB).
294
+ #
295
+ # * `MessageRetentionPeriod` - The number of seconds for which Amazon
296
+ # SQS retains a message. Valid values: An integer from 60 seconds (1
297
+ # minute) to 1,209,600 seconds (14 days). The default is 345,600 (4
298
+ # days).
299
+ #
300
+ # * `Policy` - The queue's policy. A valid AWS policy. For more
301
+ # information about policy structure, see [Overview of AWS IAM
302
+ # Policies][1] in the *Amazon IAM User Guide*.
303
+ #
304
+ # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
305
+ # a ` ReceiveMessage ` action waits for a message to arrive. Valid
306
+ # values: An integer from 0 to 20 (seconds). The default is 0
307
+ # (zero).
308
+ #
309
+ # * `RedrivePolicy` - The parameters for the dead letter queue
310
+ # functionality of the source queue. For more information about the
311
+ # redrive policy and dead letter queues, see [Using Amazon SQS Dead
312
+ # Letter Queues][2] in the *Amazon SQS Developer Guide*.
313
+ #
314
+ # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
315
+ # Similarly, the dead letter queue of a standard queue must also be
316
+ # a standard queue.
317
+ #
318
+ # </note>
319
+ #
320
+ # * `VisibilityTimeout` - The visibility timeout for the queue. Valid
321
+ # values: An integer from 0 to 43,200 (12 hours). The default is 30.
322
+ # For more information about the visibility timeout, see [Visibility
323
+ # Timeout][3] in the *Amazon SQS Developer Guide*.
324
+ #
325
+ # The following attributes apply only to [FIFO (first-in-first-out)
326
+ # queues][4]\:
327
+ #
328
+ # * `FifoQueue` - Designates a queue as FIFO. You can provide this
329
+ # attribute only during queue creation. You can't change it for an
330
+ # existing queue. When you set this attribute, you must provide a
331
+ # `MessageGroupId` explicitly.
332
+ #
333
+ # For more information, see [FIFO Queue Logic][5] in the *Amazon SQS
334
+ # Developer Guide*.
335
+ #
336
+ # * `ContentBasedDeduplication` - Enables content-based deduplication.
337
+ # For more information, see [Exactly-Once Processing][6] in the
338
+ # *Amazon SQS Developer Guide*.
339
+ #
340
+ # * Every message must have a unique `MessageDeduplicationId`,
341
+ #
342
+ # * You may provide a `MessageDeduplicationId` explicitly.
343
+ #
344
+ # * If you aren't able to provide a `MessageDeduplicationId` and
345
+ # you enable `ContentBasedDeduplication` for your queue, Amazon
346
+ # SQS uses a SHA-256 hash to generate the
347
+ # `MessageDeduplicationId` using the body of the message (but
348
+ # not the attributes of the message).
349
+ #
350
+ # * If you don't provide a `MessageDeduplicationId` and the queue
351
+ # doesn't have `ContentBasedDeduplication` set, the action
352
+ # fails with an error.
353
+ #
354
+ # * If the queue has `ContentBasedDeduplication` set, your
355
+ # `MessageDeduplicationId` overrides the generated one.
356
+ #
357
+ # * When `ContentBasedDeduplication` is in effect, messages with
358
+ # identical content sent within the deduplication interval are
359
+ # treated as duplicates and only one copy of the message is
360
+ # delivered.
361
+ #
362
+ # * You can also use `ContentBasedDeduplication` for messages with
363
+ # identical content to be treated as duplicates.
364
+ #
365
+ # * If you send one message with `ContentBasedDeduplication` enabled
366
+ # and then another message with a `MessageDeduplicationId` that is
367
+ # the same as the one generated for the first
368
+ # `MessageDeduplicationId`, the two messages are treated as
369
+ # duplicates and only one copy of the message is delivered.
370
+ #
371
+ # Any other valid special request parameters (such as the following)
372
+ # are ignored:
373
+ #
374
+ # * `ApproximateNumberOfMessages`
375
+ #
376
+ # * `ApproximateNumberOfMessagesDelayed`
377
+ #
378
+ # * `ApproximateNumberOfMessagesNotVisible`
379
+ #
380
+ # * `CreatedTimestamp`
381
+ #
382
+ # * `LastModifiedTimestamp`
383
+ #
384
+ # * `QueueArn`
385
+ #
386
+ #
387
+ #
388
+ # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
389
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
390
+ # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
391
+ # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
392
+ # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
393
+ # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
394
+ # @return [Hash<String,String>]
395
+ #
396
+ class CreateQueueRequest < Struct.new(
397
+ :queue_name,
398
+ :attributes)
399
+ include Aws::Structure
400
+ end
364
401
 
365
- # @note When making an API call, pass DeleteMessageBatchRequest
366
- # data as a hash:
367
- #
368
- # {
369
- # queue_url: "String", # required
370
- # entries: [ # required
371
- # {
372
- # id: "String", # required
373
- # receipt_handle: "String", # required
374
- # },
375
- # ],
376
- # }
377
- # @!attribute [rw] queue_url
378
- # The URL of the Amazon SQS queue to take action on.
379
- #
380
- # Queue URLs are case-sensitive.
381
- # @return [String]
382
- #
383
- # @!attribute [rw] entries
384
- # A list of receipt handles for the messages to be deleted.
385
- # @return [Array<Types::DeleteMessageBatchRequestEntry>]
386
- class DeleteMessageBatchRequest < Struct.new(
387
- :queue_url,
388
- :entries)
389
- include Aws::Structure
390
- end
402
+ # Returns the `QueueUrl` attribute of the created queue.
403
+ #
404
+ # @!attribute [rw] queue_url
405
+ # The URL of the created Amazon SQS queue.
406
+ # @return [String]
407
+ #
408
+ class CreateQueueResult < Struct.new(
409
+ :queue_url)
410
+ include Aws::Structure
411
+ end
391
412
 
392
- # Encloses a receipt handle and an identifier for it.
393
- # @note When making an API call, pass DeleteMessageBatchRequestEntry
394
- # data as a hash:
395
- #
396
- # {
397
- # id: "String", # required
398
- # receipt_handle: "String", # required
399
- # }
400
- # @!attribute [rw] id
401
- # An identifier for this particular receipt handle. This is used to
402
- # communicate the result. Note that the `Id`s of a batch request need
403
- # to be unique within the request.
404
- # @return [String]
405
- #
406
- # @!attribute [rw] receipt_handle
407
- # A receipt handle.
408
- # @return [String]
409
- class DeleteMessageBatchRequestEntry < Struct.new(
410
- :id,
411
- :receipt_handle)
412
- include Aws::Structure
413
- end
413
+ # @note When making an API call, you may pass DeleteMessageBatchRequest
414
+ # data as a hash:
415
+ #
416
+ # {
417
+ # queue_url: "String", # required
418
+ # entries: [ # required
419
+ # {
420
+ # id: "String", # required
421
+ # receipt_handle: "String", # required
422
+ # },
423
+ # ],
424
+ # }
425
+ #
426
+ # @!attribute [rw] queue_url
427
+ # The URL of the Amazon SQS queue from which messages are deleted.
428
+ #
429
+ # Queue URLs are case-sensitive.
430
+ # @return [String]
431
+ #
432
+ # @!attribute [rw] entries
433
+ # A list of receipt handles for the messages to be deleted.
434
+ # @return [Array<Types::DeleteMessageBatchRequestEntry>]
435
+ #
436
+ class DeleteMessageBatchRequest < Struct.new(
437
+ :queue_url,
438
+ :entries)
439
+ include Aws::Structure
440
+ end
414
441
 
415
- # For each message in the batch, the response contains a
416
- # DeleteMessageBatchResultEntry tag if the message is deleted or a
417
- # BatchResultErrorEntry tag if the message can't be deleted.
418
- # @!attribute [rw] successful
419
- # A list of DeleteMessageBatchResultEntry items.
420
- # @return [Array<Types::DeleteMessageBatchResultEntry>]
421
- #
422
- # @!attribute [rw] failed
423
- # A list of BatchResultErrorEntry items.
424
- # @return [Array<Types::BatchResultErrorEntry>]
425
- class DeleteMessageBatchResult < Struct.new(
426
- :successful,
427
- :failed)
428
- include Aws::Structure
429
- end
442
+ # Encloses a receipt handle and an identifier for it.
443
+ #
444
+ # @note When making an API call, you may pass DeleteMessageBatchRequestEntry
445
+ # data as a hash:
446
+ #
447
+ # {
448
+ # id: "String", # required
449
+ # receipt_handle: "String", # required
450
+ # }
451
+ #
452
+ # @!attribute [rw] id
453
+ # An identifier for this particular receipt handle. This is used to
454
+ # communicate the result.
455
+ #
456
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
457
+ #
458
+ # </note>
459
+ # @return [String]
460
+ #
461
+ # @!attribute [rw] receipt_handle
462
+ # A receipt handle.
463
+ # @return [String]
464
+ #
465
+ class DeleteMessageBatchRequestEntry < Struct.new(
466
+ :id,
467
+ :receipt_handle)
468
+ include Aws::Structure
469
+ end
430
470
 
431
- # Encloses the id an entry in DeleteMessageBatch.
432
- # @!attribute [rw] id
433
- # Represents a successfully deleted message.
434
- # @return [String]
435
- class DeleteMessageBatchResultEntry < Struct.new(
436
- :id)
437
- include Aws::Structure
438
- end
471
+ # For each message in the batch, the response contains a `
472
+ # DeleteMessageBatchResultEntry ` tag if the message is deleted or a `
473
+ # BatchResultErrorEntry ` tag if the message can't be deleted.
474
+ #
475
+ # @!attribute [rw] successful
476
+ # A list of ` DeleteMessageBatchResultEntry ` items.
477
+ # @return [Array<Types::DeleteMessageBatchResultEntry>]
478
+ #
479
+ # @!attribute [rw] failed
480
+ # A list of ` BatchResultErrorEntry ` items.
481
+ # @return [Array<Types::BatchResultErrorEntry>]
482
+ #
483
+ class DeleteMessageBatchResult < Struct.new(
484
+ :successful,
485
+ :failed)
486
+ include Aws::Structure
487
+ end
439
488
 
440
- # @note When making an API call, pass DeleteMessageRequest
441
- # data as a hash:
442
- #
443
- # {
444
- # queue_url: "String", # required
445
- # receipt_handle: "String", # required
446
- # }
447
- # @!attribute [rw] queue_url
448
- # The URL of the Amazon SQS queue to take action on.
449
- #
450
- # Queue URLs are case-sensitive.
451
- # @return [String]
452
- #
453
- # @!attribute [rw] receipt_handle
454
- # The receipt handle associated with the message to delete.
455
- # @return [String]
456
- class DeleteMessageRequest < Struct.new(
457
- :queue_url,
458
- :receipt_handle)
459
- include Aws::Structure
460
- end
489
+ # Encloses the `Id` of an entry in ` DeleteMessageBatch `.
490
+ #
491
+ # @!attribute [rw] id
492
+ # Represents a successfully deleted message.
493
+ # @return [String]
494
+ #
495
+ class DeleteMessageBatchResultEntry < Struct.new(
496
+ :id)
497
+ include Aws::Structure
498
+ end
461
499
 
462
- # @note When making an API call, pass DeleteQueueRequest
463
- # data as a hash:
464
- #
465
- # {
466
- # queue_url: "String", # required
467
- # }
468
- # @!attribute [rw] queue_url
469
- # The URL of the Amazon SQS queue to take action on.
470
- #
471
- # Queue URLs are case-sensitive.
472
- # @return [String]
473
- class DeleteQueueRequest < Struct.new(
474
- :queue_url)
475
- include Aws::Structure
476
- end
500
+ # @note When making an API call, you may pass DeleteMessageRequest
501
+ # data as a hash:
502
+ #
503
+ # {
504
+ # queue_url: "String", # required
505
+ # receipt_handle: "String", # required
506
+ # }
507
+ #
508
+ # @!attribute [rw] queue_url
509
+ # The URL of the Amazon SQS queue from which messages are deleted.
510
+ #
511
+ # Queue URLs are case-sensitive.
512
+ # @return [String]
513
+ #
514
+ # @!attribute [rw] receipt_handle
515
+ # The receipt handle associated with the message to delete.
516
+ # @return [String]
517
+ #
518
+ class DeleteMessageRequest < Struct.new(
519
+ :queue_url,
520
+ :receipt_handle)
521
+ include Aws::Structure
522
+ end
477
523
 
478
- # @note When making an API call, pass GetQueueAttributesRequest
479
- # data as a hash:
480
- #
481
- # {
482
- # queue_url: "String", # required
483
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
484
- # }
485
- # @!attribute [rw] queue_url
486
- # The URL of the Amazon SQS queue to take action on.
487
- #
488
- # Queue URLs are case-sensitive.
489
- # @return [String]
490
- #
491
- # @!attribute [rw] attribute_names
492
- # A list of attributes for which to retrieve information.
493
- #
494
- # <note markdown="1"> Going forward, new attributes might be added. If you are writing
495
- # code that calls this action, we recommend that you structure your
496
- # code so that it can handle new attributes gracefully.
497
- #
498
- # </note>
499
- #
500
- # The following attributes are supported:
501
- #
502
- # * `All` - Returns all values.
503
- #
504
- # * `ApproximateNumberOfMessages` - Returns the approximate number of
505
- # visible messages in a queue. For more information, see [Resources
506
- # Required to Process Messages][1] in the *Amazon SQS Developer
507
- # Guide*.
508
- #
509
- # * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
510
- # number of messages that are waiting to be added to the queue.
511
- #
512
- # * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
513
- # number of messages that have not timed-out and are not deleted.
514
- # For more information, see [Resources Required to Process
515
- # Messages][1] in the *Amazon SQS Developer Guide*.
516
- #
517
- # * `CreatedTimestamp` - Returns the time when the queue was created
518
- # in seconds (epoch time).
519
- #
520
- # * `DelaySeconds` - Returns the default delay on the queue in
521
- # seconds.
522
- #
523
- # * `LastModifiedTimestamp` - Returns the time when the queue was last
524
- # changed in seconds (epoch time).
525
- #
526
- # * `MaximumMessageSize` - Returns the limit of how many bytes a
527
- # message can contain before Amazon SQS rejects it.
528
- #
529
- # * `MessageRetentionPeriod` - Returns the number of seconds for which
530
- # Amazon SQS retains a message.
531
- #
532
- # * `Policy` - Returns the policy of the queue.
533
- #
534
- # * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
535
- #
536
- # * `ReceiveMessageWaitTimeSeconds` - Returns the number of seconds
537
- # for which ReceiveMessage call will wait for a message to arrive.
538
- #
539
- # * `RedrivePolicy` - Returns the parameters for dead letter queue
540
- # functionality of the source queue. For more information about the
541
- # redrive policy and dead letter queues, see [Using Amazon SQS Dead
542
- # Letter Queues][2] in the *Amazon SQS Developer Guide*.
543
- #
544
- # * `VisibilityTimeout` - Returns the visibility timeout for the
545
- # queue. For more information about the visibility timeout, see
546
- # [Visibility Timeout][3] in the *Amazon SQS Developer Guide*.
547
- #
548
- # The following attributes apply only to [FIFO (first-in-first-out)
549
- # queues][4]\:
550
- #
551
- # * `FifoQueue` - Returns whether the queue is FIFO. For more
552
- # information, see [FIFO Queue Logic][5] in the *Amazon SQS
553
- # Developer Guide*.
554
- #
555
- # * `ContentBasedDeduplication` - Returns whether content-based
556
- # deduplication is enabled for the queue. For more information, see
557
- # [Exactly-Once Processing][6] in the *Amazon SQS Developer Guide*.
558
- #
559
- #
560
- #
561
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-resources-required-process-messages.html
562
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
563
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
564
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
565
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
566
- # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
567
- # @return [Array<String>]
568
- class GetQueueAttributesRequest < Struct.new(
569
- :queue_url,
570
- :attribute_names)
571
- include Aws::Structure
572
- end
524
+ # @note When making an API call, you may pass DeleteQueueRequest
525
+ # data as a hash:
526
+ #
527
+ # {
528
+ # queue_url: "String", # required
529
+ # }
530
+ #
531
+ # @!attribute [rw] queue_url
532
+ # The URL of the Amazon SQS queue to delete.
533
+ #
534
+ # Queue URLs are case-sensitive.
535
+ # @return [String]
536
+ #
537
+ class DeleteQueueRequest < Struct.new(
538
+ :queue_url)
539
+ include Aws::Structure
540
+ end
573
541
 
574
- # A list of returned queue attributes.
575
- # @!attribute [rw] attributes
576
- # A map of attributes to the respective values.
577
- # @return [Hash<String,String>]
578
- class GetQueueAttributesResult < Struct.new(
579
- :attributes)
580
- include Aws::Structure
581
- end
542
+ # @note When making an API call, you may pass GetQueueAttributesRequest
543
+ # data as a hash:
544
+ #
545
+ # {
546
+ # queue_url: "String", # required
547
+ # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
548
+ # }
549
+ #
550
+ # @!attribute [rw] queue_url
551
+ # The URL of the Amazon SQS queue whose attribute information is
552
+ # retrieved.
553
+ #
554
+ # Queue URLs are case-sensitive.
555
+ # @return [String]
556
+ #
557
+ # @!attribute [rw] attribute_names
558
+ # A list of attributes for which to retrieve information.
559
+ #
560
+ # <note markdown="1"> In the future, new attributes might be added. If you write code that
561
+ # calls this action, we recommend that you structure your code so that
562
+ # it can handle new attributes gracefully.
563
+ #
564
+ # </note>
565
+ #
566
+ # The following attributes are supported:
567
+ #
568
+ # * `All` - Returns all values.
569
+ #
570
+ # * `ApproximateNumberOfMessages` - Returns the approximate number of
571
+ # visible messages in a queue. For more information, see [Resources
572
+ # Required to Process Messages][1] in the *Amazon SQS Developer
573
+ # Guide*.
574
+ #
575
+ # * `ApproximateNumberOfMessagesDelayed` - Returns the approximate
576
+ # number of messages that are waiting to be added to the queue.
577
+ #
578
+ # * `ApproximateNumberOfMessagesNotVisible` - Returns the approximate
579
+ # number of messages that have not timed-out and aren't deleted.
580
+ # For more information, see [Resources Required to Process
581
+ # Messages][1] in the *Amazon SQS Developer Guide*.
582
+ #
583
+ # * `CreatedTimestamp` - Returns the time when the queue was created
584
+ # in seconds ([epoch time][2]).
585
+ #
586
+ # * `DelaySeconds` - Returns the default delay on the queue in
587
+ # seconds.
588
+ #
589
+ # * `LastModifiedTimestamp` - Returns the time when the queue was last
590
+ # changed in seconds ([epoch time][2]).
591
+ #
592
+ # * `MaximumMessageSize` - Returns the limit of how many bytes a
593
+ # message can contain before Amazon SQS rejects it.
594
+ #
595
+ # * `MessageRetentionPeriod` - Returns the number of seconds for which
596
+ # Amazon SQS retains a message.
597
+ #
598
+ # * `Policy` - Returns the policy of the queue.
599
+ #
600
+ # * `QueueArn` - Returns the Amazon resource name (ARN) of the queue.
601
+ #
602
+ # * `ReceiveMessageWaitTimeSeconds` - Returns the number of seconds
603
+ # for which the `ReceiveMessage` action waits for a message to
604
+ # arrive.
605
+ #
606
+ # * `RedrivePolicy` - Returns the parameters for dead letter queue
607
+ # functionality of the source queue. For more information about the
608
+ # redrive policy and dead letter queues, see [Using Amazon SQS Dead
609
+ # Letter Queues][3] in the *Amazon SQS Developer Guide*.
610
+ #
611
+ # * `VisibilityTimeout` - Returns the visibility timeout for the
612
+ # queue. For more information about the visibility timeout, see
613
+ # [Visibility Timeout][4] in the *Amazon SQS Developer Guide*.
614
+ #
615
+ # The following attributes apply only to [FIFO (first-in-first-out)
616
+ # queues][5]\:
617
+ #
618
+ # * `FifoQueue` - Returns whether the queue is FIFO. For more
619
+ # information, see [FIFO Queue Logic][6] in the *Amazon SQS
620
+ # Developer Guide*.
621
+ #
622
+ # * `ContentBasedDeduplication` - Returns whether content-based
623
+ # deduplication is enabled for the queue. For more information, see
624
+ # [Exactly-Once Processing][7] in the *Amazon SQS Developer Guide*.
625
+ #
626
+ #
627
+ #
628
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-resources-required-process-messages.html
629
+ # [2]: http://en.wikipedia.org/wiki/Unix_time
630
+ # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
631
+ # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
632
+ # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
633
+ # [6]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-understanding-logic
634
+ # [7]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
635
+ # @return [Array<String>]
636
+ #
637
+ class GetQueueAttributesRequest < Struct.new(
638
+ :queue_url,
639
+ :attribute_names)
640
+ include Aws::Structure
641
+ end
582
642
 
583
- # @note When making an API call, pass GetQueueUrlRequest
584
- # data as a hash:
585
- #
586
- # {
587
- # queue_name: "String", # required
588
- # queue_owner_aws_account_id: "String",
589
- # }
590
- # @!attribute [rw] queue_name
591
- # The name of the queue whose URL must be fetched. Maximum 80
592
- # characters; alphanumeric characters, hyphens (-), and underscores
593
- # (\_) are allowed.
594
- #
595
- # Queue names are case-sensitive.
596
- # @return [String]
597
- #
598
- # @!attribute [rw] queue_owner_aws_account_id
599
- # The AWS account ID of the account that created the queue.
600
- # @return [String]
601
- class GetQueueUrlRequest < Struct.new(
602
- :queue_name,
603
- :queue_owner_aws_account_id)
604
- include Aws::Structure
605
- end
643
+ # A list of returned queue attributes.
644
+ #
645
+ # @!attribute [rw] attributes
646
+ # A map of attributes to their respective values.
647
+ # @return [Hash<String,String>]
648
+ #
649
+ class GetQueueAttributesResult < Struct.new(
650
+ :attributes)
651
+ include Aws::Structure
652
+ end
606
653
 
607
- # For more information, see [Responses][1] in the *Amazon SQS Developer
608
- # Guide*.
609
- #
610
- #
611
- #
612
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html
613
- # @!attribute [rw] queue_url
614
- # The URL for the queue.
615
- # @return [String]
616
- class GetQueueUrlResult < Struct.new(
617
- :queue_url)
618
- include Aws::Structure
619
- end
654
+ # @note When making an API call, you may pass GetQueueUrlRequest
655
+ # data as a hash:
656
+ #
657
+ # {
658
+ # queue_name: "String", # required
659
+ # queue_owner_aws_account_id: "String",
660
+ # }
661
+ #
662
+ # @!attribute [rw] queue_name
663
+ # The name of the queue whose URL must be fetched. Maximum 80
664
+ # characters. Valid values: alphanumeric characters, hyphens (`-`),
665
+ # and underscores (`_`).
666
+ #
667
+ # Queue names are case-sensitive.
668
+ # @return [String]
669
+ #
670
+ # @!attribute [rw] queue_owner_aws_account_id
671
+ # The AWS account ID of the account that created the queue.
672
+ # @return [String]
673
+ #
674
+ class GetQueueUrlRequest < Struct.new(
675
+ :queue_name,
676
+ :queue_owner_aws_account_id)
677
+ include Aws::Structure
678
+ end
620
679
 
621
- # @note When making an API call, pass ListDeadLetterSourceQueuesRequest
622
- # data as a hash:
623
- #
624
- # {
625
- # queue_url: "String", # required
626
- # }
627
- # @!attribute [rw] queue_url
628
- # The queue URL of a dead letter queue.
629
- #
630
- # Queue URLs are case-sensitive.
631
- # @return [String]
632
- class ListDeadLetterSourceQueuesRequest < Struct.new(
633
- :queue_url)
634
- include Aws::Structure
635
- end
680
+ # For more information, see [Responses][1] in the *Amazon SQS Developer
681
+ # Guide*.
682
+ #
683
+ #
684
+ #
685
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/UnderstandingResponses.html
686
+ #
687
+ # @!attribute [rw] queue_url
688
+ # The URL of the queue.
689
+ # @return [String]
690
+ #
691
+ class GetQueueUrlResult < Struct.new(
692
+ :queue_url)
693
+ include Aws::Structure
694
+ end
636
695
 
637
- # A list of your dead letter source queues.
638
- # @!attribute [rw] queue_urls
639
- # A list of source queue URLs that have the RedrivePolicy queue
640
- # attribute configured with a dead letter queue.
641
- # @return [Array<String>]
642
- class ListDeadLetterSourceQueuesResult < Struct.new(
643
- :queue_urls)
644
- include Aws::Structure
645
- end
696
+ # @note When making an API call, you may pass ListDeadLetterSourceQueuesRequest
697
+ # data as a hash:
698
+ #
699
+ # {
700
+ # queue_url: "String", # required
701
+ # }
702
+ #
703
+ # @!attribute [rw] queue_url
704
+ # The URL of a dead letter queue.
705
+ #
706
+ # Queue URLs are case-sensitive.
707
+ # @return [String]
708
+ #
709
+ class ListDeadLetterSourceQueuesRequest < Struct.new(
710
+ :queue_url)
711
+ include Aws::Structure
712
+ end
646
713
 
647
- # @note When making an API call, pass ListQueuesRequest
648
- # data as a hash:
649
- #
650
- # {
651
- # queue_name_prefix: "String",
652
- # }
653
- # @!attribute [rw] queue_name_prefix
654
- # A string to use for filtering the list results. Only those queues
655
- # whose name begins with the specified string are returned.
656
- #
657
- # Queue names are case-sensitive.
658
- # @return [String]
659
- class ListQueuesRequest < Struct.new(
660
- :queue_name_prefix)
661
- include Aws::Structure
662
- end
714
+ # A list of your dead letter source queues.
715
+ #
716
+ # @!attribute [rw] queue_urls
717
+ # A list of source queue URLs that have the `RedrivePolicy` queue
718
+ # attribute configured with a dead letter queue.
719
+ # @return [Array<String>]
720
+ #
721
+ class ListDeadLetterSourceQueuesResult < Struct.new(
722
+ :queue_urls)
723
+ include Aws::Structure
724
+ end
663
725
 
664
- # A list of your queues.
665
- # @!attribute [rw] queue_urls
666
- # A list of queue URLs, up to 1000 entries.
667
- # @return [Array<String>]
668
- class ListQueuesResult < Struct.new(
669
- :queue_urls)
670
- include Aws::Structure
671
- end
726
+ # @note When making an API call, you may pass ListQueuesRequest
727
+ # data as a hash:
728
+ #
729
+ # {
730
+ # queue_name_prefix: "String",
731
+ # }
732
+ #
733
+ # @!attribute [rw] queue_name_prefix
734
+ # A string to use for filtering the list results. Only those queues
735
+ # whose name begins with the specified string are returned.
736
+ #
737
+ # Queue names are case-sensitive.
738
+ # @return [String]
739
+ #
740
+ class ListQueuesRequest < Struct.new(
741
+ :queue_name_prefix)
742
+ include Aws::Structure
743
+ end
672
744
 
673
- # An Amazon SQS message.
674
- # @!attribute [rw] message_id
675
- # A unique identifier for the message. Message IDs are considered
676
- # unique across all AWS accounts for an extended period of time.
677
- # @return [String]
678
- #
679
- # @!attribute [rw] receipt_handle
680
- # An identifier associated with the act of receiving the message. A
681
- # new receipt handle is returned every time you receive a message.
682
- # When deleting a message, you provide the last received receipt
683
- # handle to delete the message.
684
- # @return [String]
685
- #
686
- # @!attribute [rw] md5_of_body
687
- # An MD5 digest of the non-URL-encoded message body string.
688
- # @return [String]
689
- #
690
- # @!attribute [rw] body
691
- # The message's contents (not URL-encoded).
692
- # @return [String]
693
- #
694
- # @!attribute [rw] attributes
695
- # `SenderId`, `SentTimestamp`, `ApproximateReceiveCount`, and/or
696
- # `ApproximateFirstReceiveTimestamp`. `SentTimestamp` and
697
- # `ApproximateFirstReceiveTimestamp` are each returned as an integer
698
- # representing the [epoch time][1] in milliseconds.
699
- #
700
- #
701
- #
702
- # [1]: http://en.wikipedia.org/wiki/Unix_time
703
- # @return [Hash<String,String>]
704
- #
705
- # @!attribute [rw] md5_of_message_attributes
706
- # An MD5 digest of the non-URL-encoded message attribute string. This
707
- # can be used to verify that Amazon SQS received the message
708
- # correctly. Amazon SQS first URL decodes the message before creating
709
- # the MD5 digest. For information about MD5, see [RFC1321][1].
710
- #
711
- #
712
- #
713
- # [1]: https://www.ietf.org/rfc/rfc1321.txt
714
- # @return [String]
715
- #
716
- # @!attribute [rw] message_attributes
717
- # Each message attribute consists of a Name, Type, and Value. For more
718
- # information, see [Message Attribute Items and Validation][1] in the
719
- # *Amazon SQS Developer Guide*.
720
- #
721
- #
722
- #
723
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
724
- # @return [Hash<String,Types::MessageAttributeValue>]
725
- class Message < Struct.new(
726
- :message_id,
727
- :receipt_handle,
728
- :md5_of_body,
729
- :body,
730
- :attributes,
731
- :md5_of_message_attributes,
732
- :message_attributes)
733
- include Aws::Structure
734
- end
745
+ # A list of your queues.
746
+ #
747
+ # @!attribute [rw] queue_urls
748
+ # A list of queue URLs, up to 1,000 entries.
749
+ # @return [Array<String>]
750
+ #
751
+ class ListQueuesResult < Struct.new(
752
+ :queue_urls)
753
+ include Aws::Structure
754
+ end
735
755
 
736
- # The user-specified message attribute value. For string data types, the
737
- # value attribute has the same restrictions on the content as the
738
- # message body. For more information, see SendMessage.
739
- #
740
- # Name, type, and value must not be empty or null. In addition, the
741
- # message body should not be empty or null. All parts of the message
742
- # attribute, including name, type, and value, are included in the
743
- # message size restriction, which is currently 256 KB (262,144 bytes).
744
- # @note When making an API call, pass MessageAttributeValue
745
- # data as a hash:
746
- #
747
- # {
748
- # string_value: "String",
749
- # binary_value: "data",
750
- # string_list_values: ["String"],
751
- # binary_list_values: ["data"],
752
- # data_type: "String", # required
753
- # }
754
- # @!attribute [rw] string_value
755
- # Strings are Unicode with UTF8 binary encoding. For a list of code
756
- # values, see [ASCII Printable Characters][1].
757
- #
758
- #
759
- #
760
- # [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
761
- # @return [String]
762
- #
763
- # @!attribute [rw] binary_value
764
- # Binary type attributes can store any binary data, for example,
765
- # compressed data, encrypted data, or images.
766
- # @return [String]
767
- #
768
- # @!attribute [rw] string_list_values
769
- # Not implemented. Reserved for future use.
770
- # @return [Array<String>]
771
- #
772
- # @!attribute [rw] binary_list_values
773
- # Not implemented. Reserved for future use.
774
- # @return [Array<String>]
775
- #
776
- # @!attribute [rw] data_type
777
- # Amazon SQS supports the following logical data types: String,
778
- # Number, and Binary. For the Number data type, you must use
779
- # StringValue.
780
- #
781
- # You can also append custom labels. For more information, see
782
- # [Message Attribute Data Types and Validation][1] in the *Amazon SQS
783
- # Developer Guide*.
784
- #
785
- #
786
- #
787
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-data-types-validation
788
- # @return [String]
789
- class MessageAttributeValue < Struct.new(
790
- :string_value,
791
- :binary_value,
792
- :string_list_values,
793
- :binary_list_values,
794
- :data_type)
795
- include Aws::Structure
796
- end
756
+ # An Amazon SQS message.
757
+ #
758
+ # @!attribute [rw] message_id
759
+ # A unique identifier for the message. A `MessageId`is considered
760
+ # unique across all AWS accounts for an extended period of time.
761
+ # @return [String]
762
+ #
763
+ # @!attribute [rw] receipt_handle
764
+ # An identifier associated with the act of receiving the message. A
765
+ # new receipt handle is returned every time you receive a message.
766
+ # When deleting a message, you provide the last received receipt
767
+ # handle to delete the message.
768
+ # @return [String]
769
+ #
770
+ # @!attribute [rw] md5_of_body
771
+ # An MD5 digest of the non-URL-encoded message body string.
772
+ # @return [String]
773
+ #
774
+ # @!attribute [rw] body
775
+ # The message's contents (not URL-encoded).
776
+ # @return [String]
777
+ #
778
+ # @!attribute [rw] attributes
779
+ # `SenderId`, `SentTimestamp`, `ApproximateReceiveCount`, and/or
780
+ # `ApproximateFirstReceiveTimestamp`. `SentTimestamp` and
781
+ # `ApproximateFirstReceiveTimestamp` are each returned as an integer
782
+ # representing the [epoch time][1] in milliseconds.
783
+ #
784
+ #
785
+ #
786
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
787
+ # @return [Hash<String,String>]
788
+ #
789
+ # @!attribute [rw] md5_of_message_attributes
790
+ # An MD5 digest of the non-URL-encoded message attribute string. You
791
+ # can use this attribute to verify that Amazon SQS received the
792
+ # message correctly. Amazon SQS URL-decodes the message before
793
+ # creating the MD5 digest. For information on MD5, see [RFC1321][1].
794
+ #
795
+ #
796
+ #
797
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
798
+ # @return [String]
799
+ #
800
+ # @!attribute [rw] message_attributes
801
+ # Each message attribute consists of a `Name`, `Type`, and `Value`.
802
+ # For more information, see [Message Attribute Items and
803
+ # Validation][1] in the *Amazon SQS Developer Guide*.
804
+ #
805
+ #
806
+ #
807
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
808
+ # @return [Hash<String,Types::MessageAttributeValue>]
809
+ #
810
+ class Message < Struct.new(
811
+ :message_id,
812
+ :receipt_handle,
813
+ :md5_of_body,
814
+ :body,
815
+ :attributes,
816
+ :md5_of_message_attributes,
817
+ :message_attributes)
818
+ include Aws::Structure
819
+ end
797
820
 
798
- # @note When making an API call, pass PurgeQueueRequest
799
- # data as a hash:
800
- #
801
- # {
802
- # queue_url: "String", # required
803
- # }
804
- # @!attribute [rw] queue_url
805
- # The queue URL of the queue to delete the messages from when using
806
- # the `PurgeQueue` API.
807
- #
808
- # Queue URLs are case-sensitive.
809
- # @return [String]
810
- class PurgeQueueRequest < Struct.new(
811
- :queue_url)
812
- include Aws::Structure
813
- end
821
+ # The user-specified message attribute value. For string data types, the
822
+ # `Value` attribute has the same restrictions on the content as the
823
+ # message body. For more information, see ` SendMessage `.
824
+ #
825
+ # `Name`, `type`, `value` and the message body must not be empty or
826
+ # null. All parts of the message attribute, including `Name`, `Type`,
827
+ # and `Value`, are part of the message size restriction (256 KB or
828
+ # 262,144 bytes).
829
+ #
830
+ # @note When making an API call, you may pass MessageAttributeValue
831
+ # data as a hash:
832
+ #
833
+ # {
834
+ # string_value: "String",
835
+ # binary_value: "data",
836
+ # string_list_values: ["String"],
837
+ # binary_list_values: ["data"],
838
+ # data_type: "String", # required
839
+ # }
840
+ #
841
+ # @!attribute [rw] string_value
842
+ # Strings are Unicode with UTF-8 binary encoding. For a list of code
843
+ # values, see [ASCII Printable Characters][1].
844
+ #
845
+ #
846
+ #
847
+ # [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
848
+ # @return [String]
849
+ #
850
+ # @!attribute [rw] binary_value
851
+ # Binary type attributes can store any binary data, such as compressed
852
+ # data, encrypted data, or images.
853
+ # @return [String]
854
+ #
855
+ # @!attribute [rw] string_list_values
856
+ # Not implemented. Reserved for future use.
857
+ # @return [Array<String>]
858
+ #
859
+ # @!attribute [rw] binary_list_values
860
+ # Not implemented. Reserved for future use.
861
+ # @return [Array<String>]
862
+ #
863
+ # @!attribute [rw] data_type
864
+ # Amazon SQS supports the following logical data types: `String`,
865
+ # `Number`, and `Binary`. For the `Number` data type, you must use
866
+ # `StringValue`.
867
+ #
868
+ # You can also append custom labels. For more information, see
869
+ # [Message Attribute Data Types and Validation][1] in the *Amazon SQS
870
+ # Developer Guide*.
871
+ #
872
+ #
873
+ #
874
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-data-types-validation
875
+ # @return [String]
876
+ #
877
+ class MessageAttributeValue < Struct.new(
878
+ :string_value,
879
+ :binary_value,
880
+ :string_list_values,
881
+ :binary_list_values,
882
+ :data_type)
883
+ include Aws::Structure
884
+ end
814
885
 
815
- # @note When making an API call, pass ReceiveMessageRequest
816
- # data as a hash:
817
- #
818
- # {
819
- # queue_url: "String", # required
820
- # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
821
- # message_attribute_names: ["MessageAttributeName"],
822
- # max_number_of_messages: 1,
823
- # visibility_timeout: 1,
824
- # wait_time_seconds: 1,
825
- # receive_request_attempt_id: "String",
826
- # }
827
- # @!attribute [rw] queue_url
828
- # The URL of the Amazon SQS queue to take action on.
829
- #
830
- # Queue URLs are case-sensitive.
831
- # @return [String]
832
- #
833
- # @!attribute [rw] attribute_names
834
- # A list of attributes that need to be returned along with each
835
- # message. These attributes include:
836
- #
837
- # * `All` - Returns all values.
838
- #
839
- # * `ApproximateFirstReceiveTimestamp` - Returns the time the message
840
- # was first received from the queue (epoch time in milliseconds).
841
- #
842
- # * `ApproximateReceiveCount` - Returns the number of times a message
843
- # has been received from the queue but not deleted.
844
- #
845
- # * `SenderId`
846
- #
847
- # * For an IAM user, returns the IAM user ID, for example
848
- # `ABCDEFGHI1JKLMNOPQ23R`.
849
- #
850
- # * For an IAM role, returns the IAM role ID, for example
851
- # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
852
- #
853
- # * `SentTimestamp` - Returns the time the message was sent to the
854
- # queue (epoch time in milliseconds).
855
- #
856
- # * `MessageDeduplicationId` - Returns the value provided by the
857
- # sender that calls the ` SendMessage ` action.
858
- #
859
- # * `MessageGroupId` - Returns the value provided by the sender that
860
- # calls the ` SendMessage ` action. Messages with the same
861
- # `MessageGroupId` are returned in sequence.
862
- #
863
- # * `SequenceNumber` - Returns the value provided by Amazon SQS.
864
- #
865
- # Any other valid special request parameters (such as the following)
866
- # that are specified are ignored:
867
- #
868
- # * `ApproximateNumberOfMessages`
869
- #
870
- # * `ApproximateNumberOfMessagesDelayed`
871
- #
872
- # * `ApproximateNumberOfMessagesNotVisible`
873
- #
874
- # * `CreatedTimestamp`
875
- #
876
- # * `ContentBasedDeduplication`
877
- #
878
- # * `DelaySeconds`
879
- #
880
- # * `LastModifiedTimestamp`
881
- #
882
- # * `MaximumMessageSize`
883
- #
884
- # * `MessageRetentionPeriod`
885
- #
886
- # * `Policy`
887
- #
888
- # * `QueueArn`,
889
- #
890
- # * `ReceiveMessageWaitTimeSeconds`
891
- #
892
- # * `RedrivePolicy`
893
- #
894
- # * `FifoQueue`
895
- #
896
- # * `VisibilityTimeout`
897
- # @return [Array<String>]
898
- #
899
- # @!attribute [rw] message_attribute_names
900
- # The name of the message attribute, where *N* is the index. The
901
- # message attribute name can contain the following characters: A-Z,
902
- # a-z, 0-9, underscore (\_), hyphen (-), and period (.). The name must
903
- # not start or end with a period, and it should not have successive
904
- # periods. The name is case sensitive and must be unique among all
905
- # attribute names for the message. The name can be up to 256
906
- # characters long. The name can't start with "AWS." or "Amazon."
907
- # (or any variations in casing), because these prefixes are reserved
908
- # for use by Amazon Web Services.
909
- #
910
- # When using `ReceiveMessage`, you can send a list of attribute names
911
- # to receive, or you can return all of the attributes by specifying
912
- # "All" or ".*" in your request. You can also use "bar.*" to
913
- # return all message attributes starting with the "bar" prefix.
914
- # @return [Array<String>]
915
- #
916
- # @!attribute [rw] max_number_of_messages
917
- # The maximum number of messages to return. Amazon SQS never returns
918
- # more messages than this value but might return fewer. Values can be
919
- # from 1 to 10. Default is 1.
920
- #
921
- # All of the messages are not necessarily returned.
922
- # @return [Integer]
923
- #
924
- # @!attribute [rw] visibility_timeout
925
- # The duration (in seconds) that the received messages are hidden from
926
- # subsequent retrieve requests after being retrieved by a
927
- # `ReceiveMessage` request.
928
- # @return [Integer]
929
- #
930
- # @!attribute [rw] wait_time_seconds
931
- # The duration (in seconds) for which the call will wait for a message
932
- # to arrive in the queue before returning. If a message is available,
933
- # the call will return sooner than WaitTimeSeconds.
934
- # @return [Integer]
935
- #
936
- # @!attribute [rw] receive_request_attempt_id
937
- # This parameter applies only to FIFO (first-in-first-out) queues.
938
- #
939
- # The token used for deduplication of `ReceiveMessage` calls. If a
940
- # networking issue occurs after a `ReceiveMessage` action, and instead
941
- # of a response you receive a generic error, you can retry the same
942
- # action with an identical `ReceiveRequestAttemptId` to retrieve the
943
- # same set of messages, even if their visibility timeout has not yet
944
- # expired.
945
- #
946
- # * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
947
- # `ReceiveMessage` action.
948
- #
949
- # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
950
- # can provide a `ReceiveRequestAttemptId` explicitly.
951
- #
952
- # * If a caller of the `ReceiveMessage` action doesn't provide a
953
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
954
- # `ReceiveRequestAttemptId`.
955
- #
956
- # * You can retry the `ReceiveMessage` action with the same
957
- # `ReceiveRequestAttemptId` if none of the messages have been
958
- # modified (deleted or had their visibility changes).
959
- #
960
- # * During a visibility timeout, subsequent calls with the same
961
- # `ReceiveRequestAttemptId` return the same messages and receipt
962
- # handles. If a retry occurs within the deduplication interval, it
963
- # resets the visibility timeout. For more information, see
964
- # [Visibility Timeout][1] in the *Amazon Simple Queue Service
965
- # Developer Guide*.
966
- #
967
- # If a caller of the `ReceiveMessage` action is still processing
968
- # messages when the visibility timeout expires and messages become
969
- # visible, another worker reading from the same queue can receive
970
- # the same messages and therefore process duplicates. Also, if a
971
- # reader whose message processing time is longer than the visibility
972
- # timeout tries to delete the processed messages, the action fails
973
- # with an error.
974
- #
975
- # To mitigate this effect, ensure that your application observes a
976
- # safe threshold before the visibility timeout expires and extend
977
- # the visibility timeout as necessary.
978
- #
979
- # * While messages with a particular `MessageGroupId` are invisible,
980
- # no more messages belonging to the same `MessageGroupId` are
981
- # returned until the visibility timeout expires. You can still
982
- # receive messages with another `MessageGroupId` as long as it is
983
- # also visible.
984
- #
985
- # * If a caller of `ReceiveMessage` can't track the
986
- # `ReceiveRequestAttemptId`, no retries will work until the original
987
- # visibility timeout expires. As a result, delays might occur but
988
- # the messages in the queue will remain in a strict order.
989
- #
990
- # The length of `ReceiveRequestAttemptId` is 128 characters.
991
- # `ReceiveRequestAttemptId` can contain alphanumeric characters
992
- # (`a-z`, `A-Z`, `0-9`) and punctuation (``
993
- # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
994
- #
995
- # For best practices of using `ReceiveRequestAttemptId`, see [Using
996
- # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
997
- # Simple Queue Service Developer Guide*.
998
- #
999
- #
1000
- #
1001
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1002
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-receiverequestattemptid-request-parameter
1003
- # @return [String]
1004
- class ReceiveMessageRequest < Struct.new(
1005
- :queue_url,
1006
- :attribute_names,
1007
- :message_attribute_names,
1008
- :max_number_of_messages,
1009
- :visibility_timeout,
1010
- :wait_time_seconds,
1011
- :receive_request_attempt_id)
1012
- include Aws::Structure
1013
- end
886
+ # @note When making an API call, you may pass PurgeQueueRequest
887
+ # data as a hash:
888
+ #
889
+ # {
890
+ # queue_url: "String", # required
891
+ # }
892
+ #
893
+ # @!attribute [rw] queue_url
894
+ # The URL of the queue from which the `PurgeQueue` action deletes
895
+ # messages.
896
+ #
897
+ # Queue URLs are case-sensitive.
898
+ # @return [String]
899
+ #
900
+ class PurgeQueueRequest < Struct.new(
901
+ :queue_url)
902
+ include Aws::Structure
903
+ end
1014
904
 
1015
- # A list of received messages.
1016
- # @!attribute [rw] messages
1017
- # A list of messages.
1018
- # @return [Array<Types::Message>]
1019
- class ReceiveMessageResult < Struct.new(
1020
- :messages)
1021
- include Aws::Structure
1022
- end
905
+ # @note When making an API call, you may pass ReceiveMessageRequest
906
+ # data as a hash:
907
+ #
908
+ # {
909
+ # queue_url: "String", # required
910
+ # attribute_names: ["All"], # accepts All, Policy, VisibilityTimeout, MaximumMessageSize, MessageRetentionPeriod, ApproximateNumberOfMessages, ApproximateNumberOfMessagesNotVisible, CreatedTimestamp, LastModifiedTimestamp, QueueArn, ApproximateNumberOfMessagesDelayed, DelaySeconds, ReceiveMessageWaitTimeSeconds, RedrivePolicy, FifoQueue, ContentBasedDeduplication
911
+ # message_attribute_names: ["MessageAttributeName"],
912
+ # max_number_of_messages: 1,
913
+ # visibility_timeout: 1,
914
+ # wait_time_seconds: 1,
915
+ # receive_request_attempt_id: "String",
916
+ # }
917
+ #
918
+ # @!attribute [rw] queue_url
919
+ # The URL of the Amazon SQS queue from which messages are received.
920
+ #
921
+ # Queue URLs are case-sensitive.
922
+ # @return [String]
923
+ #
924
+ # @!attribute [rw] attribute_names
925
+ # A list of attributes that need to be returned along with each
926
+ # message. These attributes include:
927
+ #
928
+ # * `All` - Returns all values.
929
+ #
930
+ # * `ApproximateFirstReceiveTimestamp` - Returns the time the message
931
+ # was first received from the queue ([epoch time][1] in
932
+ # milliseconds).
933
+ #
934
+ # * `ApproximateReceiveCount` - Returns the number of times a message
935
+ # has been received from the queue but not deleted.
936
+ #
937
+ # * `SenderId`
938
+ #
939
+ # * For an IAM user, returns the IAM user ID, for example
940
+ # `ABCDEFGHI1JKLMNOPQ23R`.
941
+ #
942
+ # * For an IAM role, returns the IAM role ID, for example
943
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
944
+ #
945
+ # * `SentTimestamp` - Returns the time the message was sent to the
946
+ # queue ([epoch time][1] in milliseconds).
947
+ #
948
+ # * `MessageDeduplicationId` - Returns the value provided by the
949
+ # sender that calls the ` SendMessage ` action.
950
+ #
951
+ # * `MessageGroupId` - Returns the value provided by the sender that
952
+ # calls the ` SendMessage ` action. Messages with the same
953
+ # `MessageGroupId` are returned in sequence.
954
+ #
955
+ # * `SequenceNumber` - Returns the value provided by Amazon SQS.
956
+ #
957
+ # Any other valid special request parameters (such as the following)
958
+ # are ignored:
959
+ #
960
+ # * `ApproximateNumberOfMessages`
961
+ #
962
+ # * `ApproximateNumberOfMessagesDelayed`
963
+ #
964
+ # * `ApproximateNumberOfMessagesNotVisible`
965
+ #
966
+ # * `CreatedTimestamp`
967
+ #
968
+ # * `ContentBasedDeduplication`
969
+ #
970
+ # * `DelaySeconds`
971
+ #
972
+ # * `FifoQueue`
973
+ #
974
+ # * `LastModifiedTimestamp`
975
+ #
976
+ # * `MaximumMessageSize`
977
+ #
978
+ # * `MessageRetentionPeriod`
979
+ #
980
+ # * `Policy`
981
+ #
982
+ # * `QueueArn`,
983
+ #
984
+ # * `ReceiveMessageWaitTimeSeconds`
985
+ #
986
+ # * `RedrivePolicy`
987
+ #
988
+ # * `VisibilityTimeout`
989
+ #
990
+ #
991
+ #
992
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
993
+ # @return [Array<String>]
994
+ #
995
+ # @!attribute [rw] message_attribute_names
996
+ # The name of the message attribute, where *N* is the index.
997
+ #
998
+ # * The name can contain alphanumeric characters and the underscore
999
+ # (`_`), hyphen (`-`), and period (`.`).
1000
+ #
1001
+ # * The name is case-sensitive and must be unique among all attribute
1002
+ # names for the message.
1003
+ #
1004
+ # * The name must not start with AWS-reserved prefixes such as `AWS.`
1005
+ # or `Amazon.` (or any casing variants).
1006
+ #
1007
+ # * The name must not start or end with a period (`.`), and it should
1008
+ # not have periods in succession (`..`).
1009
+ #
1010
+ # * The name can be up to 256 characters long.
1011
+ #
1012
+ # When using `ReceiveMessage`, you can send a list of attribute names
1013
+ # to receive, or you can return all of the attributes by specifying
1014
+ # `All` or `.*` in your request. You can also use all message
1015
+ # attributes starting with a prefix, for example `bar.*`.
1016
+ # @return [Array<String>]
1017
+ #
1018
+ # @!attribute [rw] max_number_of_messages
1019
+ # The maximum number of messages to return. Amazon SQS never returns
1020
+ # more messages than this value (however, fewer messages might be
1021
+ # returned). Valid values are 1 to 10. Default is 1.
1022
+ # @return [Integer]
1023
+ #
1024
+ # @!attribute [rw] visibility_timeout
1025
+ # The duration (in seconds) that the received messages are hidden from
1026
+ # subsequent retrieve requests after being retrieved by a
1027
+ # `ReceiveMessage` request.
1028
+ # @return [Integer]
1029
+ #
1030
+ # @!attribute [rw] wait_time_seconds
1031
+ # The duration (in seconds) for which the call waits for a message to
1032
+ # arrive in the queue before returning. If a message is available, the
1033
+ # call returns sooner than `WaitTimeSeconds`.
1034
+ # @return [Integer]
1035
+ #
1036
+ # @!attribute [rw] receive_request_attempt_id
1037
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1038
+ #
1039
+ # The token used for deduplication of `ReceiveMessage` calls. If a
1040
+ # networking issue occurs after a `ReceiveMessage` action, and instead
1041
+ # of a response you receive a generic error, you can retry the same
1042
+ # action with an identical `ReceiveRequestAttemptId` to retrieve the
1043
+ # same set of messages, even if their visibility timeout has not yet
1044
+ # expired.
1045
+ #
1046
+ # * You can use `ReceiveRequestAttemptId` only for 5 minutes after a
1047
+ # `ReceiveMessage` action.
1048
+ #
1049
+ # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1050
+ # can provide a `ReceiveRequestAttemptId` explicitly.
1051
+ #
1052
+ # * If a caller of the `ReceiveMessage` action doesn't provide a
1053
+ # `ReceiveRequestAttemptId`, Amazon SQS generates a
1054
+ # `ReceiveRequestAttemptId`.
1055
+ #
1056
+ # * You can retry the `ReceiveMessage` action with the same
1057
+ # `ReceiveRequestAttemptId` if none of the messages have been
1058
+ # modified (deleted or had their visibility changes).
1059
+ #
1060
+ # * During a visibility timeout, subsequent calls with the same
1061
+ # `ReceiveRequestAttemptId` return the same messages and receipt
1062
+ # handles. If a retry occurs within the deduplication interval, it
1063
+ # resets the visibility timeout. For more information, see
1064
+ # [Visibility Timeout][1] in the *Amazon Simple Queue Service
1065
+ # Developer Guide*.
1066
+ #
1067
+ # If a caller of the `ReceiveMessage` action is still processing
1068
+ # messages when the visibility timeout expires and messages become
1069
+ # visible, another worker reading from the same queue can receive
1070
+ # the same messages and therefore process duplicates. Also, if a
1071
+ # reader whose message processing time is longer than the visibility
1072
+ # timeout tries to delete the processed messages, the action fails
1073
+ # with an error.
1074
+ #
1075
+ # To mitigate this effect, ensure that your application observes a
1076
+ # safe threshold before the visibility timeout expires and extend
1077
+ # the visibility timeout as necessary.
1078
+ #
1079
+ # * While messages with a particular `MessageGroupId` are invisible,
1080
+ # no more messages belonging to the same `MessageGroupId` are
1081
+ # returned until the visibility timeout expires. You can still
1082
+ # receive messages with another `MessageGroupId` as long as it is
1083
+ # also visible.
1084
+ #
1085
+ # * If a caller of `ReceiveMessage` can't track the
1086
+ # `ReceiveRequestAttemptId`, no retries work until the original
1087
+ # visibility timeout expires. As a result, delays might occur but
1088
+ # the messages in the queue remain in a strict order.
1089
+ #
1090
+ # The length of `ReceiveRequestAttemptId` is 128 characters.
1091
+ # `ReceiveRequestAttemptId` can contain alphanumeric characters
1092
+ # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1093
+ # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1094
+ #
1095
+ # For best practices of using `ReceiveRequestAttemptId`, see [Using
1096
+ # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon
1097
+ # Simple Queue Service Developer Guide*.
1098
+ #
1099
+ #
1100
+ #
1101
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1102
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-receiverequestattemptid-request-parameter
1103
+ # @return [String]
1104
+ #
1105
+ class ReceiveMessageRequest < Struct.new(
1106
+ :queue_url,
1107
+ :attribute_names,
1108
+ :message_attribute_names,
1109
+ :max_number_of_messages,
1110
+ :visibility_timeout,
1111
+ :wait_time_seconds,
1112
+ :receive_request_attempt_id)
1113
+ include Aws::Structure
1114
+ end
1023
1115
 
1024
- # @note When making an API call, pass RemovePermissionRequest
1025
- # data as a hash:
1026
- #
1027
- # {
1028
- # queue_url: "String", # required
1029
- # label: "String", # required
1030
- # }
1031
- # @!attribute [rw] queue_url
1032
- # The URL of the Amazon SQS queue to take action on.
1033
- #
1034
- # Queue URLs are case-sensitive.
1035
- # @return [String]
1036
- #
1037
- # @!attribute [rw] label
1038
- # The identification of the permission to remove. This is the label
1039
- # added with the AddPermission action.
1040
- # @return [String]
1041
- class RemovePermissionRequest < Struct.new(
1042
- :queue_url,
1043
- :label)
1044
- include Aws::Structure
1045
- end
1116
+ # A list of received messages.
1117
+ #
1118
+ # @!attribute [rw] messages
1119
+ # A list of messages.
1120
+ # @return [Array<Types::Message>]
1121
+ #
1122
+ class ReceiveMessageResult < Struct.new(
1123
+ :messages)
1124
+ include Aws::Structure
1125
+ end
1046
1126
 
1047
- # @note When making an API call, pass SendMessageBatchRequest
1048
- # data as a hash:
1049
- #
1050
- # {
1051
- # queue_url: "String", # required
1052
- # entries: [ # required
1053
- # {
1054
- # id: "String", # required
1055
- # message_body: "String", # required
1056
- # delay_seconds: 1,
1057
- # message_attributes: {
1058
- # "String" => {
1059
- # string_value: "String",
1060
- # binary_value: "data",
1061
- # string_list_values: ["String"],
1062
- # binary_list_values: ["data"],
1063
- # data_type: "String", # required
1064
- # },
1065
- # },
1066
- # message_deduplication_id: "String",
1067
- # message_group_id: "String",
1068
- # },
1069
- # ],
1070
- # }
1071
- # @!attribute [rw] queue_url
1072
- # The URL of the Amazon SQS queue to take action on.
1073
- #
1074
- # Queue URLs are case-sensitive.
1075
- # @return [String]
1076
- #
1077
- # @!attribute [rw] entries
1078
- # A list of SendMessageBatchRequestEntry items.
1079
- # @return [Array<Types::SendMessageBatchRequestEntry>]
1080
- class SendMessageBatchRequest < Struct.new(
1081
- :queue_url,
1082
- :entries)
1083
- include Aws::Structure
1084
- end
1127
+ # @note When making an API call, you may pass RemovePermissionRequest
1128
+ # data as a hash:
1129
+ #
1130
+ # {
1131
+ # queue_url: "String", # required
1132
+ # label: "String", # required
1133
+ # }
1134
+ #
1135
+ # @!attribute [rw] queue_url
1136
+ # The URL of the Amazon SQS queue from which permissions are removed.
1137
+ #
1138
+ # Queue URLs are case-sensitive.
1139
+ # @return [String]
1140
+ #
1141
+ # @!attribute [rw] label
1142
+ # The identification of the permission to remove. This is the label
1143
+ # added using the ` AddPermission ` action.
1144
+ # @return [String]
1145
+ #
1146
+ class RemovePermissionRequest < Struct.new(
1147
+ :queue_url,
1148
+ :label)
1149
+ include Aws::Structure
1150
+ end
1085
1151
 
1086
- # Contains the details of a single Amazon SQS message along with a `Id`.
1087
- # @note When making an API call, pass SendMessageBatchRequestEntry
1088
- # data as a hash:
1089
- #
1090
- # {
1091
- # id: "String", # required
1092
- # message_body: "String", # required
1093
- # delay_seconds: 1,
1094
- # message_attributes: {
1095
- # "String" => {
1096
- # string_value: "String",
1097
- # binary_value: "data",
1098
- # string_list_values: ["String"],
1099
- # binary_list_values: ["data"],
1100
- # data_type: "String", # required
1101
- # },
1102
- # },
1103
- # message_deduplication_id: "String",
1104
- # message_group_id: "String",
1105
- # }
1106
- # @!attribute [rw] id
1107
- # An identifier for the message in this batch. This is used to
1108
- # communicate the result. Note that the `Id`s of a batch request need
1109
- # to be unique within the request.
1110
- # @return [String]
1111
- #
1112
- # @!attribute [rw] message_body
1113
- # Body of the message.
1114
- # @return [String]
1115
- #
1116
- # @!attribute [rw] delay_seconds
1117
- # The number of seconds (0 to 900 - 15 minutes) to delay a specific
1118
- # message. Messages with a positive `DelaySeconds` value become
1119
- # available for processing after the delay time is finished. If you
1120
- # don't specify a value, the default value for the queue applies.
1121
- #
1122
- # <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
1123
- # You can set this parameter only on a queue level.
1124
- #
1125
- # </note>
1126
- # @return [Integer]
1127
- #
1128
- # @!attribute [rw] message_attributes
1129
- # Each message attribute consists of a Name, Type, and Value. For more
1130
- # information, see [Message Attribute Items and Validation][1] in the
1131
- # *Amazon SQS Developer Guide*.
1132
- #
1133
- #
1134
- #
1135
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
1136
- # @return [Hash<String,Types::MessageAttributeValue>]
1137
- #
1138
- # @!attribute [rw] message_deduplication_id
1139
- # This parameter applies only to FIFO (first-in-first-out) queues.
1140
- #
1141
- # The token used for deduplication of messages within a 5-minute
1142
- # minimum deduplication interval. If a message with a particular
1143
- # `MessageDeduplicationId` is sent successfully, subsequent messages
1144
- # with the same `MessageDeduplicationId` are accepted successfully but
1145
- # aren't delivered. For more information, see [ Exactly-Once
1146
- # Processing][1] in the *Amazon SQS Developer Guide*.
1147
- #
1148
- # * Every message must have a unique `MessageDeduplicationId`,
1149
- #
1150
- # * You may provide a `MessageDeduplicationId` explicitly.
1151
- #
1152
- # * If you aren't able to provide a `MessageDeduplicationId` and
1153
- # you enable `ContentBasedDeduplication` for your queue, Amazon
1154
- # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
1155
- # using the body of the message (but not the attributes of the
1156
- # message).
1157
- #
1158
- # * If you don't provide a `MessageDeduplicationId` and the queue
1159
- # doesn't have `ContentBasedDeduplication` set, the action fails
1160
- # with an error.
1161
- #
1162
- # * If the queue has `ContentBasedDeduplication` set, your
1163
- # `MessageDeduplicationId` overrides the generated one.
1164
- #
1165
- # * When `ContentBasedDeduplication` is in effect, messages with
1166
- # identical content sent within the deduplication interval are
1167
- # treated as duplicates and only one copy of the message is
1168
- # delivered.
1169
- #
1170
- # * You can also use `ContentBasedDeduplication` for messages with
1171
- # identical content to be treated as duplicates.
1172
- #
1173
- # * If you send one message with `ContentBasedDeduplication` enabled
1174
- # and then another message with a `MessageDeduplicationId` that is
1175
- # the same as the one generated for the first
1176
- # `MessageDeduplicationId`, the two messages are treated as
1177
- # duplicates and only one copy of the message is delivered.
1178
- #
1179
- # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
1180
- # message (this can be useful for troubleshooting delivery issues).
1181
- #
1182
- # If a message is sent successfully but the acknowledgement is lost
1183
- # and the message is resent with the same `MessageDeduplicationId`
1184
- # after the deduplication interval, Amazon SQS can't detect duplicate
1185
- # messages.
1186
- #
1187
- # </note>
1188
- #
1189
- # The length of `MessageDeduplicationId` is 128 characters.
1190
- # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1191
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1192
- # ``).
1193
- #
1194
- # For best practices of using `MessageDeduplicationId`, see [Using the
1195
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1196
- # Service Developer Guide*.
1197
- #
1198
- #
1199
- #
1200
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1201
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
1202
- # @return [String]
1203
- #
1204
- # @!attribute [rw] message_group_id
1205
- # This parameter applies only to FIFO (first-in-first-out) queues.
1206
- #
1207
- # The tag that specifies that a message belongs to a specific message
1208
- # group. Messages that belong to the same message group are processed
1209
- # in a FIFO manner (however, messages in different message groups
1210
- # might be processed out of order). To interleave multiple ordered
1211
- # streams within a single queue, use `MessageGroupId` values (for
1212
- # example, session data for multiple users). In this scenario,
1213
- # multiple readers can process the queue, but the session data of each
1214
- # user is processed in a FIFO fashion.
1215
- #
1216
- # * You must associate a non-empty `MessageGroupId` with a message. If
1217
- # you don't provide a `MessageGroupId`, the action fails.
1218
- #
1219
- # * `ReceiveMessage` might return messages with multiple
1220
- # `MessageGroupId` values. For each `MessageGroupId`, the messages
1221
- # are sorted by time sent. The caller can't specify a
1222
- # `MessageGroupId`.
1223
- #
1224
- # The length of `MessageGroupId` is 128 characters. Valid values are
1225
- # alphanumeric characters and punctuation ``
1226
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1227
- #
1228
- # For best practices of using `MessageGroupId`, see [Using the
1229
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1230
- # Developer Guide*.
1231
- #
1232
- #
1233
- #
1234
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
1235
- # @return [String]
1236
- class SendMessageBatchRequestEntry < Struct.new(
1237
- :id,
1238
- :message_body,
1239
- :delay_seconds,
1240
- :message_attributes,
1241
- :message_deduplication_id,
1242
- :message_group_id)
1243
- include Aws::Structure
1244
- end
1152
+ # @note When making an API call, you may pass SendMessageBatchRequest
1153
+ # data as a hash:
1154
+ #
1155
+ # {
1156
+ # queue_url: "String", # required
1157
+ # entries: [ # required
1158
+ # {
1159
+ # id: "String", # required
1160
+ # message_body: "String", # required
1161
+ # delay_seconds: 1,
1162
+ # message_attributes: {
1163
+ # "String" => {
1164
+ # string_value: "String",
1165
+ # binary_value: "data",
1166
+ # string_list_values: ["String"],
1167
+ # binary_list_values: ["data"],
1168
+ # data_type: "String", # required
1169
+ # },
1170
+ # },
1171
+ # message_deduplication_id: "String",
1172
+ # message_group_id: "String",
1173
+ # },
1174
+ # ],
1175
+ # }
1176
+ #
1177
+ # @!attribute [rw] queue_url
1178
+ # The URL of the Amazon SQS queue to which batched messages are sent.
1179
+ #
1180
+ # Queue URLs are case-sensitive.
1181
+ # @return [String]
1182
+ #
1183
+ # @!attribute [rw] entries
1184
+ # A list of ` SendMessageBatchRequestEntry ` items.
1185
+ # @return [Array<Types::SendMessageBatchRequestEntry>]
1186
+ #
1187
+ class SendMessageBatchRequest < Struct.new(
1188
+ :queue_url,
1189
+ :entries)
1190
+ include Aws::Structure
1191
+ end
1245
1192
 
1246
- # For each message in the batch, the response contains a
1247
- # SendMessageBatchResultEntry tag if the message succeeds or a
1248
- # BatchResultErrorEntry tag if the message fails.
1249
- # @!attribute [rw] successful
1250
- # A list of SendMessageBatchResultEntry items.
1251
- # @return [Array<Types::SendMessageBatchResultEntry>]
1252
- #
1253
- # @!attribute [rw] failed
1254
- # A list of BatchResultErrorEntry items with the error detail about
1255
- # each message that could not be enqueued.
1256
- # @return [Array<Types::BatchResultErrorEntry>]
1257
- class SendMessageBatchResult < Struct.new(
1258
- :successful,
1259
- :failed)
1260
- include Aws::Structure
1261
- end
1193
+ # Contains the details of a single Amazon SQS message along with an
1194
+ # `Id`.
1195
+ #
1196
+ # @note When making an API call, you may pass SendMessageBatchRequestEntry
1197
+ # data as a hash:
1198
+ #
1199
+ # {
1200
+ # id: "String", # required
1201
+ # message_body: "String", # required
1202
+ # delay_seconds: 1,
1203
+ # message_attributes: {
1204
+ # "String" => {
1205
+ # string_value: "String",
1206
+ # binary_value: "data",
1207
+ # string_list_values: ["String"],
1208
+ # binary_list_values: ["data"],
1209
+ # data_type: "String", # required
1210
+ # },
1211
+ # },
1212
+ # message_deduplication_id: "String",
1213
+ # message_group_id: "String",
1214
+ # }
1215
+ #
1216
+ # @!attribute [rw] id
1217
+ # An identifier for a message in this batch used to communicate the
1218
+ # result.
1219
+ #
1220
+ # <note markdown="1"> The `Id`s of a batch request need to be unique within a request
1221
+ #
1222
+ # </note>
1223
+ # @return [String]
1224
+ #
1225
+ # @!attribute [rw] message_body
1226
+ # The body of the message.
1227
+ # @return [String]
1228
+ #
1229
+ # @!attribute [rw] delay_seconds
1230
+ # The number of seconds for which a specific message is delayed. Valid
1231
+ # values: 0 to 900. Maximum: 15 minutes. Messages with a positive
1232
+ # `DelaySeconds` value become available for processing after the delay
1233
+ # period is finished. If you don't specify a value, the default value
1234
+ # for the queue is applied.
1235
+ #
1236
+ # <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
1237
+ # You can set this parameter only on a queue level.
1238
+ #
1239
+ # </note>
1240
+ # @return [Integer]
1241
+ #
1242
+ # @!attribute [rw] message_attributes
1243
+ # Each message attribute consists of a `Name`, `Type`, and `Value`.
1244
+ # For more information, see [Message Attribute Items and
1245
+ # Validation][1] in the *Amazon SQS Developer Guide*.
1246
+ #
1247
+ #
1248
+ #
1249
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
1250
+ # @return [Hash<String,Types::MessageAttributeValue>]
1251
+ #
1252
+ # @!attribute [rw] message_deduplication_id
1253
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1254
+ #
1255
+ # The token used for deduplication of messages within a 5-minute
1256
+ # minimum deduplication interval. If a message with a particular
1257
+ # `MessageDeduplicationId` is sent successfully, subsequent messages
1258
+ # with the same `MessageDeduplicationId` are accepted successfully but
1259
+ # aren't delivered. For more information, see [ Exactly-Once
1260
+ # Processing][1] in the *Amazon SQS Developer Guide*.
1261
+ #
1262
+ # * Every message must have a unique `MessageDeduplicationId`,
1263
+ #
1264
+ # * You may provide a `MessageDeduplicationId` explicitly.
1265
+ #
1266
+ # * If you aren't able to provide a `MessageDeduplicationId` and
1267
+ # you enable `ContentBasedDeduplication` for your queue, Amazon
1268
+ # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
1269
+ # using the body of the message (but not the attributes of the
1270
+ # message).
1271
+ #
1272
+ # * If you don't provide a `MessageDeduplicationId` and the queue
1273
+ # doesn't have `ContentBasedDeduplication` set, the action fails
1274
+ # with an error.
1275
+ #
1276
+ # * If the queue has `ContentBasedDeduplication` set, your
1277
+ # `MessageDeduplicationId` overrides the generated one.
1278
+ #
1279
+ # * When `ContentBasedDeduplication` is in effect, messages with
1280
+ # identical content sent within the deduplication interval are
1281
+ # treated as duplicates and only one copy of the message is
1282
+ # delivered.
1283
+ #
1284
+ # * You can also use `ContentBasedDeduplication` for messages with
1285
+ # identical content to be treated as duplicates.
1286
+ #
1287
+ # * If you send one message with `ContentBasedDeduplication` enabled
1288
+ # and then another message with a `MessageDeduplicationId` that is
1289
+ # the same as the one generated for the first
1290
+ # `MessageDeduplicationId`, the two messages are treated as
1291
+ # duplicates and only one copy of the message is delivered.
1292
+ #
1293
+ # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
1294
+ # message (this can be useful for troubleshooting delivery issues).
1295
+ #
1296
+ # If a message is sent successfully but the acknowledgement is lost
1297
+ # and the message is resent with the same `MessageDeduplicationId`
1298
+ # after the deduplication interval, Amazon SQS can't detect duplicate
1299
+ # messages.
1300
+ #
1301
+ # </note>
1302
+ #
1303
+ # The length of `MessageDeduplicationId` is 128 characters.
1304
+ # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1305
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1306
+ # ``).
1307
+ #
1308
+ # For best practices of using `MessageDeduplicationId`, see [Using the
1309
+ # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1310
+ # Service Developer Guide*.
1311
+ #
1312
+ #
1313
+ #
1314
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1315
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
1316
+ # @return [String]
1317
+ #
1318
+ # @!attribute [rw] message_group_id
1319
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1320
+ #
1321
+ # The tag that specifies that a message belongs to a specific message
1322
+ # group. Messages that belong to the same message group are processed
1323
+ # in a FIFO manner (however, messages in different message groups
1324
+ # might be processed out of order). To interleave multiple ordered
1325
+ # streams within a single queue, use `MessageGroupId` values (for
1326
+ # example, session data for multiple users). In this scenario,
1327
+ # multiple readers can process the queue, but the session data of each
1328
+ # user is processed in a FIFO fashion.
1329
+ #
1330
+ # * You must associate a non-empty `MessageGroupId` with a message. If
1331
+ # you don't provide a `MessageGroupId`, the action fails.
1332
+ #
1333
+ # * `ReceiveMessage` might return messages with multiple
1334
+ # `MessageGroupId` values. For each `MessageGroupId`, the messages
1335
+ # are sorted by time sent. The caller can't specify a
1336
+ # `MessageGroupId`.
1337
+ #
1338
+ # The length of `MessageGroupId` is 128 characters. Valid values are
1339
+ # alphanumeric characters and punctuation ``
1340
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1341
+ #
1342
+ # For best practices of using `MessageGroupId`, see [Using the
1343
+ # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1344
+ # Developer Guide*.
1345
+ #
1346
+ #
1347
+ #
1348
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
1349
+ # @return [String]
1350
+ #
1351
+ class SendMessageBatchRequestEntry < Struct.new(
1352
+ :id,
1353
+ :message_body,
1354
+ :delay_seconds,
1355
+ :message_attributes,
1356
+ :message_deduplication_id,
1357
+ :message_group_id)
1358
+ include Aws::Structure
1359
+ end
1262
1360
 
1263
- # Encloses a message ID for successfully enqueued message of a
1264
- # SendMessageBatch.
1265
- # @!attribute [rw] id
1266
- # An identifier for the message in this batch.
1267
- # @return [String]
1268
- #
1269
- # @!attribute [rw] message_id
1270
- # An identifier for the message.
1271
- # @return [String]
1272
- #
1273
- # @!attribute [rw] md5_of_message_body
1274
- # An MD5 digest of the non-URL-encoded message body string. This can
1275
- # be used to verify that Amazon SQS received the message correctly.
1276
- # Amazon SQS first URL decodes the message before creating the MD5
1277
- # digest. For information about MD5, see [RFC1321][1].
1278
- #
1279
- #
1280
- #
1281
- # [1]: https://www.ietf.org/rfc/rfc1321.txt
1282
- # @return [String]
1283
- #
1284
- # @!attribute [rw] md5_of_message_attributes
1285
- # An MD5 digest of the non-URL-encoded message attribute string. This
1286
- # can be used to verify that Amazon SQS received the message batch
1287
- # correctly. Amazon SQS first URL decodes the message before creating
1288
- # the MD5 digest. For information about MD5, see [RFC1321][1].
1289
- #
1290
- #
1291
- #
1292
- # [1]: https://www.ietf.org/rfc/rfc1321.txt
1293
- # @return [String]
1294
- #
1295
- # @!attribute [rw] sequence_number
1296
- # *This element applies only to FIFO (first-in-first-out) queues.*
1297
- #
1298
- # A large, non-consecutive number that Amazon SQS assigns to each
1299
- # message.
1300
- #
1301
- # The length of `SequenceNumber` is 128 bits. As `SequenceNumber`
1302
- # continues to increase for a particular `MessageGroupId`.
1303
- # @return [String]
1304
- class SendMessageBatchResultEntry < Struct.new(
1305
- :id,
1306
- :message_id,
1307
- :md5_of_message_body,
1308
- :md5_of_message_attributes,
1309
- :sequence_number)
1310
- include Aws::Structure
1311
- end
1361
+ # For each message in the batch, the response contains a `
1362
+ # SendMessageBatchResultEntry ` tag if the message succeeds or a `
1363
+ # BatchResultErrorEntry ` tag if the message fails.
1364
+ #
1365
+ # @!attribute [rw] successful
1366
+ # A list of ` SendMessageBatchResultEntry ` items.
1367
+ # @return [Array<Types::SendMessageBatchResultEntry>]
1368
+ #
1369
+ # @!attribute [rw] failed
1370
+ # A list of ` BatchResultErrorEntry ` items with error details about
1371
+ # each message that can't be enqueued.
1372
+ # @return [Array<Types::BatchResultErrorEntry>]
1373
+ #
1374
+ class SendMessageBatchResult < Struct.new(
1375
+ :successful,
1376
+ :failed)
1377
+ include Aws::Structure
1378
+ end
1312
1379
 
1313
- # @note When making an API call, pass SendMessageRequest
1314
- # data as a hash:
1315
- #
1316
- # {
1317
- # queue_url: "String", # required
1318
- # message_body: "String", # required
1319
- # delay_seconds: 1,
1320
- # message_attributes: {
1321
- # "String" => {
1322
- # string_value: "String",
1323
- # binary_value: "data",
1324
- # string_list_values: ["String"],
1325
- # binary_list_values: ["data"],
1326
- # data_type: "String", # required
1327
- # },
1328
- # },
1329
- # message_deduplication_id: "String",
1330
- # message_group_id: "String",
1331
- # }
1332
- # @!attribute [rw] queue_url
1333
- # The URL of the Amazon SQS queue to take action on.
1334
- #
1335
- # Queue URLs are case-sensitive.
1336
- # @return [String]
1337
- #
1338
- # @!attribute [rw] message_body
1339
- # The message to send. String maximum 256 KB in size. For a list of
1340
- # allowed characters, see the preceding note.
1341
- # @return [String]
1342
- #
1343
- # @!attribute [rw] delay_seconds
1344
- # The number of seconds (0 to 900 - 15 minutes) to delay a specific
1345
- # message. Messages with a positive `DelaySeconds` value become
1346
- # available for processing after the delay time is finished. If you
1347
- # don't specify a value, the default value for the queue applies.
1348
- #
1349
- # <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
1350
- # You can set this parameter only on a queue level.
1351
- #
1352
- # </note>
1353
- # @return [Integer]
1354
- #
1355
- # @!attribute [rw] message_attributes
1356
- # Each message attribute consists of a Name, Type, and Value. For more
1357
- # information, see [Message Attribute Items and Validation][1] in the
1358
- # *Amazon SQS Developer Guide*.
1359
- #
1360
- #
1361
- #
1362
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
1363
- # @return [Hash<String,Types::MessageAttributeValue>]
1364
- #
1365
- # @!attribute [rw] message_deduplication_id
1366
- # This parameter applies only to FIFO (first-in-first-out) queues.
1367
- #
1368
- # The token used for deduplication of sent messages. If a message with
1369
- # a particular `MessageDeduplicationId` is sent successfully, any
1370
- # messages sent with the same `MessageDeduplicationId` are accepted
1371
- # successfully but aren't delivered during the 5-minute deduplication
1372
- # interval. For more information, see [ Exactly-Once Processing][1] in
1373
- # the *Amazon SQS Developer Guide*.
1374
- #
1375
- # * Every message must have a unique `MessageDeduplicationId`,
1376
- #
1377
- # * You may provide a `MessageDeduplicationId` explicitly.
1378
- #
1379
- # * If you aren't able to provide a `MessageDeduplicationId` and
1380
- # you enable `ContentBasedDeduplication` for your queue, Amazon
1381
- # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
1382
- # using the body of the message (but not the attributes of the
1383
- # message).
1384
- #
1385
- # * If you don't provide a `MessageDeduplicationId` and the queue
1386
- # doesn't have `ContentBasedDeduplication` set, the action fails
1387
- # with an error.
1388
- #
1389
- # * If the queue has `ContentBasedDeduplication` set, your
1390
- # `MessageDeduplicationId` overrides the generated one.
1391
- #
1392
- # * When `ContentBasedDeduplication` is in effect, messages with
1393
- # identical content sent within the deduplication interval are
1394
- # treated as duplicates and only one copy of the message is
1395
- # delivered.
1396
- #
1397
- # * You can also use `ContentBasedDeduplication` for messages with
1398
- # identical content to be treated as duplicates.
1399
- #
1400
- # * If you send one message with `ContentBasedDeduplication` enabled
1401
- # and then another message with a `MessageDeduplicationId` that is
1402
- # the same as the one generated for the first
1403
- # `MessageDeduplicationId`, the two messages are treated as
1404
- # duplicates and only one copy of the message is delivered.
1405
- #
1406
- # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
1407
- # message (this can be useful for troubleshooting delivery issues).
1408
- #
1409
- # If a message is sent successfully but the acknowledgdment is lost
1410
- # and the message is resent with the same `MessageDeduplicationId`
1411
- # after the deduplication interval, Amazon SQS can't detect duplicate
1412
- # messages.
1413
- #
1414
- # </note>
1415
- #
1416
- # The length of `MessageDeduplicationId` is 128 characters.
1417
- # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1418
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1419
- # ``).
1420
- #
1421
- # For best practices of using `MessageDeduplicationId`, see [Using the
1422
- # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1423
- # Service Developer Guide*.
1424
- #
1425
- #
1426
- #
1427
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1428
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
1429
- # @return [String]
1430
- #
1431
- # @!attribute [rw] message_group_id
1432
- # This parameter applies only to FIFO (first-in-first-out) queues.
1433
- #
1434
- # The tag that specifies that a message belongs to a specific message
1435
- # group. Messages that belong to the same message group are processed
1436
- # in a FIFO manner (however, messages in different message groups
1437
- # might be processed out of order). To interleave multiple ordered
1438
- # streams within a single queue, use `MessageGroupId` values (for
1439
- # example, session data for multiple users). In this scenario,
1440
- # multiple readers can process the queue, but the session data of each
1441
- # user is processed in a FIFO fashion.
1442
- #
1443
- # * You must associate a non-empty `MessageGroupId` with a message. If
1444
- # you don't provide a `MessageGroupId`, the action fails.
1445
- #
1446
- # * `ReceiveMessage` might return messages with multiple
1447
- # `MessageGroupId` values. For each `MessageGroupId`, the messages
1448
- # are sorted by time sent. The caller can't specify a
1449
- # `MessageGroupId`.
1450
- #
1451
- # The length of `MessageGroupId` is 128 characters. Valid values are
1452
- # alphanumeric characters and punctuation ``
1453
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1454
- #
1455
- # For best practices of using `MessageGroupId`, see [Using the
1456
- # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1457
- # Developer Guide*.
1458
- #
1459
- #
1460
- #
1461
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
1462
- # @return [String]
1463
- class SendMessageRequest < Struct.new(
1464
- :queue_url,
1465
- :message_body,
1466
- :delay_seconds,
1467
- :message_attributes,
1468
- :message_deduplication_id,
1469
- :message_group_id)
1470
- include Aws::Structure
1471
- end
1380
+ # Encloses a `MessageId` for a successfully-enqueued message in a `
1381
+ # SendMessageBatch `.
1382
+ #
1383
+ # @!attribute [rw] id
1384
+ # An identifier for the message in this batch.
1385
+ # @return [String]
1386
+ #
1387
+ # @!attribute [rw] message_id
1388
+ # An identifier for the message.
1389
+ # @return [String]
1390
+ #
1391
+ # @!attribute [rw] md5_of_message_body
1392
+ # An MD5 digest of the non-URL-encoded message attribute string. You
1393
+ # can use this attribute to verify that Amazon SQS received the
1394
+ # message correctly. Amazon SQS URL-decodes the message before
1395
+ # creating the MD5 digest. For information on MD5, see [RFC1321][1].
1396
+ #
1397
+ #
1398
+ #
1399
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
1400
+ # @return [String]
1401
+ #
1402
+ # @!attribute [rw] md5_of_message_attributes
1403
+ # An MD5 digest of the non-URL-encoded message attribute string. You
1404
+ # can use this attribute to verify that Amazon SQS received the
1405
+ # message correctly. Amazon SQS URL-decodes the message before
1406
+ # creating the MD5 digest. For information on MD5, see [RFC1321][1].
1407
+ #
1408
+ #
1409
+ #
1410
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
1411
+ # @return [String]
1412
+ #
1413
+ # @!attribute [rw] sequence_number
1414
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1415
+ #
1416
+ # A large, non-consecutive number that Amazon SQS assigns to each
1417
+ # message.
1418
+ #
1419
+ # The length of `SequenceNumber` is 128 bits. As `SequenceNumber`
1420
+ # continues to increase for a particular `MessageGroupId`.
1421
+ # @return [String]
1422
+ #
1423
+ class SendMessageBatchResultEntry < Struct.new(
1424
+ :id,
1425
+ :message_id,
1426
+ :md5_of_message_body,
1427
+ :md5_of_message_attributes,
1428
+ :sequence_number)
1429
+ include Aws::Structure
1430
+ end
1472
1431
 
1473
- # The MD5OfMessageBody and MessageId elements.
1474
- # @!attribute [rw] md5_of_message_body
1475
- # An MD5 digest of the non-URL-encoded message body string. This can
1476
- # be used to verify that Amazon SQS received the message correctly.
1477
- # Amazon SQS first URL decodes the message before creating the MD5
1478
- # digest. For information about MD5, see [RFC1321][1].
1479
- #
1480
- #
1481
- #
1482
- # [1]: https://www.ietf.org/rfc/rfc1321.txt
1483
- # @return [String]
1484
- #
1485
- # @!attribute [rw] md5_of_message_attributes
1486
- # An MD5 digest of the non-URL-encoded message attribute string. This
1487
- # can be used to verify that Amazon SQS received the message
1488
- # correctly. Amazon SQS first URL decodes the message before creating
1489
- # the MD5 digest. For information about MD5, see [RFC1321][1].
1490
- #
1491
- #
1492
- #
1493
- # [1]: https://www.ietf.org/rfc/rfc1321.txt
1494
- # @return [String]
1495
- #
1496
- # @!attribute [rw] message_id
1497
- # An element containing the message ID of the message sent to the
1498
- # queue. For more information, see [Queue and Message Identifiers][1]
1499
- # in the *Amazon SQS Developer Guide*.
1500
- #
1501
- #
1502
- #
1503
- # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1504
- # @return [String]
1505
- #
1506
- # @!attribute [rw] sequence_number
1507
- # *This element applies only to FIFO (first-in-first-out) queues.*
1508
- #
1509
- # A large, non-consecutive number that Amazon SQS assigns to each
1510
- # message.
1511
- #
1512
- # The length of `SequenceNumber` is 128 bits. `SequenceNumber`
1513
- # continues to increase for a particular `MessageGroupId`.
1514
- # @return [String]
1515
- class SendMessageResult < Struct.new(
1516
- :md5_of_message_body,
1517
- :md5_of_message_attributes,
1518
- :message_id,
1519
- :sequence_number)
1520
- include Aws::Structure
1521
- end
1432
+ # @note When making an API call, you may pass SendMessageRequest
1433
+ # data as a hash:
1434
+ #
1435
+ # {
1436
+ # queue_url: "String", # required
1437
+ # message_body: "String", # required
1438
+ # delay_seconds: 1,
1439
+ # message_attributes: {
1440
+ # "String" => {
1441
+ # string_value: "String",
1442
+ # binary_value: "data",
1443
+ # string_list_values: ["String"],
1444
+ # binary_list_values: ["data"],
1445
+ # data_type: "String", # required
1446
+ # },
1447
+ # },
1448
+ # message_deduplication_id: "String",
1449
+ # message_group_id: "String",
1450
+ # }
1451
+ #
1452
+ # @!attribute [rw] queue_url
1453
+ # The URL of the Amazon SQS queue to which a message is sent.
1454
+ #
1455
+ # Queue URLs are case-sensitive.
1456
+ # @return [String]
1457
+ #
1458
+ # @!attribute [rw] message_body
1459
+ # The message to send. The maximum string size is 256 KB.
1460
+ #
1461
+ # The following list shows the characters (in Unicode) that are
1462
+ # allowed in your message, according to the W3C XML specification:
1463
+ #
1464
+ # * `#x9`
1465
+ #
1466
+ # * `#xA`
1467
+ #
1468
+ # * `#xD`
1469
+ #
1470
+ # * `#x20` to `#xD7FF`
1471
+ #
1472
+ # * `#xE000` to `#xFFFD`
1473
+ #
1474
+ # * `#x10000` to `#x10FFFF`
1475
+ #
1476
+ # For more information, see [RFC1321][1]. If you send any characters
1477
+ # that aren't included in this list, your request is rejected.
1478
+ #
1479
+ #
1480
+ #
1481
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] delay_seconds
1485
+ # The number of seconds to delay a specific message. Valid values: 0
1486
+ # to 900. Maximum: 15 minutes. Messages with a positive `DelaySeconds`
1487
+ # value become available for processing after the delay period is
1488
+ # finished. If you don't specify a value, the default value for the
1489
+ # queue applies.
1490
+ #
1491
+ # <note markdown="1"> When you set `FifoQueue`, you can't set `DelaySeconds` per message.
1492
+ # You can set this parameter only on a queue level.
1493
+ #
1494
+ # </note>
1495
+ # @return [Integer]
1496
+ #
1497
+ # @!attribute [rw] message_attributes
1498
+ # Each message attribute consists of a `Name`, `Type`, and `Value`.
1499
+ # For more information, see [Message Attribute Items and
1500
+ # Validation][1] in the *Amazon SQS Developer Guide*.
1501
+ #
1502
+ #
1503
+ #
1504
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-message-attributes.html#message-attributes-items-validation
1505
+ # @return [Hash<String,Types::MessageAttributeValue>]
1506
+ #
1507
+ # @!attribute [rw] message_deduplication_id
1508
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1509
+ #
1510
+ # The token used for deduplication of sent messages. If a message with
1511
+ # a particular `MessageDeduplicationId` is sent successfully, any
1512
+ # messages sent with the same `MessageDeduplicationId` are accepted
1513
+ # successfully but aren't delivered during the 5-minute deduplication
1514
+ # interval. For more information, see [ Exactly-Once Processing][1] in
1515
+ # the *Amazon SQS Developer Guide*.
1516
+ #
1517
+ # * Every message must have a unique `MessageDeduplicationId`,
1518
+ #
1519
+ # * You may provide a `MessageDeduplicationId` explicitly.
1520
+ #
1521
+ # * If you aren't able to provide a `MessageDeduplicationId` and
1522
+ # you enable `ContentBasedDeduplication` for your queue, Amazon
1523
+ # SQS uses a SHA-256 hash to generate the `MessageDeduplicationId`
1524
+ # using the body of the message (but not the attributes of the
1525
+ # message).
1526
+ #
1527
+ # * If you don't provide a `MessageDeduplicationId` and the queue
1528
+ # doesn't have `ContentBasedDeduplication` set, the action fails
1529
+ # with an error.
1530
+ #
1531
+ # * If the queue has `ContentBasedDeduplication` set, your
1532
+ # `MessageDeduplicationId` overrides the generated one.
1533
+ #
1534
+ # * When `ContentBasedDeduplication` is in effect, messages with
1535
+ # identical content sent within the deduplication interval are
1536
+ # treated as duplicates and only one copy of the message is
1537
+ # delivered.
1538
+ #
1539
+ # * You can also use `ContentBasedDeduplication` for messages with
1540
+ # identical content to be treated as duplicates.
1541
+ #
1542
+ # * If you send one message with `ContentBasedDeduplication` enabled
1543
+ # and then another message with a `MessageDeduplicationId` that is
1544
+ # the same as the one generated for the first
1545
+ # `MessageDeduplicationId`, the two messages are treated as
1546
+ # duplicates and only one copy of the message is delivered.
1547
+ #
1548
+ # <note markdown="1"> The `MessageDeduplicationId` is available to the recipient of the
1549
+ # message (this can be useful for troubleshooting delivery issues).
1550
+ #
1551
+ # If a message is sent successfully but the acknowledgement is lost
1552
+ # and the message is resent with the same `MessageDeduplicationId`
1553
+ # after the deduplication interval, Amazon SQS can't detect duplicate
1554
+ # messages.
1555
+ #
1556
+ # </note>
1557
+ #
1558
+ # The length of `MessageDeduplicationId` is 128 characters.
1559
+ # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1560
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
1561
+ # ``).
1562
+ #
1563
+ # For best practices of using `MessageDeduplicationId`, see [Using the
1564
+ # MessageDeduplicationId Property][2] in the *Amazon Simple Queue
1565
+ # Service Developer Guide*.
1566
+ #
1567
+ #
1568
+ #
1569
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1570
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagededuplicationid-property
1571
+ # @return [String]
1572
+ #
1573
+ # @!attribute [rw] message_group_id
1574
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1575
+ #
1576
+ # The tag that specifies that a message belongs to a specific message
1577
+ # group. Messages that belong to the same message group are processed
1578
+ # in a FIFO manner (however, messages in different message groups
1579
+ # might be processed out of order). To interleave multiple ordered
1580
+ # streams within a single queue, use `MessageGroupId` values (for
1581
+ # example, session data for multiple users). In this scenario,
1582
+ # multiple readers can process the queue, but the session data of each
1583
+ # user is processed in a FIFO fashion.
1584
+ #
1585
+ # * You must associate a non-empty `MessageGroupId` with a message. If
1586
+ # you don't provide a `MessageGroupId`, the action fails.
1587
+ #
1588
+ # * `ReceiveMessage` might return messages with multiple
1589
+ # `MessageGroupId` values. For each `MessageGroupId`, the messages
1590
+ # are sorted by time sent. The caller can't specify a
1591
+ # `MessageGroupId`.
1592
+ #
1593
+ # The length of `MessageGroupId` is 128 characters. Valid values are
1594
+ # alphanumeric characters and punctuation ``
1595
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
1596
+ #
1597
+ # For best practices of using `MessageGroupId`, see [Using the
1598
+ # MessageGroupId Property][1] in the *Amazon Simple Queue Service
1599
+ # Developer Guide*.
1600
+ #
1601
+ #
1602
+ #
1603
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queue-recommendations.html#using-messagegroupid-property
1604
+ # @return [String]
1605
+ #
1606
+ class SendMessageRequest < Struct.new(
1607
+ :queue_url,
1608
+ :message_body,
1609
+ :delay_seconds,
1610
+ :message_attributes,
1611
+ :message_deduplication_id,
1612
+ :message_group_id)
1613
+ include Aws::Structure
1614
+ end
1522
1615
 
1523
- # @note When making an API call, pass SetQueueAttributesRequest
1524
- # data as a hash:
1525
- #
1526
- # {
1527
- # queue_url: "String", # required
1528
- # attributes: { # required
1529
- # "All" => "String",
1530
- # },
1531
- # }
1532
- # @!attribute [rw] queue_url
1533
- # The URL of the Amazon SQS queue to take action on.
1534
- #
1535
- # Queue URLs are case-sensitive.
1536
- # @return [String]
1537
- #
1538
- # @!attribute [rw] attributes
1539
- # A map of attributes to set.
1540
- #
1541
- # The following lists the names, descriptions, and values of the
1542
- # special request parameters that the `SetQueueAttributes` action
1543
- # uses:
1544
- #
1545
- # * `DelaySeconds` - The number of seconds for which the delivery of
1546
- # all messages in the queue is delayed. An integer from 0 to 900 (15
1547
- # minutes). The default is 0 (zero).
1548
- #
1549
- # * `MaximumMessageSize` - The limit of how many bytes a message can
1550
- # contain before Amazon SQS rejects it. An integer from 1,024 bytes
1551
- # (1 KiB) up to 262,144 bytes (256 KiB). The default is 262,144 (256
1552
- # KiB).
1553
- #
1554
- # * `MessageRetentionPeriod` - The number of seconds for which Amazon
1555
- # SQS retains a message. An integer representing seconds, from 60 (1
1556
- # minute) to 120,9600 (14 days). The default is 345,600 (4 days).
1557
- #
1558
- # * `Policy` - The queue's policy. A valid AWS policy. For more
1559
- # information about policy structure, see [Overview of AWS IAM
1560
- # Policies][1] in the *Amazon IAM User Guide*.
1561
- #
1562
- # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
1563
- # a ReceiveMessage action will wait for a message to arrive. An
1564
- # integer from 0 to 20 (seconds). The default is 0.
1565
- #
1566
- # * `RedrivePolicy` - The parameters for the dead letter queue
1567
- # functionality of the source queue. For more information about the
1568
- # redrive policy and dead letter queues, see [Using Amazon SQS Dead
1569
- # Letter Queues][2] in the *Amazon SQS Developer Guide*.
1570
- #
1571
- # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
1572
- # Similarly, the dead letter queue of a standard queue must also be
1573
- # a standard queue.
1574
- #
1575
- # </note>
1576
- #
1577
- # * `VisibilityTimeout` - The visibility timeout for the queue. An
1578
- # integer from 0 to 43200 (12 hours). The default is 30. For more
1579
- # information about the visibility timeout, see [Visibility
1580
- # Timeout][3] in the *Amazon SQS Developer Guide*.
1581
- #
1582
- # The following attribute applies only to [FIFO (first-in-first-out)
1583
- # queues][4]\:
1584
- #
1585
- # * `ContentBasedDeduplication` - Enables content-based deduplication.
1586
- # For more information, see [Exactly-Once Processing][5] in the
1587
- # *Amazon SQS Developer Guide*.
1588
- #
1589
- # * Every message must have a unique `MessageDeduplicationId`,
1590
- #
1591
- # * You may provide a `MessageDeduplicationId` explicitly.
1592
- #
1593
- # * If you aren't able to provide a `MessageDeduplicationId` and
1594
- # you enable `ContentBasedDeduplication` for your queue, Amazon
1595
- # SQS uses a SHA-256 hash to generate the
1596
- # `MessageDeduplicationId` using the body of the message (but
1597
- # not the attributes of the message).
1598
- #
1599
- # * If you don't provide a `MessageDeduplicationId` and the queue
1600
- # doesn't have `ContentBasedDeduplication` set, the action
1601
- # fails with an error.
1602
- #
1603
- # * If the queue has `ContentBasedDeduplication` set, your
1604
- # `MessageDeduplicationId` overrides the generated one.
1605
- #
1606
- # * When `ContentBasedDeduplication` is in effect, messages with
1607
- # identical content sent within the deduplication interval are
1608
- # treated as duplicates and only one copy of the message is
1609
- # delivered.
1610
- #
1611
- # * You can also use `ContentBasedDeduplication` for messages with
1612
- # identical content to be treated as duplicates.
1613
- #
1614
- # * If you send one message with `ContentBasedDeduplication` enabled
1615
- # and then another message with a `MessageDeduplicationId` that is
1616
- # the same as the one generated for the first
1617
- # `MessageDeduplicationId`, the two messages are treated as
1618
- # duplicates and only one copy of the message is delivered.
1619
- #
1620
- # Any other valid special request parameters that are specified (such
1621
- # as `ApproximateNumberOfMessages`,
1622
- # `ApproximateNumberOfMessagesDelayed`,
1623
- # `ApproximateNumberOfMessagesNotVisible`, `CreatedTimestamp`,
1624
- # `LastModifiedTimestamp`, and `QueueArn`) will be ignored.
1625
- #
1626
- #
1627
- #
1628
- # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
1629
- # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1630
- # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1631
- # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1632
- # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1633
- # @return [Hash<String,String>]
1634
- class SetQueueAttributesRequest < Struct.new(
1635
- :queue_url,
1636
- :attributes)
1637
- include Aws::Structure
1638
- end
1616
+ # The `MD5OfMessageBody` and `MessageId` elements.
1617
+ #
1618
+ # @!attribute [rw] md5_of_message_body
1619
+ # An MD5 digest of the non-URL-encoded message attribute string. You
1620
+ # can use this attribute to verify that Amazon SQS received the
1621
+ # message correctly. Amazon SQS URL-decodes the message before
1622
+ # creating the MD5 digest. For information on MD5, see [RFC1321][1].
1623
+ #
1624
+ #
1625
+ #
1626
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
1627
+ # @return [String]
1628
+ #
1629
+ # @!attribute [rw] md5_of_message_attributes
1630
+ # An MD5 digest of the non-URL-encoded message attribute string. You
1631
+ # can use this attribute to verify that Amazon SQS received the
1632
+ # message correctly. Amazon SQS URL-decodes the message before
1633
+ # creating the MD5 digest. For information on MD5, see [RFC1321][1].
1634
+ #
1635
+ #
1636
+ #
1637
+ # [1]: https://www.ietf.org/rfc/rfc1321.txt
1638
+ # @return [String]
1639
+ #
1640
+ # @!attribute [rw] message_id
1641
+ # An attribute containing the `MessageId` of the message sent to the
1642
+ # queue. For more information, see [Queue and Message Identifiers][1]
1643
+ # in the *Amazon SQS Developer Guide*.
1644
+ #
1645
+ #
1646
+ #
1647
+ # [1]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-message-identifiers.html
1648
+ # @return [String]
1649
+ #
1650
+ # @!attribute [rw] sequence_number
1651
+ # This parameter applies only to FIFO (first-in-first-out) queues.
1652
+ #
1653
+ # A large, non-consecutive number that Amazon SQS assigns to each
1654
+ # message.
1655
+ #
1656
+ # The length of `SequenceNumber` is 128 bits. `SequenceNumber`
1657
+ # continues to increase for a particular `MessageGroupId`.
1658
+ # @return [String]
1659
+ #
1660
+ class SendMessageResult < Struct.new(
1661
+ :md5_of_message_body,
1662
+ :md5_of_message_attributes,
1663
+ :message_id,
1664
+ :sequence_number)
1665
+ include Aws::Structure
1666
+ end
1639
1667
 
1668
+ # @note When making an API call, you may pass SetQueueAttributesRequest
1669
+ # data as a hash:
1670
+ #
1671
+ # {
1672
+ # queue_url: "String", # required
1673
+ # attributes: { # required
1674
+ # "All" => "String",
1675
+ # },
1676
+ # }
1677
+ #
1678
+ # @!attribute [rw] queue_url
1679
+ # The URL of the Amazon SQS queue whose attributes are set.
1680
+ #
1681
+ # Queue URLs are case-sensitive.
1682
+ # @return [String]
1683
+ #
1684
+ # @!attribute [rw] attributes
1685
+ # A map of attributes to set.
1686
+ #
1687
+ # The following lists the names, descriptions, and values of the
1688
+ # special request parameters that the `SetQueueAttributes` action
1689
+ # uses:
1690
+ #
1691
+ # * `DelaySeconds` - The number of seconds for which the delivery of
1692
+ # all messages in the queue is delayed. Valid values: An integer
1693
+ # from 0 to 900 (15 minutes). The default is 0 (zero).
1694
+ #
1695
+ # * `MaximumMessageSize` - The limit of how many bytes a message can
1696
+ # contain before Amazon SQS rejects it. Valid values: An integer
1697
+ # from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). The
1698
+ # default is 262,144 (256 KiB).
1699
+ #
1700
+ # * `MessageRetentionPeriod` - The number of seconds for which Amazon
1701
+ # SQS retains a message. Valid values: An integer representing
1702
+ # seconds, from 60 (1 minute) to 1,209,600 (14 days). The default is
1703
+ # 345,600 (4 days).
1704
+ #
1705
+ # * `Policy` - The queue's policy. A valid AWS policy. For more
1706
+ # information about policy structure, see [Overview of AWS IAM
1707
+ # Policies][1] in the *Amazon IAM User Guide*.
1708
+ #
1709
+ # * `ReceiveMessageWaitTimeSeconds` - The number of seconds for which
1710
+ # a ` ReceiveMessage ` action waits for a message to arrive. Valid
1711
+ # values: an integer from 0 to 20 (seconds). The default is 0.
1712
+ #
1713
+ # * `RedrivePolicy` - The parameters for the dead letter queue
1714
+ # functionality of the source queue. For more information about the
1715
+ # redrive policy and dead letter queues, see [Using Amazon SQS Dead
1716
+ # Letter Queues][2] in the *Amazon SQS Developer Guide*.
1717
+ #
1718
+ # <note markdown="1"> The dead letter queue of a FIFO queue must also be a FIFO queue.
1719
+ # Similarly, the dead letter queue of a standard queue must also be
1720
+ # a standard queue.
1721
+ #
1722
+ # </note>
1723
+ #
1724
+ # * `VisibilityTimeout` - The visibility timeout for the queue. Valid
1725
+ # values: an integer from 0 to 43,200 (12 hours). The default is 30.
1726
+ # For more information about the visibility timeout, see [Visibility
1727
+ # Timeout][3] in the *Amazon SQS Developer Guide*.
1728
+ #
1729
+ # The following attribute applies only to [FIFO (first-in-first-out)
1730
+ # queues][4]\:
1731
+ #
1732
+ # * `ContentBasedDeduplication` - Enables content-based deduplication.
1733
+ # For more information, see [Exactly-Once Processing][5] in the
1734
+ # *Amazon SQS Developer Guide*.
1735
+ #
1736
+ # * Every message must have a unique `MessageDeduplicationId`,
1737
+ #
1738
+ # * You may provide a `MessageDeduplicationId` explicitly.
1739
+ #
1740
+ # * If you aren't able to provide a `MessageDeduplicationId` and
1741
+ # you enable `ContentBasedDeduplication` for your queue, Amazon
1742
+ # SQS uses a SHA-256 hash to generate the
1743
+ # `MessageDeduplicationId` using the body of the message (but
1744
+ # not the attributes of the message).
1745
+ #
1746
+ # * If you don't provide a `MessageDeduplicationId` and the queue
1747
+ # doesn't have `ContentBasedDeduplication` set, the action
1748
+ # fails with an error.
1749
+ #
1750
+ # * If the queue has `ContentBasedDeduplication` set, your
1751
+ # `MessageDeduplicationId` overrides the generated one.
1752
+ #
1753
+ # * When `ContentBasedDeduplication` is in effect, messages with
1754
+ # identical content sent within the deduplication interval are
1755
+ # treated as duplicates and only one copy of the message is
1756
+ # delivered.
1757
+ #
1758
+ # * You can also use `ContentBasedDeduplication` for messages with
1759
+ # identical content to be treated as duplicates.
1760
+ #
1761
+ # * If you send one message with `ContentBasedDeduplication` enabled
1762
+ # and then another message with a `MessageDeduplicationId` that is
1763
+ # the same as the one generated for the first
1764
+ # `MessageDeduplicationId`, the two messages are treated as
1765
+ # duplicates and only one copy of the message is delivered.
1766
+ #
1767
+ # Any other valid special request parameters (such as the following)
1768
+ # are ignored:
1769
+ #
1770
+ # * `ApproximateNumberOfMessages`
1771
+ #
1772
+ # * `ApproximateNumberOfMessagesDelayed`
1773
+ #
1774
+ # * `ApproximateNumberOfMessagesNotVisible`
1775
+ #
1776
+ # * `CreatedTimestamp`
1777
+ #
1778
+ # * `LastModifiedTimestamp`
1779
+ #
1780
+ # * `QueueArn`
1781
+ #
1782
+ #
1783
+ #
1784
+ # [1]: http://docs.aws.amazon.com/IAM/latest/UserGuide/PoliciesOverview.html
1785
+ # [2]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html
1786
+ # [3]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1787
+ # [4]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html
1788
+ # [5]: http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html#FIFO-queues-exactly-once-processing
1789
+ # @return [Hash<String,String>]
1790
+ #
1791
+ class SetQueueAttributesRequest < Struct.new(
1792
+ :queue_url,
1793
+ :attributes)
1794
+ include Aws::Structure
1640
1795
  end
1796
+
1641
1797
  end
1642
1798
  end