You can call the DescribeAvailableClasses operation to query the specifications that are supported for an ApsaraDB RDS instance. The specifications include instance types and the storage capacity range.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes DescribeAvailableClasses

The operation that you want to perform. Set the value to DescribeAvailableClasses.

RegionId String Yes cn-hangzhou

The region ID of the instance. You can call the DescribeDBInstanceAttribute operation to query the region ID of an instance.

ZoneId String Yes cn-hangzhou-h

The zone ID of the instance. You can call the DescribeDBInstanceAttribute operation to query the zone ID of an instance.

Note If the DescribeDBInstanceAttribute operation returns multiple zones, you must specify only one of the returned zones. For example, if the DescribeDBInstanceAttribute operation returns cn-hangzhou-MAZ9(g,h), you can set the ZoneId parameter to cn-hangzhou-g or cn-hangzhou-h.
InstanceChargeType String Yes Prepaid

The billing method of the instance. Valid values:

  • Prepaid: subscription
  • Postpaid: pay-as-you-go
Engine String Yes MySQL

The database engine that is run by the instance. Valid values:

  • MySQL
  • SQLServer
  • PostgreSQL
  • MariaDB
EngineVersion String Yes 8.0

The version of the database engine that is run by the instance. Valid values:

  • Values that are valid if you set the Engine parameter to MySQL: 5.5, 5.6, 5.7, and 8.0
  • Values that are valid if you set the Engine parameter to SQL Server: 2008r2, 08r2_ent_ha, 2012, 2012_ent_ha, 2012_std_ha, 2012_web, 2014_std_ha, 2016_ent_ha, 2016_std_ha, 2016_web, 2017_std_ha, 2017_ent, 2019_std_ha, and 2019_ent
  • Values that are valid if you set the Engine parameter to PostgreSQL: 10.0, 11.0, 12.0, 13.0 and 14.0
  • Values that are valid if you set the Engine parameter to MariaDB: 10.3
DBInstanceId String No rm-uf6wjk5xxxxxx

The ID of the instance.

OrderType String No BUY

The type of the order. Set the value to BUY

DBInstanceStorageType String Yes local_ssd

The type of storage media that is used for the instance. Valid values:

  • local_ssd: local SSDs. This is the recommended storage type.
  • cloud_ssd: standard SSDs.
  • cloud_essd: enhanced SSDs (ESSDs) of performance level 1 (PL1).
  • cloud_essd2: ESSDs of PL2.
  • cloud_essd3: ESSDs of PL3.
Category String Yes HighAvailability

The RDS edition that is run by the instance. Valid values:

  • Basic: Basic Edition
  • HighAvailability: High-availability Edition
  • AlwaysOn: Cluster Edition
  • Finance: Enterprise Edition
CommodityCode String No bards

The commodity code of the instance. Valid values:

  • bards: The instance is a pay-as-you-go primary instance. This value is available on the China site (aliyun.com).
  • rds: The instance is a subscription primary instance. This value is available on the China site (aliyun.com).
  • rords: The instance is a pay-as-you-go read-only instance. This value is available on the China site (aliyun.com).
  • rds_rordspre_public_cn: The instance is a subscription read-only instance. This value is available on the China site (aliyun.com).
  • bards_intl: The instance is a pay-as-you-go primary instance. This value is available on the International site (alibabacloud.com).
  • rds_intl: The instance is a subscription primary instance. This value is available on the International site (alibabacloud.com).
  • rords_intl: The instance is a pay-as-you-go read-only instance. This value is available on the International site (alibabacloud.com).
  • rds_rordspre_public_intl: The instance is a subscription read-only instance. This value is available on the International site (alibabacloud.com).
Note If the instance is a read-only instance, you must specify the CommodityCode parameter.

Response parameters

Parameter Type Example Description
RequestId String 7E4448A6-9FE6-4474-A0C1-AA7CFC772CAC

The ID of the request.

DBInstanceClasses Array of DBInstanceClass

An array that consists of the instance types available for the instance.

DBInstanceClass String rds.mysql.c1.large

The instance type of the instance.

DBInstanceStorageRange Object

The storage capacity range that is supported for the instance.

Step Integer 5

The minimum step size at which you can adjust the storage capacity of the instance. The minimum step size is 5 GB.

MinValue Integer 5

The minimum storage capacity that is supported for the instance. Unit: GB.

MaxValue Integer 2000

The maximum storage capacity that is supported for the instance. Unit: GB.

Examples

Sample requests

http(s)://rds.aliyuncs.com/?Action=DescribeAvailableClasses
&DBInstanceId=rm-uf6wjk5xxxxxx
&Category=HighAvailability
&DBInstanceStorageType=local_ssd
&Engine=MySQL
&EngineVersion=8.0
&InstanceChargeType=Prepaid
&RegionId=cn-hangzhou
&ZoneId=cn-hangzhou-h
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<DescribeAvailableClassesResponse>
<DBInstanceClasses>
    <DBInstanceClass>rds.mysql.c1.large</DBInstanceClass>
    <DBInstanceStorageRange>
        <MinValue>5</MinValue>
        <MaxValue>2000</MaxValue>
        <Step>5</Step>
    </DBInstanceStorageRange>
</DBInstanceClasses>
<DBInstanceClasses>
    <DBInstanceClass>rds.mysql.st.v52</DBInstanceClass>
    <DBInstanceStorageRange>
        <MinValue>1000</MinValue>
        <MaxValue>6000</MaxValue>
        <Step>5</Step>
    </DBInstanceStorageRange>
</DBInstanceClasses>
<RequestId>7E4448A6-9FE6-4474-A0C1-AA7CFC772CAC</RequestId>
</DescribeAvailableClassesResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "DBInstanceClasses" : [ {
    "DBInstanceClass" : "rds.mysql.c1.large",
    "DBInstanceStorageRange" : {
      "MinValue" : 5,
      "MaxValue" : 2000,
      "Step" : 5
    }
  }, {
    "DBInstanceClass" : "rds.mysql.st.v52",
    "DBInstanceStorageRange" : {
      "MinValue" : 1000,
      "MaxValue" : 6000,
      "Step" : 5
    }
  } ],
  "RequestId" : "7E4448A6-9FE6-4474-A0C1-AA7CFC772CAC"
}

Error codes

HTTP status code Error code Error message Description
404 InvalidCondition.NotFound No class found The error message returned because the condition that is specified for the available class is invalid.

For a list of error codes, visit the API Error Center.