SQS.Client.
change_message_visibility_batch
(**kwargs)¶Changes the visibility timeout of multiple messages. This is a batch version of ChangeMessageVisibility.
The result of the action on each message is reported individually in the response. You can send up to 10 ChangeMessageVisibility
requests with each ChangeMessageVisibilityBatch
action.
Warning
Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200
.
Some actions take lists of parameters. These lists are specified using the param.n
notation. Values of n
are integers starting from 1. For example, a parameter list with two elements looks like this:
&AttributeName.1=first
&AttributeName.2=second
See also: AWS API Documentation
Request Syntax
response = client.change_message_visibility_batch(
QueueUrl='string',
Entries=[
{
'Id': 'string',
'ReceiptHandle': 'string',
'VisibilityTimeout': 123
},
]
)
[REQUIRED]
The URL of the Amazon SQS queue whose messages' visibility is changed.
Queue URLs and names are case-sensitive.
[REQUIRED]
A list of receipt handles of the messages for which the visibility timeout must be changed.
Encloses a receipt handle and an entry id for each message in ChangeMessageVisibilityBatch.
Warning
All of the following list parameters must be prefixed withChangeMessageVisibilityBatchRequestEntry.n
, wheren
is an integer value starting with1
. For example, a parameter list for this action might look like this:
&ChangeMessageVisibilityBatchRequestEntry.1.Id=change_visibility_msg_2
&ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle=your_receipt_handle
&ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout=45
An identifier for this particular receipt handle used to communicate the result.
Note
The Id
s of a batch request need to be unique within a request.
This identifier can have up to 80 characters. The following characters are accepted: alphanumeric characters, hyphens(-), and underscores (_).
A receipt handle.
The new value (in seconds) for the message's visibility timeout.
dict
Response Syntax
{
'Successful': [
{
'Id': 'string'
},
],
'Failed': [
{
'Id': 'string',
'SenderFault': True|False,
'Code': 'string',
'Message': 'string'
},
]
}
Response Structure
(dict) --
For each message in the batch, the response contains a ChangeMessageVisibilityBatchResultEntry
tag if the message succeeds or a BatchResultErrorEntry
tag if the message fails.
Successful (list) --
A list of ChangeMessageVisibilityBatchResultEntry
items.
(dict) --
Encloses the Id
of an entry in ChangeMessageVisibilityBatch.
Id (string) --
Represents a message whose visibility timeout has been changed successfully.
Failed (list) --
A list of BatchResultErrorEntry
items.
(dict) --
Gives a detailed description of the result of an action on each entry in the request.
Id (string) --
The Id
of an entry in a batch request.
SenderFault (boolean) --
Specifies whether the error happened due to the caller of the batch API action.
Code (string) --
An error code representing why the action failed on this entry.
Message (string) --
A message explaining why the action failed on this entry.
Exceptions
SQS.Client.exceptions.TooManyEntriesInBatchRequest
SQS.Client.exceptions.EmptyBatchRequest
SQS.Client.exceptions.BatchEntryIdsNotDistinct
SQS.Client.exceptions.InvalidBatchEntryId