Updated on 2024-08-28 GMT+08:00

Creating a DB Instance

Function

This API is used to create a single RDS DB instance, primary/standby DB instance, or read replica.

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

This API allows you to set the X-Client-Token request header in the HTTP request header when you create an RDS for MySQL instance, to ensure the request idempotence. For details, see Idempotent Requests.

URI

  • URI format

    POST /v3/{project_id}/instances

  • Parameter description
    Table 1 Parameters

    Parameter

    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.

Request

Table 2 Parameters (creating single, primary/standby, and cluster instances, except RDS for SQL Server instances configured with the AD domain)

Parameter

Mandatory

Type

Description

name

Yes

String

Specifies the DB instance name.

Instances of the same type can have the same name under the same tenant.

  • RDS for MySQL: The DB instance name must be 4 to 64 bytes long, start with a letter, and contain only letters (case-sensitive), digits, hyphens (-), periods (.), and underscores (_).
  • RDS for PostgreSQL and RDS for SQL Server: The DB instance name must be 4 to 64 bytes long, start with a letter, and contain only letters (case-sensitive), digits, hyphens (-), and underscores (_).

datastore

Yes

Object

Specifies the database information.

For details, see Table 4.

flavor_ref

Yes

String

Specifies the specification code. The value cannot be empty.

For details, see spec_code in Table 3 in Querying Database Specifications.

volume

Yes

Object

Specifies instance storage.

For details, see Table 7.

region

Yes

String

Specifies the region ID.

The value cannot be empty. For details about how to obtain this parameter value, see Regions and Endpoints.

availability_zone

Yes

String

Specifies the AZ ID. If the DB instance is not a single instance, you need to specify an AZ for each node of the instance and separate the AZs with commas (,). For details, see the example.

The AZ ID can be obtained from the response returned after the API in Querying Database Specifications is called.

vpc_id

Yes

String

Specifies the VPC ID. To obtain this parameter value, use either of the following methods:

  • Method 1: Log in to VPC console and view the VPC ID in the VPC details.
  • Method 2: See the "Querying VPCs" section in the Virtual Private Cloud API Reference.

subnet_id

Yes

String

Specifies the network ID. To obtain this parameter value, use either of the following methods:

  • Method 1: Log in to the VPC console and click the target subnet on the Subnets page. You can view the network ID on the displayed page.
  • Method 2: See the "Querying Subnets" section in the Virtual Private Cloud API Reference.

security_group_id

Yes

String

Specifies the security group which the RDS DB instance belongs to. To obtain this parameter value, use either of the following methods:

  • Method 1: Log in to VPC console. Choose Access Control > Security Groups in the navigation pane on the left. On the displayed page, click the target security group. You can view the security group ID on the displayed page.
  • Method 2: See the "Querying Security Groups" section in the Virtual Private Cloud API Reference.

To use multiple security groups for an RDS for MySQL instance, choose Service Tickets > Create Service Ticket in the upper right corner of the management console to apply for the required permissions. You can add up to 10 security group IDs for each instance and separate them with commas (,).

ha

No

Object

Specifies the HA configuration, which is used when you create primary/standby instances.

For details, see Table 5.

configuration_id

No

String

Specifies the parameter template ID.

For details, see id in Table 3 in section Obtaining a Parameter Template List.

port

No

String

Specifies the database port information.

  • RDS for MySQL instances can use database ports 1024 to 65535, excluding 12017 and 33071, which are reserved for RDS system use.
  • RDS for PostgreSQL instances can use database ports 2100 to 9500.
  • For RDS for SQL Server 2022 Enterprise Edition, 2022 Standard Edition, 2022 Web Edition, 2019 Enterprise Edition, 2019 Standard Edition, 2019 Web Edition, 2017 Enterprise Edition, 2017 Standard Edition, and 2017 Web Edition, the port number can be set to 1433 or 2100 to 9500 (excluding 5050, 5353, 5355, 5985, and 5986).

    For other editions, the port number can be set to 1433 or 2100 to 9500 (excluding 5355, 5985, and 5986).

If this parameter is not set, the default value is as follows:

  • RDS for MySQL: 3306
  • RDS for PostgreSQL: 5432
  • RDS for SQL Server: 1433

password

No

String

Specifies the database password.

Valid value:

A database password must be 8 to 32 characters long and contain at least three types of the following characters: uppercase letters, lowercase letters, digits, and special characters.

Different DB engines support different special characters.

  • RDS for MySQL: ~!@#$%^*-_=+?,()&
  • RDS for SQL Server: ~!@#$%^*-_+?,
  • RDS for PostgreSQL: ~!@#%^*-_=+?,

