Changes the billing method of an instance.
Operation Description
If you change the billing method of an instance from subscription to pay-as-you-go, a refund may be provided. The refund amount is equal to the remaining subscription fee deducted by an amount of service fee. For more information, see Switch an ApsaraDB RDS for MySQL instance from subscription to pay-as-you-go.
If the balance of your Alibaba Cloud account is insufficient, you cannot change the billing method of an instance from pay-as-you-go to subscription.
This operation is not supported for instances whose specification change orders are not completed.
This operation is not supported for instances that are created in dedicated clusters.
ApsaraDB RDS supports the following two billing methods:
- Subscription: A subscription instance is an instance for which you pay an upfront fee. For long-term use, the subscription billing method is more cost-effective than the pay-as-you-go billing method. You are offered lower prices for longer subscription durations.
- Pay-as-you-go: A pay-as-you-go instance is an instance for which you are charged per hour based on your resource usage. The hourly fee is calculated based on the instance type that you specify in the purchase order and is deducted from the balance of your Alibaba Cloud account. We recommend that you select the pay-as-you-go billing method for short-term use. If you no longer need your pay-as-you-go instance, you can release the instance to reduce costs.
For more information about the billing methods, see Pricing, billable items, and billing methods.
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- The required resource types are displayed in bold characters.
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
rds:TransformDBInstancePayType | WRITE |
|
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
ClientToken | string | No | The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. | ETnLKlblzczshOTUbOCzxxxxxxxxxx |
DBInstanceId | string | Yes | The ID of the instance. | rm-uf6wjk5xxxxxx |
UsedTime | integer | No | The subscription duration of the instance. Valid values:
NoteThis parameter must be specified if you set PayType to Prepaid. | 1 |
PayType | string | Yes | The billing method of the instance. Valid values:
| Prepaid |
Period | string | No | The renewal cycle of the instance. Valid values:
NoteThis parameter must be specified if you set PayType to Prepaid. | Month |
BusinessInfo | string | No | The additional business information about the instance. | None |
AutoRenew | string | No | Specifies whether to enable the auto-renewal feature for the instance. Valid values:
Note
| true |
Response parameters
Examples
Sample success responses
JSON
format
{
"DBInstanceId": "rm-uf6wjk5xxxxxx",
"RequestId": "5E6E09DE-5B12-4BFF-A55E-1C86EDE06D9A",
"ExpiredTime": "2020-04-20T10:00:00Z",
"OrderId": 205157600280623,
"ChargeType": "Prepaid"
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
400 | InvalidDBInstanceName.NotFound | The specified DB instance name does not exist. | The instance name does not exist. |
400 | InvalidInstanceUseType.NotSupport | Specified instanceUseType does not support in RDS. | The operation failed. The role that is specified by the instanceUseType parameter is not supported for the RDS instance. |
400 | InvalidOrderCharge.NotSupport | The specified order charge does not support in RDS. | The operation failed. ApsaraDB RDS supports two billing methods: subscription (Prepaid) and pay-as-you-go (Postpaid). Specify a valid billing method by using the PayType parameter. |
400 | InvalidOrderTask.NotSupport | The Current InstanceId exist Order Task in RDS. | Uncompleted order tasks are found in the RDS instance. Please try again later. |
400 | IncorrectDBInstanceType | Current DB instance type does not support this operation. | The operation failed. The RDS instance is not in a ready state. |
400 | IncompleteAccountInfo | Your information is incomplete. Complete your information before the operation. | The operation failed. Items that are marked with an asterisk (*) in the account information must be specified. Make sure that you specify these items on the Basic Information page in Account Center. |
400 | IncompleteTaxInfo | Your tax information is incomplete. Complete your information before the operation. | The operation failed. Your tax information is incomplete. Complete your tax information. |
400 | InvalidPaymentMethod.Incomplete | No payment method is specified for your account. We recommend that you add a payment method. | No valid payment method is specified for your Alibaba Cloud account. Add a valid payment method. |
400 | InvalidPaymentMethod.Missing | Your payment method is incomplete. We recommend that you add a payment method. | No valid payment method is specified within your Alibaba Cloud account. Add a valid payment method. |
400 | InsuffcientBalanceOrBankAccount | Add a payment method or add funds to the prepayment balance. Get started by creating an instance. | No valid payment method is specified within your Alibaba Cloud account. Add a valid payment method or add funds to your Alibaba Cloud account. |
400 | InvalidPaymentMethod.NoAccess | No payment method is specified for your account. Please contact your Customer Manager or open a ticket. | - |
400 | InvalidPaymentMethod.Missing | No payment method is specified for your account. We recommend that you add a payment method. | No valid payment method is specified for your Alibaba Cloud account. Add a valid payment method. |
400 | InvalidPaymentMethod.InsufficientBalance | No payment method is specified for your account. We recommend that you add a payment method or add funds to the prepayment balance. | - |
400 | OrderTaskAlreadyExists | Order task already exists. | The specified order task already exists. |
400 | InvalidOldInstanceType.NotSupport | Specified oldInstanceType does not support in RDS. | This operation is not supported for the database engine version of the current instance. |
400 | OperationDenied.TimeLimit | The interval between the two conversion operations must be greater than 15 minutes. | The operation failed. The time interval between two operations that are performed to convert the payment type must be greater than 15 minutes. |
400 | InvalidDBInstanceId.Malformed | The specified parameter DBInstanceId is not valid. | The instance ID is invalid. Check the instance ID. |
400 | InvalidPayType.Malformed | The specified parameter PayType is not valid. | - |
400 | InvalidResource.Format | The specified parameter Resource is not valid. | The resource ID is invalid. |
400 | InvalidPayType.Format | The specified parameter PayType is not valid. | The payment type is invalid. |
400 | InvalidUsedTime.Format | The specified parameter UsedTime is not valid. | UsedTime is not defined. |
400 | InvalidPeriod.Format | The specified parameter Period is not valid. | - |
400 | InvalidPeriodOrUsedTime.Format | The specified parameter Period and UsedTime are not valid. | - |
400 | InvalidDiscountCoupon.Malformed | The specified discount coupon is not valid. | - |
400 | InsufficientQuota.NoEnough | Your current quota is insufficient. Please contact your channel partner to increase your quota. | The quota is insufficient. Contact your channel partner to request a quota increase. |
400 | SYSTEM.ILLEGALARGUMENT | The current instance does not have a valid configuration when change the payType from Prepaid to Postpaid. | - |
403 | OperationDenied.LockMode | The operation is not permitted when the instance locked. | The operation failed. The RDS instance is locked possibly because the balance within your Alibaba Cloud account is insufficient. Top up or add funds to your Alibaba Cloud account to unlock the RDS instance. |
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
2023-05-04 | The error codes of the API operation change. | |||||||||||
| ||||||||||||
2022-09-01 | The error codes of the API operation change. | |||||||||||
| ||||||||||||
2021-10-26 | The error codes of the API operation change.,The input parameters of the API operation change. | |||||||||||
|