All Products
Search
Document Center

ApsaraMQ for RabbitMQ:UpdateInstance

Last Updated:Dec 25, 2025

Upgrades or downgrades the specifications of an ApsaraMQ for RabbitMQ instance.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

amqp:UpdateInstance

update

*Instance

acs:amqp:{#regionId}:{#accountId}:/instances/{#instanceId}

  • amqp:InstanceType
  • amqp:SupportEIP
  • amqp:ServerlessChargeType
None

Request parameters

Parameter

Type

Required

Description

Example

ClientToken

string

No

The client token.

c2c5d1274axxxxxxxx

InstanceId

string

Yes

The ID of the ApsaraMQ for RabbitMQ instance.

amqp-cn-jtexxxxx

ModifyType

string

Yes

The type of specification change. Valid values:

  • UPGRADE: Upgrade

  • DOWNGRADE: Downgrade

UPGRADE

InstanceType

string

No

The instance type. This parameter is required for subscription instances. Valid values:

  • professional: Professional Edition

  • enterprise: Enterprise Edition

  • vip: Platinum Edition

You do not need to specify this parameter for pay-as-you-go instances.

professional

ServerlessChargeType

string

No

The billing method of the pay-as-you-go (Serverless) instance. Valid value:

  • onDemand: Pay-as-you-go

onDemand

MaxPrivateTps

integer

No

The peak transactions per second (TPS) for private network traffic.

1000

SupportEip

boolean

No

Specifies whether to enable Internet access.

false

MaxEipTps

integer

No

The peak TPS for public network traffic.

128

QueueCapacity

integer

No

The maximum number of queues.

1000

MaxConnections

integer

No

The maximum number of connections.

1000

StorageSize

integer

No

The message storage capacity. Unit: GB.

7

SupportTracing

boolean

No

Specifies whether to enable the message trace feature.

false

TracingStorageTime

integer

No

The retention period for message traces. Unit: days.

3

EncryptedInstance

boolean

No

This feature is for dedicated instances only. Specifies whether to enable data encryption.

  • You cannot change the EncryptedInstance and KmsKeyId properties of a dedicated instance. This includes changing its encryption status or downgrading it to a shared instance. Do not include the EncryptedInstance and KmsKeyId parameters when you call UpdateInstance to upgrade or downgrade a dedicated instance.

  • The EncryptedInstance and KmsKeyId parameters are used only when you upgrade a shared instance to an encrypted dedicated instance.

false

KmsKeyId

string

No

This feature is for dedicated instances only. This parameter is required if EncryptedInstance is set to true. It specifies the ID of the KMS key used for data encryption. The key must meet the following requirements:

  • The KMS key must be in the same region as the ApsaraMQ for RabbitMQ instance.

  • The key cannot be a service key.

  • The key must be active.

  • The key must be a symmetric key.

  • The key must be used for encryption and decryption.

  • If the KMS key expires or is deleted, data reads and writes will fail, and the ApsaraMQ for RabbitMQ instance will become unavailable.

key-bjj66c2a893vmhawtq5fd

ProvisionedCapacity

integer

No

The provisioned TPS capacity for a reserved plus elastic instance.

2000

Edition

string

No

The deployment architecture of the Serverless instance. Valid values:

  • shared: A shared architecture. This applies to reserved plus elastic (shared) and pay-as-you-go instances.

  • dedicated: A dedicated architecture. This applies to reserved plus elastic (dedicated) instances.

shared

Response elements

Element

Type

Description

Example

object

Schema of Response

RequestId

string

The request ID. Each request has a unique ID. Use this ID to troubleshoot issues.

628705FD-03EE-4ABE-BB21-E1672960***

Code

integer

The return code. A value of 200 indicates that the request was successful.

200

Message

string

The returned message.

InstanceNotExist

Data

any

The returned data. It includes the order ID and instance ID. For example:

"Data": {
    "instanceId": "amqp-cn-xxxxx",
    "orderId": 22222
  }

{'instanceId': 'rabbitmq-serverless-cn-lf63qsjlf06', 'orderId': 234170302080010}

Success

string

Indicates whether the request was successful.

true

StatusCode

string

The status code.

200

Examples

Success response

JSON format

{
  "RequestId": "628705FD-03EE-4ABE-BB21-E1672960***",
  "Code": 200,
  "Message": "InstanceNotExist",
  "Data": "{'instanceId': 'rabbitmq-serverless-cn-lf63qsjlf06', 'orderId': 234170302080010}",
  "Success": "true",
  "StatusCode": "200"
}

Error codes

HTTP status code

Error code

Error message

Description

400 INSUFFICIENT_AVAILABLE_QUOTA Your account available limit is less than 0, please recharge before trying to purchase. Your account available limit is less than 0, please recharge before trying to purchase.
400 UpDowngradeConfigNoChange The upgrade or downgrade configuration is not changed. The upgrade or downgrade configuration is not changed, please re-select
403 UnauthorizedOperation The request has failed due to unauthorized operation. The request has failed due to unauthorized operation.

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.