You are advised to enter a strong password to improve security, preventing security risks such as brute force cracking. If the password you provide is regarded as a weak password by the system, you will be prompted to enter a stronger password.

backup_strategy

No

Object

Specifies the advanced backup policy.

For details, see Table 6.

enterprise_project_id

No

String

Specifies the enterprise project ID.

disk_encryption_id

No

String

Specifies the key ID for disk encryption. The default value is empty.

NOTE:

Serverless instances do not support this parameter.

data_vip

No

String

Specifies the floating IP address of a DB instance. Currently, only IPv4 addresses are supported. You can use the following methods to obtain the floating IP address:

  • Method 1: Log in to the VPC console and click the target subnet on the Subnets page. View the subnet CIDR block and select an IP address that is not in use.
  • Method 2: See the "Querying Subnets" section in the Virtual Private Cloud API Reference.

charge_info

No

Object

Specifies the billing information, which is yearly/monthly or pay-per-use (default setting).

For details, see Table 8.

time_zone

No

String

Specifies the UTC time zone.

  • If this parameter is not specified, the time zone of each engine is as follows:
    • MySQL: uses UTC by default.
    • PostgreSQL: uses UTC by default.
    • Microsoft SQL Server: Chinese mainland site and international site use China Standard Time and UTC, respectively.
  • If this parameter is specified for MySQL or PostgreSQL, the value range is from UTC-12:00 to UTC+12:00 on the hour. For example, the parameter can be UTC+08:00 rather than UTC+08:30.
  • If this parameter is specified, the value range is from UTC-12:00 to UTC+12:00 on the hour. For example, the parameter can be UTC+08:00 rather than UTC+08:30.

restore_point

No

Object

Specifies the restoration information. This parameter is mandatory when data is restored to a new instance.

For details, see Table 10.

tags

No

Array of objects

Specifies the tag list. DB instances are created based on tag keys and values.

  • {key} indicates the tag key. It must be unique and cannot be empty.
  • {value} indicates the tag value, which can be empty.

If you want to create DB instances with multiple tag key-value pairs, separate them with commas (,). A maximum of 20 key-value pairs can be added.

For details, see Table 9.

unchangeable_param

No

Object

Specifies the list of unchangeable parameters. The unchangeable parameters need to be specified before database initialization and cannot be modified after being specified.

For details, see Table 12.

collation

No

String

This parameter applies only to RDS for SQL Server DB instances.

Value range: character sets queried in Querying the Available SQL Server Character Set.

dry_run

No

Boolean

Specifies whether DB instances will not be created after the request is checked. This parameter is supported with the MySQL DB engine only.

  • true: DB instances will not be created after the request is checked.
    • If the check is successful, status code 202 is returned.
    • If the check fails, an error code is returned. For details, see Error Codes.
  • false: DB instances will be created after the check is successful.

count

No

Integer

Specifies the number of DB instances to be created in a batch.

Value range: 1 to 50

This parameter is unavailable when you create read replicas.

serverless_info

No

Object

Specifies the resource scaling scope of a serverless instance. This parameter is mandatory when you create a serverless instance.

For details, see Table 11.

Table 3 Parameters (creating read replicas)

Parameter

Mandatory

Type

Description

name

Yes

String

Specifies the DB instance name.

DB instances of the same type can have same names under the same tenant.

Valid value:

  • RDS for MySQL: The DB instance name must be 4 to 64 bytes long, start with a letter, and contain only letters (case-sensitive), digits, hyphens (-), periods (.), and underscores (_).
  • RDS for PostgreSQL and RDS for SQL Server: The DB instance name must be 4 to 64 bytes long, start with a letter, and contain only letters (case-sensitive), digits, hyphens (-), and underscores (_).

replica_of_id

Yes

String

Specifies the ID of the primary DB instance. This parameter is mandatory when you create a read replica and is unavailable in other scenarios.

flavor_ref

Yes

String

Specifies the specification code. The value cannot be empty.

For details, see spec_code in Table 3 in section Querying Database Specifications.

volume

Yes

Object

Specifies the volume information.

For details, see Table 7.

availability_zone

Yes

String

Specifies the AZ ID.

The AZ ID can be obtained from the response returned after the API in Querying Database Specifications is called.

enterprise_project_id

No

String

Specifies the project ID.

disk_encryption_id

No

String

Specifies the key ID for disk encryption. The default value is empty.

region

No

String

Specifies the region ID. Currently, read replicas can be created only in the same region as that of the primary DB instance.

