Modifies a queue.
Authorization
By default, only Alibaba Cloud accounts can call this operation. RAM users can call this operation only after the RAM users are granted the related permissions. The following table describes the authorization information of this operation. For more information, see Permission policies and examples.
Name | Value |
---|---|
API | SetQueueAttributes |
Action | mns:SetQueueAttributes |
Item | acs:mns:$region:$accountid:/queues/$queueName |
Request
A request consists of the following parts:
- Request line
PUT /queues/$queueName?metaoverride=true HTTP/1.1
- URI parameters
To modify the parameters of a queue, specify
metaoverride=true
in the URI. - Operation-specific request headers
None.
-
Request Body
The request body is in the XML format. The parameters of the queue can be included in the request body. All parameters are optional.
Parameter Type Required Example Description DelaySeconds Integer No. 0 The delay period after which all messages that are sent to the queue can be consumed. Valid values: 0 to 604800. Unit: seconds.
Default value: 0.
MaximumMessageSize Integer No. 1024 The maximum size of the message body that can be sent to the queue. Valid values: 1024 to 65536. Unit: bytes.
Default value: 65536.
MessageRetentionPeriod Integer No. 120 The maximum period of time for which a message can be retained in the queue. After this period ends, the message is deleted regardless of whether the message is consumed. Valid values: 60 to 604800. Unit: seconds.
Default value: 345600.
VisibilityTimeout Integer No. 60 The invisibility period for which the received message remains in the Inactive state. Valid values: 1 to 43200. Unit: seconds.
Default value: 30.
PollingWaitSeconds Integer No. 0 The maximum period of time for which a ReceiveMessage request waits if no message is available in the queue. Valid values: 0 to 30. Unit: seconds.
Default value: 0.
LoggingEnabled Boolean No True Specifies whether to enable the log management feature. Valid values: Valid values:- True: enables the log management feature.
- False: disables the log management feature.
Default value: False.
If you want to use Terraform to manage alicloud_message_service_queue, replace the LoggingEnabled parameter with the EnableLogging parameter.
Error message
A response consists of the following parts:
- HTTP Status Code
HTTP/1.1 204 No Content
- Operation-specific response headers
None.
- Response Body
None.
Examples
Sample requests
PUT /queues/$queueName?Metaoverride=true HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAM****
<?xml version="1.0" encoding="UTF-8"?>
<Queue xmlns="http://mns.aliyuncs.com/doc/v1/">
<VisibilityTimeout >60</VisibilityTimeout>
<MaximumMessageSize>1024</MaximumMessageSize>
<MessageRetentionPeriod>120</MessageRetentionPeriod>
<DelaySeconds>30</DelaySeconds>
<LoggingEnabled>True</LoggingEnabled>
</Queue>
Sample responses
HTTP/1.1 204 No Content
x-mns-request-id:512B2A634403E52B1956****
x-mns-version: 2015-06-06
Error codes
Error code | Error message | HTTP status code | Description |
---|---|---|---|
InvalidArgument | The value of Element should between Low and High seconds/bytes. | 400 | The error message returned because the parameter value is invalid. Make sure that the value is in the value range. |
QueueNotExist | The queue name you provided is not exist. | 404 | The error message returned because the specified queue does not exist. You must create a queue. |