Updated on 2024-06-07 GMT+08:00

Querying Database Specifications

Function

This API is used to query the database specifications of a specified DB engine version.

  • Before calling an API, you need to understand the API in Authentication.

URI

  • URI format

    GET /v3/{project_id}/flavors/{database_name}?version_name={version_name}&spec_code={spec_code}&is_serverless={is_serverless}

  • Parameter description
    Table 1 Parameter description

    Name

    Mandatory

    Description

    project_id

    Yes

    Project ID of a tenant in a region.

    For details about how to obtain the project ID, see Obtaining a Project ID.

    database_name

    Yes

    Specifies the DB engine name. Its value can be any of the following and is case-insensitive:

    • MySQL
    • PostgreSQL
    • SQLServer

    version_name

    No

    Specifies the database version. For details about how to obtain the database version, see section Querying Version Information About a DB Engine. (The minor version is supported.)

    is_serverless

    No

    Specifies whether to query serverless specifications. The value can be any of the following (case-sensitive):

    • true: Serverless specifications are queried.
    • false (default value): Non-serverless specifications are queried.

    spec_code

    No

    Specifies the specification code.

Request

  • Request parameters

    None

  • URI example

    GET https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/flavors/mysql?version_name=5.7&spec_code=rds.mysql.m1.xlarge.rr

Response

  • Normal response
    Table 2 Parameter description

    Name

    Type

    Description

    flavors

    Array of objects

    Indicates the DB instance specifications information list.

    For details, see Table 3.

    Table 3 flavors field data structure description

    Name

    Type

    Description

    vcpus

    String

    Indicates the CPU size. For example, the value 1 indicates 1 vCPU.

    ram

    Integer

    Indicates the memory size in GB.

    id

    String

    Indicates the specification ID, which is unique.

    spec_code

    String

    Indicates the resource specification code. Use rds.mysql.m1.xlarge.rr as an example.

    For more information, see Instance Class.

    • rds: indicates the RDS product.
    • mysql: indicates the DB engine.
    • m1.xlarge: indicates the high memory performance specifications.
    • rr: indicates read replicas (.ha indicates primary/standby DB instances).
    • rha.rr indicates HA read replicas. Example specification code: rds.mysql.n1.large.4.rha.rr.
      • HA read replicas are available only for users with the open beta test (OBT) permission. You can contact customer service to apply for the permission.
      • For details about HA read replicas, see Introducing HA Read Replicas.

    version_name

    Array

    Indicates the database version.

    Example value for the MySQL DB engine: ["5.6","5.7","8.0"]

    instance_mode

    String

    Indicates the DB instance type. Its value can be any of the following:

    • ha: indicates primary/standby instances.
    • replica: indicates read replicas.
    • single: indicates single DB instances.

    az_status

    Map<String, String>

    Indicates the specification status in an AZ. Its value can be any of the following:

    • normal: indicates that the specifications in the AZ are available.
    • unsupported: indicates that the specifications are not supported by the AZ.
    • sellout: indicates that the specifications in the AZ are sold out.

    az_desc

    Map<String, String>

    Indicates the description of the AZ to which the specifications belong.

    group_type

    String

    Indicates the performance specifications. Its value can be any of the following:

    • normal: general-enhanced
    • normal2: general-enhanced II
    • armFlavors: Kunpeng general-enhanced
    • dedicicateNormal (dedicatedNormalLocalssd): exclusive x86
    • armLocalssd: standard Kunpeng
    • normalLocalssd: standard x86
    • general: general-purpose
    • dedicated:
      • For the MySQL DB engine: dedicated
      • For PostgreSQL and SQL Server DB engines: dedicated, which is only supported for cloud SSDs
    • rapid:
      • For the MySQL DB engine: dedicated (offline)
      • For PostgreSQL and SQL Server DB engines: dedicated, which is only supported for extreme SSDs
    • bigmem: large-memory
    • highPerformancePrivilegeEdition: ultra-high I/O (advanced)
  • Example normal response
    {
    	"flavors": [{
    			"vcpus": "1",
    			"ram": 2,
                            "id":"2988b9cc-2aac-3a94-898c-14666702f129",
    			"spec_code": "rds.mysql.c2.medium.rrrds.pg.c2.medium.rr",
                            "version_name": ["5.6","5.7","8.0"],
    			"instance_mode": "ha",
    			"az_status": {
    				"az1": "normal",
    				"az2": "normal"
    			},
    			"az_desc": {
    				"az1": "az1",
    				"az2": "az2"
    			},
                            "group_type": "normal"
    		},
    		{
    			"vcpus": "1",
    			"ram": 2,
                            "id":"2988b9cc-2aac-3a94-898c-14666702f130",
    			"spec_code": "rds.mysql.c2.medium.rrrds.pg.c2.medium.rr",
                            "version_name": ["5.6","5.7","8.0"],
    			"instance_mode": "replica",
    			"az_status": {
    				"az1": "normal",
    				"az2": "normal"
    			},
    			"az_desc": {
    				"az1": "az1",
    				"az2": "az2"
    			},
                            "group_type": "normal"
    		}
    	]
    }
  • Abnormal response

    For details, see Abnormal Request Results.

Status Code

Error Code

For details, see Error Codes.