The value cannot be empty. For details about how to obtain this parameter value, see Regions and Endpoints.

charge_info

No

Object

Specifies the billing information, which is yearly/monthly or pay-per-use (default setting).

For details, see Table 8.

NOTE:

To create RDS for MySQL and RDS for PostgreSQL read replicas billed on a yearly/monthly basis, contact customer service to apply for the required permissions.

RDS for SQL Server does not support yearly/monthly read replicas.

Table 4 datastore field data structure description

Parameter

Mandatory

Type

Description

type

Yes

String

Specifies the DB engine. Value:

  • MySQL
  • PostgreSQL
  • SQLServer

version

Yes

String

Specifies the database version.

  • For RDS for MySQL, the value can be 5.6, 5.7, or 8.0.
  • For RDS for PostgreSQL, 10, 11, 12, 13, 14, and 15 are supported. RDS for PostgreSQL 9.5 and 9.6 are only for installed base operations.
  • For RDS for SQL Server, 2022 Enterprise Edition, 2022 Standard Edition, 2022 Web Edition (these 2022 editions require you to contact customer service), 2019 Enterprise Edition, 2019 Standard Edition, 2019 Web Edition, 2017 Enterprise Edition, 2017 Standard Edition, 2017 Web Edition, 2014 Standard Edition, 2014 Enterprise Edition, 2016 Standard Edition, 2016 Enterprise Edition, 2012 Enterprise Edition, 2012 Standard Edition, 2012 Web Edition, 2014 Web Edition, and 2016 Web Edition are supported. Example value: 2014_SE. 2008 R2 Enterprise Edition and 2008 R2 Web Edition are only for installed base operations.

For details about supported database versions, see section Querying Version Information About a DB Engine.

complete_version

No

String

Specifies the complete version number. This parameter is returned only when the DB engine is PostgreSQL.

Table 5 ha field data structure description

Parameter

Mandatory

Type

Description

mode

Yes

String

Specifies the primary/standby instance type. The value is HA (case-insensitive).

replication_mode

Yes

String

Specifies the replication mode for the standby DB instance.

Value:

  • For RDS for MySQL, the value is async or semisync.
  • For RDS for PostgreSQL, the value is async or sync.
  • For RDS for SQL Server, the value is sync.
NOTE:
  • async indicates the asynchronous replication mode.
  • semisync indicates the semi-synchronous replication mode.
  • sync indicates the synchronous replication mode.
Table 6 backup_strategy field data structure description

Parameter

Mandatory

Type

Description

start_time

Yes

String

Specifies the backup time window. Automated backups will be triggered during the backup time window.

The value cannot be empty. It must be a valid value in the "hh:mm-HH:MM" format. The current time is in the UTC format.

  • The HH value must be 1 greater than the hh value.
  • The values of mm and MM must be the same and must be set to any of the following: 00, 15, 30, or 45.

Example value:

  • 08:15-09:15
  • 23:00-00:00

keep_days

No

Integer

Specifies the retention days for specific backup files.

The value range is from 0 to 732. If this parameter is not specified or set to 0, the automated backup policy is disabled. To extend the retention period, contact customer service. Automated backups can be retained for up to 2,562 days.

NOTICE:

Primary/standby DB instances of RDS for SQL Server do not support disabling the automated backup policy.

Table 7 volume field data structure description

Parameter

Mandatory

Type

Description

type

Yes

String

Specifies the volume type.

Its value can be any of the following and is case-sensitive:

  • ULTRAHIGH: ultra-high I/O storage.
  • LOCALSSD: local SSD storage.
  • CLOUDSSD: cloud SSD storage. This storage type is supported only with general-purpose and dedicated DB instances.
  • ESSD: extreme SSD storage.

size

Yes

Integer

Specifies the volume size.

Its value must be a multiple of 10 and the value range is from 40 GB to 4,000 GB.

NOTE:

For read replicas, this parameter is invalid. The volume size is the same as that of the primary DB instance by default.

Table 8 charge_info field data structure description

Parameter

Mandatory

Type

Description

charge_mode

Yes

String

Specifies the billing mode.

Valid value:

  • prePaid: indicates the yearly/monthly billing mode.
  • postPaid: indicates the pay-per-use billing mode.

period_type

No

String

Specifies the subscription period.

Valid value:

  • month: indicates that the subscription unit is month.
  • year: indicates that the subscription unit is year.
    NOTE:

    This parameter is valid and mandatory if charge_mode is set to prePaid.

period_num

No

Integer

This parameter is valid and mandatory if charge_mode is set to prePaid.

Valid value:

  • When period_type is set to month, the parameter value ranges from 1 to 9.
  • When period_type is set to year, the parameter value ranges from 1 to 3 or can be 5.

    Only RDS for MySQL supports the 5-year subscription. The constraints are as follows:

    • You need to contact customer service to apply for the required permissions.
    • This setting is supported only in CN North-Beijing4, CN East-Shanghai1, CN South-Guangzhou, and CN Southwest-Guiyang1.
    • This setting is supported only with general-purpose instances.
Table 9 tags field data structure description

Parameter

Mandatory

Type

Description

key

Yes

String

Specifies the tag key. It must consist of 1 to 128 Unicode characters, including letters, digits, spaces, and special characters _.:=+-@. However, it cannot start or end with a space, or start with _sys_.

value

Yes

String

Specifies the tag value. It can be left blank or contain a maximum of 255 Unicode characters, including letters, digits, spaces, and the following special characters: _.:=+-@

Table 10 restore_point field data structure description

Parameter

Mandatory

Type

Description

instance_id

Yes

String

Specifies the source instance ID.

type

Yes

String

Specifies the restoration mode. Enumerated values include:

  • backup: indicates using backup files for restoration. In this mode, type is optional and backup_id is mandatory.
  • timestamp: indicates the point-in-time restoration. In this mode, type is mandatory and restore_time is mandatory.

backup_id

No

String

Specifies the ID of the backup to be restored. This parameter must be specified when backups are used for restoration.

restore_time

No

Integer

Specifies the time point of data restoration in the UNIX timestamp. The unit is millisecond and the time zone is UTC.

database_name

No

Map<String,String>

This parameter is supported only for Microsoft SQL Server databases. If this parameter is specified, you can restore specific databases and rename new databases.

  • The new database names must be different from the original database names. If you do not customize the database names, data will be restored to the original databases by default. If this parameter is not specified, all databases are restored by default.

    Example value: "database_name":{"Original database name":"New database name"}

  • New database names cannot contain the following fields (case-insensitive): rdsadmin, master, msdb, tempdb, model, and resource.
  • Each database name must consist of 1 to 64 characters. Only letters, digits, hyphens (-), and underscores (_) are allowed.
Table 11 serverless_info field data structure description

Parameter

Mandatory

Type

Description

min_cap

Yes

String

Minimum compute power of a serverless instance, in RCU. The value ranges from 0.5 to 8 and the step is 0.5.

NOTE:

RCU: RDS Capacity Unit. It is the billing unit for serverless instances.

The value of max_cap must be greater than that of min_cap.

max_cap

Yes

String

Maximum compute power of a serverless instance, in RCU. The value ranges from 0.5 to 8 and the step is 0.5.

Table 12 unchangeable_param field data structure description

Parameter

Mandatory

Type

Description

lower_case_table_names

No

String

Whether table names are case sensitive. The default value is 1.

Value range:

  • 0: Table names are fixed and case sensitive.
  • 1: Table names are stored in lowercase and are case insensitive.
NOTE:

When data is restored to an existing DB instance, the case sensitivity setting of the existing DB instance must be the same as that of the original DB instance. Otherwise, the restoration may fail.

Example Request

  • Creating an RDS for MySQL single instance
    POST https://{endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances
    
    {
    	"name": "rds-instance-rep2",
    	"datastore": {
    		"type": "MySQL",
    		"version": "5.7"
    	},
    	"flavor_ref": "rds.mysql.s1.large",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    	"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    	"data_vip": "192.168.0.1",
    	"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    	"port": 8635,
    	"backup_strategy": {
    		"start_time": "08:15-09:15",
    		"keep_days": 12
    	},
    	"charge_info": {
    		"charge_mode": "postPaid"
    	},
    	"password": "****",
    	"configuration_id": "452408-ef4b-44c5-94be-305145fg",
    	"enterprise_project_id": "fdsa-3rds",
    	"time_zone": "UTC+04:00",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	],
            "dry_run": false,
            "count": 12
    }
  • Creating an RDS for PostgreSQL single instance
    {
    	"name": "rds-instance-rep2",
    	"datastore": {
    		"type": "PostgreSQL",
    		"version": "10"
    	},
    	"flavor_ref": "rds.pg.s1.large",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    	"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    	"data_vip": "192.168.0.147",
    	"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    	"port": 8635,
    	"backup_strategy": {
    		"start_time": "08:15-09:15",
    		"keep_days": 12
    	},
    	"charge_info": {
    		"charge_mode": "postPaid"
    	},
    	"password": "Test@12345678",
    	"configuration_id": "452408-ef4b-44c5-94be-305145fg",
    	"enterprise_project_id": "fdsa-3rds",
    	"time_zone": "UTC+04:00",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	]
    }
  • Creating an RDS for MySQL 8.0 single instance with initialization parameters specified
    {
    	"name": "rds-instance-rep2",
    	"datastore": {
    		"type": "MySQL",
    		"version": "8.0"
    	},
    	"flavor_ref": "rds.mysql.s1.large",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    	"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    	"data_vip": "192.168.0.1",
    	"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    	"port": 8635,
    	"backup_strategy": {
    		"start_time": "08:15-09:15",
    		"keep_days": 12
    	},
    	"charge_info": {
    		"charge_mode": "postPaid"
    	},
    	"password": "****",
    	"configuration_id": "452408-ef4b-44c5-94be-305145fg",
    	"enterprise_project_id": "fdsa-3rds",
    	"time_zone": "UTC+04:00",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	],
    	"unchangeable_param": {
    		"lower_case_table_names": "1"
    	},
            "dry_run": false,
            "count": 12
    }
  • Creating an RDS for SQL Server single instance with collation specified
    {
    	"name": "rds-instance-rep2",
    	"datastore": {
    		"type": "SQLServer",
    		"version": "2014_SE"
    	},
    	"flavor_ref": "rds.mssql.se.m3.large.8",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    	"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    	"data_vip": "192.168.0.1",
    	"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    	"port": 8635,
    	"backup_strategy": {
    		"start_time": "08:15-09:15",
    		"keep_days": 12
    	},
    	"charge_info": {
    		"charge_mode": "postPaid"
    	},
            "collation": "Cyrillic_General_CI_AS",
    	"password": "****",
    	"configuration_id": "452408-ef4b-44c5-94be-305145fg",
    	"enterprise_project_id": "fdsa-3rds",
    	"time_zone": "UTC+04:00",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	],
    }
  • Creating a primary/standby instance
    {
    	"name": "rds-instance-rep2",
    	"datastore": {
    		"type": "MySQL",
    		"version": "5.6"
    	},
    	"ha": {
    		"mode": "ha",
    		"replication_mode": "semisync"
    	},
    	"flavor_ref": "rds.mysql.s1.large.ha",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    	"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    	"data_vip": "192.168.0.1",
    	"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    	"port": 8635,
    	"backup_strategy": {
    		"start_time": "08:15-09:15",
    		"keep_days": 12
    	},
    	"charge_info": {
    		"charge_mode": "postPaid"
    	},
    	"password": "****",
    	"configuration_id": "452408-ef4b-44c5-94be-305145fg",
    	"enterprise_project_id": "fdsa-3rds",
    	"time_zone": "UTC+04:00",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	],
            "dry_run": false,
            "count": 12
    }
  • Creating a read replica
    {
    	"name": "rds-instance-rep2",
    	"replica_of_id": "afdsad-fds-fdsagin01",
    	"flavor_ref": "rds.mysql.s1.large.rr",
    	"volume": {
    		"type": "ULTRAHIGH",
    		"size": 100
    	},
    	"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
            "region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
    	"enterprise_project_id": "fdsa-3rds",
    	"tags": [
    		{
    			"key": "key1",
    			"value": "value1"
    		},
    		{
    			"key": "key2",
    			"value": "value2"
    		}
    	]
    }
  • Creating an RDS for MySQL single serverless instance
    {
            "name": "rds-instance-serverless1",
            "datastore": {
                   "type": "MySQL",
                   "version": "5.7"
            },
            "flavor_ref": "rds.mysql.serverless",
            "volume": {
                   "type": "CLOUDSSD",
                   "size": 40
            },
            "region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
            "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
            "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
            "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
            "port": 3306,
            "backup_strategy": {
                   "start_time": "08:15-09:15",
                   "keep_days": 12
            },
            "password": "****",
            "time_zone": "UTC+04:00",
            "tags": [
                   {
                           "key": "key1",
                           "value": "value1"
                   },
                   {
                           "key": "key2",
                           "value": "value2"
                   }
            ],
            "dry_run": false,
            "count": 1,
            "serverless_info": {
                  "min_cap": "0.5",
                  "max_cap": "1"
            }
    }
  • Creating an RDS for MySQL primary/standby serverless instance
    {
            "name": "rds-instance-serverless2",
            "datastore": {
                   "type": "MySQL",
                   "version": "5.7"
            },
            "ha": {
                   "mode": "ha",
                   "replication_mode": "semisync"
            },
            "flavor_ref": "rds.mysql.serverless.ha",
            "volume": {
                   "type": "CLOUDSSD",
                   "size": 40
            },
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a,ap-southeast-1b",
            "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
            "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
            "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
            "port":3306,
            "backup_strategy": {
                   "start_time": "08:15-09:15",
                   "keep_days": 12
            },
            "password": "****",
            "time_zone": "UTC+08:00",
            "tags": [
                   {
                           "key": "key1",
                           "value": "value1"
                   },
                   {
                           "key": "key2",
                           "value": "value2"
                   }
            ],
            "dry_run": false,
            "count": 1,
            "serverless_info": {
                   "min_cap": "0.5",
                   "max_cap": "1"
            }
    }

Response

  • Normal response
    Table 13 Parameter description

    Parameter

    Type

    Description

    instance

    Object

    Indicates the DB instance information.

    For details, see Table 14.

    job_id

    String

    Indicates the ID of the DB instance creation task.

    For details about how to query task details, see Obtaining Information About a Task with a Specified ID.

    This parameter is returned only when pay-per-use DB instances are created.

    order_id

    String

    Indicates the order ID. This parameter is returned for the creation of a yearly/monthly DB instance.

    Table 14 instance field data structure description

    Parameter

    Type

    Description

    id

    String

    Indicates the DB instance ID. If instances are created in batches, multiple instance IDs separated by commas (,) are returned for the MySQL DB engine. For other DB engines, this parameter is left blank.

    name

    String

    Indicates the DB instance name. DB instances of the same type can have same names under the same tenant.

    status

    String

    Indicates the DB instance status. For example, BUILD indicates that the DB instance is being created.

    This parameter is returned only when pay-per-use DB instances are created.

    datastore

    Object

    Indicates the database information.

    For details, see Table 15.

    ha

    Object

    Indicates the HA configuration parameters. This parameter is returned only when primary/standby DB instances are created.

    For details, see Table 16.

    configuration_id

    String

    Indicates the parameter template ID. This parameter is returned only when a custom parameter template is used during DB instance creation.

    port

    String

    Indicates the database port, which is the same as the request parameter.

    backup_strategy

    Object

    Indicates the automated backup policy.

    For details, see Table 17.

    enterprise_project_id

    String

    Indicates the project ID.

    disk_encryption_id

    String

    Indicates the key ID for disk encryption. By default, this parameter is empty and is returned only when it is specified during the DB instance creation.

    NOTE:

    Serverless instances do not support this parameter.

    flavor_ref

    String

    Indicates the specification code. The value cannot be empty.

    For details, see spec_code in Table 3 in section Querying Database Specifications.

    volume

    Object

    Indicates the volume information.

    For details, see Table 18.

    region

    String

    Indicates the region ID.

    availability_zone

    String

    Indicates the AZ ID.

    vpc_id

    String

    Indicates the VPC ID. To obtain this parameter value, use either of the following methods:

    • Method 1: Log in to VPC console and view the VPC ID in the VPC details.
    • Method 2: See the "Querying VPCs" section in the Virtual Private Cloud API Reference.

    subnet_id

    String

    Indicates the network ID. To obtain this parameter value, use either of the following methods:

    • Method 1: Log in to the VPC console and click the target subnet on the Subnets page. You can view the network ID on the displayed page.
    • Method 2: See the "Querying Subnets" section in the Virtual Private Cloud API Reference.

    security_group_id

    String

    Indicates the security group which the RDS DB instance belongs to. To obtain this parameter value, use either of the following methods:

    • Method 1: Log in to VPC console. Choose Access Control > Security Groups in the navigation pane on the left. On the displayed page, click the target security group. You can view the security group ID on the displayed page.
    • Method 2: See the "Querying Security Groups" section in the Virtual Private Cloud API Reference.

    charge_info

    Object

    Indicates the billing information, which is yearly/monthly or pay-per-use.

    For details, see Table 19.

    collation

    String

    Indicates the collation set for RDS for SQL Server.

    restore_point

    Object

    Indicates the restoration information. This parameter is mandatory when data is restored to a new instance.

    For details, see Table 20.

    Table 15 datastore field data structure description

    Parameter

    Type

    Description

    type

    String

    Indicates the DB engine. Value:

    • MySQL
    • PostgreSQL
    • SQLServer

    version

    String

    Indicates the database version.

    For details about supported database versions, see section Querying Version Information About a DB Engine.

    Table 16 ha field data structure description

    Parameter

    Type

    Description

    mode

    String

    Indicates the primary/standby instance type. The value is Ha.

    replication_mode

    String

    Indicates the replication mode for the standby DB instance. This parameter is valid only when the instance is an HA instance.

    Value:

    • For RDS for MySQL, the value is async or semisync.
    • For RDS for PostgreSQL, the value is async or sync.
    • For RDS for SQL Server, the value is sync.
    NOTE:
    • async indicates the asynchronous replication mode.
    • semisync indicates the semi-synchronous replication mode.
    • sync indicates the synchronous replication mode.
    Table 17 backupStrategy field data structure description

    Parameter

    Type

    Description

    start_time

    String

    Indicates the backup time window. Automated backups will be triggered during the backup time window.

    The value cannot be empty. It must be a valid value in the "hh:mm-HH:MM" format. The current time is in the UTC format.

    • The HH value must be 1 greater than the hh value.
    • The values of mm and MM must be the same and must be set to any of the following: 00, 15, 30, or 45.

    Example value:

    • 08:15-09:15
    • 23:00-00:00

    If backup_strategy in the request body is empty, 02:00-03:00 is returned for start_time by default.

    keep_days

    Integer

    Indicates the retention days for specific backup files.

    The value range is from 0 to 732. If this parameter is not specified or set to 0, the automated backup policy is disabled. To extend the retention period, contact customer service. Automated backups can be retained for up to 2,562 days.

    If backup_strategy in the request body is empty, 7 is returned for keep_days by default.

    Table 18 volume field data structure description

    Parameter

    Type

    Description

    type

    String

    Indicates the volume type.

    Its value can be any of the following and is case-sensitive:

    • ULTRAHIGH: ultra-high I/O storage.
    • LOCALSSD: local SSD storage.
    • CLOUDSSD: cloud SSD storage. This storage type is supported only with general-purpose and dedicated DB instances.
    • ESSD: extreme SSD storage.

    size

    Integer

    Indicates the volume size.

    Its value range is from 40 GB to 4,000 GB. The value must be a multiple of 10.

    Table 19 chargeInfo field data structure description

    Parameter

    Type

    Description

    charge_mode

    String

    Indicates the billing information, which is yearly/monthly or pay-per-use.

    period_num

    Integer

    Indicates the subscription period, which is calculated by month.

    This parameter is valid when charge_mode is set to prePaid (creating yearly/monthly DB instances).

    Table 20 restore_point field data structure description

    Parameter

    Type

    Description

    instance_id

    String

    Specifies the source instance ID.

    type

    String

    Specifies the restoration mode.

    • backup: indicates using backup files for restoration.
    • timestamp: indicates the point-in-time restoration.

    backup_id

    String

    Specifies the ID of the backup to be restored.

    restore_time

    Integer

    Specifies the time point of data restoration in the UNIX timestamp. The unit is millisecond and the time zone is UTC.

    database_name

    Map<String,String>

    This parameter is supported only for Microsoft SQL Server databases. If this parameter is specified, you can restore specific databases and rename new databases.

The values of region and availability_zone are used as examples.

  • Example normal response

    RDS for MySQL single instance created.

    {
    	"instance": {
    		"id": "dsfae23fsfdsae3435in01",
    		"name": "trove-instance-rep2",
    		"datastore": {
    			"type": "MySQL",
    			"version": "5.7"
    		},
    		"flavor_ref": "rds.mysql.s1.large",
    		"volume": {
    			"type": "ULTRAHIGH",
    			"size": 100
    		},
    		"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
                    "region": "ap-southeast-1",
    	        "availability_zone": "ap-southeast-1a",
    		"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    		"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    		"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    		"port": "8635",
    		"backup_strategy": {
    			"start_time": "08:15-09:15",
    			"keep_days": 3
    		},
    		"configuration_id": "452408-44c5-94be-305145fg",
    		"charge_info": {
    			"charge_mode": "postPaid"
    		}
    	},
    	"job_id": "dff1d289-4d03-4942-8b9f-463ea07c000d"
    }

    RDS for SQL Server single instance created.

    {
    	"instance": {
    		"id": "dsfae23fsfdsae3435in01",
    		"name": "trove-instance-rep2",
    		"datastore": {
    			"type": "sqlserver",
    			"version": "2014_SE"
    		},
    		"flavor_ref": "rds.mssql.2014.se.s3.large.2",
    		"volume": {
    			"type": "ULTRAHIGH",
    			"size": 100
    		},
    		"disk_encryption_id": "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
                    "region": "ap-southeast-1",
    	        "availability_zone": "ap-southeast-1a",
    		"vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce",
    		"subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
    		"security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5",
    		"port": "8635",
    		"backup_strategy": {
    			"start_time": "08:15-09:15",
    			"keep_days": 3
    		},
    		"configuration_id": "452408-44c5-94be-305145fg",
    		"charge_info": {
    			"charge_mode": "postPaid"
    		},
                   "collation": "Cyrillic_General_CI_AS" 
    	},
    	"job_id": "dff1d289-4d03-4942-8b9f-463ea07c000d"
    }

    Primary/standby instance created.

    {
      "instance":{ 
               "id": "dsfae23fsfdsae3435in01",
               "name": "trove-instance-rep2", 
               "datastore": { 
                 "type": "MySQL", 
                 "version": "5.7" 
                }, 
               "ha": {
                 "mode": "ha",
                 "replication_mode": "semisync"
               },
               "flavor_ref": "rds.mysql.s1.large.ha",
               "volume": { 
                   "type": "ULTRAHIGH", 
                   "size": 100 
                 },
               "disk_encryption_id":  "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
    	   "region": "ap-southeast-1",
    	   "availability_zone": "ap-southeast-1a,ap-southeast-1b",
               "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce", 
               "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
               "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5", 
               "port": "8635", 
               "backup_strategy": { 
                 "start_time": "08:15-09:15", 
                 "keep_days": 3 
                }, 
               "configuration_id": "452408-44c5-94be-305145fg",
               "charge_info": {
                       "charge_mode": "postPaid"
                                   },
             },
      "job_id": "dff1d289-4d03-4942-8b9f-463ea07c000d" 
    }

    Read replica created.

    {
      "instance":{ 
                "id": "dsfae23fsfdsae3435in01",
                "name": "trove-instance-rep2", 
                "flavor_ref": "rds.mysql.s1.large.rr",
                 "volume": { 
                   "type": "ULTRAHIGH", 
                   "size": 100 
                 },
               "disk_encryption_id":  "2gfdsh-844a-4023-a776-fc5c5fb71fb4",
               "region": "ap-southeast-1",
               "availability_zone": "ap-southeast-1a",
               "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce", 
               "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f",
               "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5", 
               "port": "8635", 
               "configuration_id": "452408-44c5-94be-305145fg"
             },
     "job_id": "dff1d289-4d03-4942-8b9f-463ea07c000d"  
    }

    RDS for MySQL single serverless instance created.

    {
        "instance": {
            "id": "4c57a8203dd348f3b789476165755b20in01",
            "name": "serverless_single1",
            "status": "BUILD",
            "datastore": {
                "type": "MySQL",
                "version": "5.7"
            },
            "port": "3307",
            "volume": {
                "type": "CLOUDSSD",
                "size": 40
            },
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a",
            "backup_strategy": {
                "start_time": "08:15-09:15",
                "keep_days": 12
            },
            "flavor_ref": "rds.mysql.serverless",
            "vpc_id": "bd3e4c67-74da-459d-820f-9fecd4ea9ca4",
            "subnet_id": "53cdf568-6f56-4944-a996-4afcaffe994e",
            "security_group_id": "89f258c5-4b81-4ef0-be30-34f2ee07dd1c",
            "charge_info": {
                "charge_mode": "postPaid"
            }
        },
        "job_id": "3c1b8910-4191-4eed-9865-49bd82bac65b"
    }

    RDS for MySQL primary/standby serverless instance created.

    {
        "instance": {
            "id": "4c57a8203dd348f3b789476165755b20in01",
            "name": "serverless_ha1",
            "status": "BUILD",
            "datastore": {
                "type": "MySQL",
                "version": "5.7"
            },
            "ha": {
                "mode": "Ha",
                "replication_mode": "semisync"
            },
            "port": "3307",
            "volume": {
                "type": "CLOUDSSD",
                "size": 40
            },
    	"region": "ap-southeast-1",
    	"availability_zone": "ap-southeast-1a,ap-southeast-1b",
            "backup_strategy": {
                "start_time": "08:15-09:15",
                "keep_days": 12
            },
            "flavor_ref": "rds.mysql.serverless.ha",
            "vpc_id": "bd3e4c67-74da-459d-820f-9fecd4ea9ca4",
            "subnet_id": "53cdf568-6f56-4944-a996-4afcaffe994e",
            "security_group_id": "89f258c5-4b81-4ef0-be30-34f2ee07dd1c",
            "charge_info": {
                "charge_mode": "postPaid"
            }
        },
        "job_id": "3c1b8910-4191-4eed-9865-49bd82bac65b"
    }
  • Abnormal response

    For details, see Abnormal Request Results.

Status Code

Error Code

For details, see Error Codes.