Database > RDS for MariaDB > API Guide

RDS for MariaDB API Common Information

API Endpoint

Region Endpoint
Korea (Pangyo) region https://kr1-rds-mariadb.api.nhncloudservice.com

Authentication and Authorization

RDS for MariaDB uses User Access Key tokens for authentication and authorization when making API calls. The User Access Key token is a temporary, Bearer-type access token issued from a User Access Key. For more information on issuing and using User Access Key tokens, please refer to the User Access Key Token. The issued token must be included in the request header along with the Appkey.

Name Type Format Required Description
X-TC-APP-KEY Header String O Appkey of RDS for MariaDB or integrated Appkey for project
X-NHN-AUTHORIZATION Header String O Bearer type token issued with the Public API

In addition, the APIs you can call are limited based on the project member role. You can grant permissions separately for RDS for MariaDB ADMIN and RDS for MariaDB VIEWER.

  • RDS for MariaDB ADMIN permission holders can use all available features as before.
  • RDS for MariaDB VIEWER permission holders can use read-only feature.
    • Cannot use any features aimed at DB instances or create, modify, or delete any DB instance.
    • But, notification group and user group-related features are available.

If an API request fails to authenticate or is not authorized, the following error occurs.

resultCode resultMessage Description
80401 Unauthorized Failed to authenticate
80403 Forbidden Unauthorized.

Common Response Information

The API responds with "200 OK" to all API requests. For more information on the response results, see Response Body Header.

Response Body

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}

Field

Name Format Description
resultCode Number Result code
- Success: 0
- Failure: Non-zero
resultMessage String Result message
isSuccessful Boolean Successful or not

DB engine type

DB engine type Available for creation Available for restoration from OBS Authentication Plugin Support
MARIADB_V10330 O O NATIVE, ED25519
MARIADB_V10611 O O NATIVE, ED25519
MARIADB_V10612 O O NATIVE, ED25519
MARIADB_V10616 O O NATIVE, ED25519
MARIADB_V10622 O O NATIVE, ED25519
MARIADB_V101107 O O NATIVE, ED25519
MARIADB_V101108 O O NATIVE, ED25519
MARIADB_V101113 O O NATIVE, ED25519
MARIADB_V11407 O O NATIVE, ED25519
  • You can use the value for the dbVersion field of ENUM type.
  • Depending on the version, creation or restoration may not be possible.

Project Information

List Regions

GET /v4.0/project/regions

Required permissions

Permission Name Description
RDSforMariaDB:Project.Get Query project information

Request

This API does not require a request body.

Response

Name Type Format Description
regions Body Array Region list
regions.regionCode Body Enum Region code
- KR1: Korea (Pangyo)
regions.isEnabled Body Boolean Whether to enable a region
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "regions": [
        {
            "regionCode": "KR1",
            "isEnabled": true
        }
    ]
}

List Project Members

GET /v4.0/project/members

Required permissions

Permission Name Description
RDSforMariaDB:Project.Get Query project information

Request

This API does not require a request body.

Response

Name Type Format Description
members Body Array Project member list
members.memberId Body UUID Project member identifier
members.memberName Body String Project member name
members.emailAddress Body String Project member email address
members.phoneNumber Body String Project member mobile
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "members": [
        {
            "memberId": "1b1d3627-507a-49ea-8cb7-c86dfa9caa58",
            "memberName": "Hong Gildong",
            "emailAddress": "gildong.hong@nhn.com",
            "phoneNumber": "+821012345678"
        }
    ]
}


Specifications of DB Instance

List DB Instance Specifications

GET /v4.0/db-flavors

Required permissions

Permission Name Description
RDSforMariaDB:DbFlavor.List List DB Instance Specifications

Request

This API does not require a request body.

Response

Name Type Format Description
dbFlavors Body Array List of DB instance specifications
dbFlavors.dbFlavorId Body UUID Identifier of DB instance specifications
dbFlavors.dbFlavorName Body String Name of DB instance specifications
dbFlavors.ram Body Number Memory size (MB)
dbFlavors.vcpus Body Number CPU cores
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbFlavors": [
        {
            "dbFlavorId": "50be6d9c-02d6-4594-a2d4-12010eb65ec0",
            "dbFlavorName": "m2.c1m2",
            "ram": 2048,
            "vcpus": 1
        }
    ]
}


Network

List Subnets

GET /v4.0/network/subnets

Required permissions

Permission Name Description
RDSforMariaDB:Network.List List subnets

Request

This API does not require a request body.

Response

Name Type Format Description
subnets Body Array Subnet list
subnets.subnetId Body UUID Subnet identifier
subnets.subnetName Body String Name to identify subnets
subnets.subnetCidr Body String CIDR of subnet
subnets.usingGateway Body Boolean Whether to use gateway
subnets.availableIpCount Body Number Number of available IPs
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "subnets": [
        {
            "subnetId": "1b2a9b23-0725-4b92-8c78-35db66b8ad9f",
            "subnetName": "Default Network",
            "subnetCidr": "192.168.0.0/24",
            "usingGateway": true,
            "availableIpCount": 240
        }
    ]
}


DB Engine

List DB Engines

GET /v4.0/db-versions

Required permissions

Permission Name Description
RDSforMariaDB:DbVersion.List List DB Engines

Request

This API does not require a request body.

Response

Name Type Format Description
dbVersions Body Array DB engine list
dbVersions.dbVersion Body String DB engine type
dbVersions.dbVersionName Body String DB engine name
dbVersions.restorableFromObs Body Boolean Restoring backup from object storage available or not
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbVersions": [
        {
            "dbVersion": "MARIADB_V10330",
            "dbVersionName": "Maria DB 10.3.30",
            "restorableFromObs": true
        }
    ]
}


Storage

List Storage Type

GET /v4.0/storage-types

Required permissions

Permission Name Description
RDSforMariaDB:Storage.List List data storage types

Request

This API does not require a request body.

Response

Name Type Format Description
storageTypes Body Array Storage type list
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "storageTypes": [
        "General SSD",
        "General HDD"
    ]
}


Task Information

Task Status

Status Name Description
PREPARING Task in preparation
READY Task in ready
RUNNING Task in progress
COMPLETED Task completed
REGISTERED Task registered
WAIT_TO_REGISTER Task waiting to register
INTERRUPTED Task being interrupted
CANCELED Task canceled
FAILED Task failed
ERROR Error occurred while task in progress
DELETED Task deleted
FAIL_TO_READY Failed to get ready for task

List Task Details

GET /v4.0/jobs/{jobId}

Required permissions

Permission Name Description
RDSforMariaDB:Job.Get List Task Details

Request

This API does not require a request body.

Name Type Format Required Description
jobId URL UUID O Task identifier

Response

Name Type Format Description
jobId Body UUID Task identifier
jobStatus Body Enum Current task status
resourceRelations Body Array Relevant resource list
resourceRelations.resourceType Body Enum Relevant resource type
resourceRelations.resourceId Body UUID Relevant resource identifier
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "jobId": "0ddb042c-5af6-43fb-a914-f4dd0540eb7c",
    "jobStatus": "RUNNING",
    "resourceRelations": [
        {
            "resourceType": "DB_INSTANCE",
            "resourceId": "56b39dcf-65eb-47ec-9d4f-09f160ba2266"
        }
    ],
    "createdYmdt": "2023-02-22T20:47:12+09:00",
    "updatedYmdt": "2023-02-22T20:49:46+09:00"
}


DB Instance Group

List DB Instance Groups

GET /v4.0/db-instance-groups

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceGroup.List List DB Instances

Request

This API does not require a request body.

Response

Name Type Format Description
dbInstanceGroups Body Array DB instance groups
dbInstanceGroups.dbInstanceGroupId Body UUID DB instance group identifier
dbInstanceGroups.replicationType Body Enum DB instance group replication type
- STANDALONE: Standalone
- HIGH_AVAILABILITY: High availability
dbInstanceGroups.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
dbInstanceGroups.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbInstanceGroups": [
        {
            "dbInstanceGroupId": "05de0746-89fd-49c8-94f9-9c5b1df97009",
            "replicationType": "STANDALONE",
            "createdYmdt": "2023-02-13T17:35:20+09:00",
            "updatedYmdt": "2023-02-13T17:35:20+09:00"
        }
    ]
}


List DB Instance Group Details

GET /v4.0/db-instance-groups/{dbInstanceGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceGroup.Get List DB Instance Group Details

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceGroupId URL UUID O DB instance group identifier

Response

Name Type Format Description
dbInstanceGroupId Body UUID DB instance group identifier
replicationType Body Enum DB instance group replication type
- STANDALONE: Standalone
- HIGH_AVAILABILITY: High availability
dbInstances Body Array DB instances belong to DB instance group
dbInstances.dbInstanceId Body UUID DB instance identifier
dbInstances.dbInstanceType Body Enum DB instance role type
- MASTER: Master
- FAILED_MASTER: Failed over master
- CANDIDATE_MASTER: Candidate master
- READ_ONLY_SLAVE: Read replica
dbInstances.dbInstanceStatus Body Enum DB instance current status
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbInstanceGroupId": "36617a8e-0df8-4b16-b6ea-6306019e95da",
    "replicationType": "STANDALONE",
    "dbInstances": [
        {
            "dbInstanceId": "6d2db0ef-fe9b-4ed4-97b1-d97fcb4cf1b8",
            "dbInstanceType": "MASTER",
            "dbInstanceStatus": "AVAILABLE"
        }
    ],
    "createdYmdt": "2023-03-03T17:38:14+09:00",
    "updatedYmdt": "2023-03-03T17:38:14+09:00"
}


DB Instance

DB Instance Status

Status Description
AVAILABLE DB instance is available
BEFORE_CREATE Before DB instance is created
STORAGE_FULL Insufficient DB instance storage
FAIL_TO_CREATE Failed to create DB instance
FAIL_TO_CONNECT Failed to connect DB instance
REPLICATION_STOP Replication of DB instance is stopped
FAILOVER High availability DB instance failed over
SHUTDOWN DB instance is stopped
DELETED DB instance is deleted

DB Instance Progress Status

Status Description
APPLYING_PARAMETER_GROUP Parameter group is being applied
BACKING_UP Backing up
CANCELING Canceling
CREATING Creating
CREATING_SCHEMA Creating DB schema
CREATING_USER Creating user
DELETING Deleting
DELETING_SCHEMA Deleting DB schema
DELETING_USER Deleting user
EXPORTING_BACKUP Exporting backup
FAILING_OVER Under failover
MIGRATING Under migration
MODIFYING Under modification
PREPARING In preparation
PROMOTING Promoting
REBUILDING Rebuilding
REPAIRING Recovering
REPLICATING Replicating
RESTARTING Restarting
RESTARTING_FORCIBLY Force restarting
RESTORING Restoring
STARTING Starting
STOPPING Stopping
SYNCING_SCHEMA Synchronizing DB schema
SYNCING_USER Synchronizing user
UPDATING_USER Modifying user

List DB instances

GET /v4.0/db-instances

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.List List DB instances

Request

This API does not require a request body.

Response

Name Type Format Description
dbInstances Body Array DB instances
dbInstances.dbInstanceId Body UUID DB instance identifier
dbInstances.dbInstanceGroupId Body UUID DB instance group identifier
dbInstances.dbInstanceName Body String Name to identify DB instances
dbInstances.description Body String Additional information on DB instances
dbInstances.dbVersion Body Enum DB engine type
dbInstances.dbPort Body Number DB port
dbInstances.dbInstanceType Body Enum DB instance role type
- MASTER: Master
- FAILED_MASTER: Failed over master
- CANDIDATE_MASTER: Candidate master
- READ_ONLY_SLAVE: Read replica
dbInstances.dbInstanceStatus Body Enum DB instance current status
dbInstances.progressStatus Body Enum DB instance current status
dbInstances.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
dbInstances.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbInstances": [
        {
            "dbInstanceId": "d067593b-1acc-4ccc-9e8a-cc72d6d79ec3",
            "dbInstanceGroupId": "51c7d080-ff36-4025-84b1-9d9d0b4fe9e0",
            "dbInstanceName": "db-instance",
            "description": null,
            "dbVersion": "MARIADB_V10330",
            "dbPort": 10000,
            "dbInstanceType": "MASTER",
            "dbInstanceStatus": "AVAILABLE",
            "progressStatus": "NONE",
            "createdYmdt": "2023-01-23T12:03:13+09:00",
            "updatedYmdt": "2023-02-02T17:20:17+09:00"
        }
    ]
}


List DB Instance Details

GET /v4.0/db-instances/{dbInstanceId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
dbInstanceId Body UUID DB instance identifier
dbInstanceGroupId Body UUID DB instance group identifier
dbInstanceName Body String Name to identify DB instances
description Body String Additional information on DB instances
dbVersion Body Enum DB engine type
dbPort Body Number DB port
dbInstanceType Body Enum DB instance role type
- MASTER: Master
- FAILED_MASTER: Failed over master
- CANDIDATE_MASTER: Candidate master
- READ_ONLY_SLAVE: Read replica
dbInstanceStatus Body Enum DB instance current status
progressStatus Body Enum Current task status of DB instance
dbFlavorId Body UUID Identifier of DB instance specifications
parameterGroupId Body UUID Parameter group identifier applied to DB instance
dbSecurityGroupIds Body Array DB security group identifiers applied to DB instance
notificationGroupIds Body Array Notification group identifiers applied to DB instance
useDeletionProtection Body Boolean Whether to protect DB instance against deletion
useSlowQueryAnalysis Body Boolean Whether to analyze slow queries
supportAuthenticationPlugin Body Boolean Whether to support authentication plugin
needToApplyParameterGroup Body Boolean Need to apply the latest parameter group
needMigration Body Boolean Need to migrate
supportDbVersionUpgrade Body Boolean Whether to support DB version upgrade
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbInstanceId": "d067593b-1acc-4ccc-9e8a-cc72d6d79ec3",
    "dbInstanceGroupId": "51c7d080-ff36-4025-84b1-9d9d0b4fe9e0",
    "dbInstanceName": "db-instance",
    "description": null,
    "dbVersion": "MARIADB_V10330",
    "dbPort": 10000,
    "dbInstanceType": "MASTER",
    "dbInstanceStatus": "AVAILABLE",
    "progressStatus": "NONE",
    "dbFlavorId": "e9ed4ef6-78d7-46fa-ace9-32481e97f3b7",
    "parameterGroupId": "b03e8b13-de27-4d04-a488-ff5689589372",
    "dbSecurityGroupIds": ["01908c35-d2c9-4852-baf0-17f06ec42c03"],
    "notificationGroupIds": ["83a62a33-ddbf-4a04-8653-e54463d5b1ac"],
    "useDeletionProtection": false,
    "useSlowQueryAnalysis": true,
    "supportAuthenticationPlugin": true,
    "needToApplyParameterGroup": false,
    "needMigration": false,
    "supportDbVersionUpgrade": true,
    "createdYmdt": "2022-11-23T12:03:13+09:00",
    "updatedYmdt": "2022-12-02T17:20:17+09:00"
}


Create DB Instance

POST /v4.0/db-instances

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Create Create DB Instance

Request

Name Type Format Required Description
dbInstanceName Body String O Master name to identify DB instances
dbInstanceCandidateName Body String O Candidate name to identify DB instances
description Body String X Additional information on DB instances
dbFlavorId Body UUID O Identifier of DB instance specifications
dbVersion Body Enum O DB engine type
dbPort Body Number O DB port
- Minimum value: 3306
- Maximum value: 43306
dbUserName Body String O DB user account name
dbPassword Body String O DB user account password
- Minimum length: 4
- Maximum length: 256
parameterGroupId Body UUID O Parameter group identifier
dbSecurityGroupIds Body Array X DB security group identifiers
userGroupIds Body Array X User group identifiers
useHighAvailability Body Boolean X Whether to use high availability
- Default: false
pingInterval Body Number X Ping interval (sec) when using high availability
- Default: 3
- Minimum value: 1
- Maximum value: 600
useDefaultNotification Body Boolean X Whether to use default notification
- Default: false
useDeletionProtection Body Boolean X Whether to protect against deletion
- Default: false
useSlowQueryAnalysis Body Boolean X Whether to analyze slow queries
- Default: true
authenticationPlugin Body Enum X Authentication Plugin
- Default: NATIVE(ED25519 if not supported)
- NATIVE: mysql_native_password
- ED25519: auth_ed25519
network Body Object O Network information objects
network.subnetId Body UUID O Subnet identifier
network.usePublicAccess Body Boolean X External access is available or not
- Default: false
network.availabilityZone Body Enum O Availability zone where DB instance will be created
- Example: kr-pub-a
storage Body Object O Storage information objects
storage.storageType Body Enum O Block Storage Type
- Example: General SSD
storage.storageSize Body Number O Block Storage Size (GB)
- Minimum value: 20
- Maximum value: 2048
storage.storageAutoscale Body Object X Block Storage Auto Scaling Objects
storage.storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
storage.storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Minimum value: 50
- Maximum value: 95
storage.storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Maximum value: 4096
storage.storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Minimum value: 10
- Maximum value: 1440
backup Body Object O Backup information objects
backup.backupPeriod Body Number O Backup retention period
- Minimum value: 0
- Maximum value: 730
backup.ftwrlWaitTimeout Body Number X Query latency (sec)
- Default: 1800
- Minimum value: 0
- Maximum value: 21600
backup.backupRetryCount Body Number X Number of backup retries
- Default: 0
- Minimum value: 0
- Maximum value: 10
backup.useBackupLock Body Boolean X Whether to use table lock
- Default: true
backup.backupSchedules Body Array O Scheduled auto backup list
backup.backupSchedules.backupWndBgnTime Body String O Backup started time
- Example: 00:00:00
backup.backupSchedules.backupWndDuration Body Enum O Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour
Example

{
    "dbInstanceName": "db-instance",
    "description": "description",
    "dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
    "dbVersion": "MARIADB_V10330",
    "dbPort": 10000,
    "dbUserName": "db-user",
    "dbPassword": "password",
    "parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
    "dbSecurityGroupIds": [
        "b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
    ],
    "userGroupIds": [],
    "network": {
        "subnetId": "e721a9dd-dad0-4cf0-a53b-dd654ebfc683",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "ONE_HOUR"
            }
        ]
    }
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Modify DB Instance

PUT /v4.0/db-instances/{dbInstanceId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Modify Modify DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbInstanceName Body String X Master name to identify DB instances
dbInstanceCandidateName Body String X Candidate name to identify DB instances
description Body String X Additional information on DB instances
dbPort Body Number X DB port
- Minimum value: 3306
- Maximum value: 43306
useSlowQueryAnalysis Body Boolean X Whether to analyze slow queries
dbFlavorId Body UUID X Identifier of DB instance specifications
parameterGroupId Body UUID X Parameter group identifier
dbSecurityGroupIds Body Array X DB security group identifiers
executeBackup Body Boolean X Whether to execute backup at this time
- Default: false
useOnlineFailover Body Boolean X Whether to restart using failover
Available only for DB instance using high availability
- Default: false
waitReplicationDelay Body Boolean X Wait for replication lag to clear
Available only for DB instances with high availability enabled.
- Default: false
useReadOnly Body Boolean X Switch to read-only mode
Available only for DB instances with high availability enabled.
- Default: false
Example

{
    "dbInstanceName": "db-instance2",
    "description": "description2",
    "dbPort": 10001,
    "dbSecurityGroupIds": [],
    "executeBackup": true
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Delete DB instance

DELETE /v4.0/db-instances/{dbInstanceId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Delete Delete DB instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
deleteAutoBackup Body Boolean X Delete automated backups
- Default: false

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Restart DB Instance

POST /v4.0/db-instances/{dbInstanceId}/restart

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Restart Restart DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
useOnlineFailover Body Boolean X Whether to restart using failover
Available only for DB instance using high availability
- Default: false
executeBackup Body Boolean X Whether to execute backup at this time
- Default: false
waitReplicationDelay Body Boolean X Wait for replication lag to clear
Available only for DB instances with high availability enabled.
- Default: false
useReadOnly Body Boolean X Switch to read-only mode
Available only for DB instances with high availability enabled.
- Default: false

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Force Restart DB instance

POST /v4.0/db-instances/{dbInstanceId}/force-restart

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.ForceRestart Force Restart DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Start DB Instance

POST /v4.0/db-instances/{dbInstanceId}/start

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Start Start DB Instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Stop DB Instance

POST /v4.0/db-instances/{dbInstanceId}/stop

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Stop Stop DB Instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Replicate DB Instance

POST /v4.0/db-instances/{dbInstanceId}/replicate

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Replicate Replicate DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbInstanceName Body String O Name to identify DB instances
description Body String X Additional information on DB instances
dbFlavorId Body UUID X Identifier of DB instance specifications
- Default: Original DB instance value
dbPort Body Number X DB port
- Default: Original DB instance value
- Minimum value: 3306
- Maximum value: 43306
parameterGroupId Body UUID X Parameter group identifier
- Default: Original DB instance value
dbSecurityGroupIds Body Array X DB security group identifiers
- Default: Original DB instance value
userGroupIds Body Array X User group identifiers
useDefaultNotification Body Boolean X Whether to use default notification
- Default: false
useDeletionProtection Body Boolean X Whether to protect against deletion
- Default: false
useSlowQueryAnalysis Body Boolean X Whether to analyze Slow query
- Default: true
network Body Object O Network information objects
network.usePublicAccess Body Boolean X External access is available or not
- Default: Original DB instance value
network.availabilityZone Body Enum O Availability zone where DB instance will be created
- Example: kr-pub-a
storage Body Object X Storage information objects
storage.storageType Body Enum X Block Storage Type
- Default: Original DB instance value
- Example: General SSD
storage.storageSize Body Number X Block Storage Size (GB)
- Default: Original DB instance value
- Minimum value: 20
- Maximum value: 2048
storage.storageAutoscale Body Object X Block Storage Auto Scaling Objects
storage.storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
storage.storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Default: Original DB instance value
- Minimum value: 50
- Maximum value: 95
storage.storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Default: Original DB instance value
- Maximum value: 4096
storage.storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Minimum value: 10
- Maximum value: 1440
backup Body Object X Backup information objects
backup.backupPeriod Body Number X Backup retention period
- Default: Original DB instance value
- Minimum value: 0
- Maximum value: 730
backup.ftwrlWaitTimeout Body Number X Query latency (sec)
- Default: Original DB instance value
- Minimum value: 0
- Maximum value: 21600
backup.backupRetryCount Body Number X Number of backup retries
- Default: Original DB instance value
- Minimum value: 0
- Maximum value: 10
backup.useBackupLock Body Boolean X Whether to use table lock
- Default: Original DB instance value
backup.backupSchedules Body Array X Scheduled auto backup list
backup.backupSchedules.backupWndBgnTime Body String X Backup started time
- Example: 00:00:00
- Default: Original DB instance value
backup.backupSchedules.backupWndDuration Body Enum X Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour
- Default: Original DB instance value
Example

{
    "dbInstanceName": "db-instance-replicate",
    "description": "description",
    "dbPort": 11000,
    "network": {
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "stroageSize": 100
    }
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Promote DB Instance

POST /v4.0/db-instances/{dbInstanceId}/promote

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Promote Promote DB Instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Rebuild DB Instance

POST /v4.0/db-instances/{dbInstanceId}/rebuild

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Rebuild Rebuild DB Instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

View Restoration Information

GET /v4.0/db-instances/{dbInstanceId}/restoration-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
oldestRestorableYmdt Body DateTime Oldest restorable time
latestRestorableYmdt Body DateTime Most recent restorable time
restorableBackups Body Array List of restorable backups
restorableBackups.backup Body Object Backup information objects
restorableBackups.backup.backupId Body UUID Backup identifier
restorableBackups.backup.backupName Body String Backup name
restorableBackups.backup.useBackupLock Body Boolean Whether to use table lock
restorableBackups.backup.backupSize Body Number Backup size
restorableBackups.backup.backupType Body Enum Backup type
- AUTO: Automatic
- MANUAL: Manual
restorableBackups.backup.backupStatus Body Enum Backup Status
- BACKING_UP: Backup in progress
- COMPLETED: Backup completed
- DELETING: Backup being deleted
- DELETED: Backup deleted
- ERROR: Error occurred
restorableBackups.backup.dbInstanceId Body UUID Original DB instance identifier
restorableBackups.backup.dbInstanceName Body String Original DB instance name
restorableBackups.backup.dbVersion Body String DB engine type
restorableBackups.backup.failoverCount Body Number Number of failovers
restorableBackups.backup.binLogFileName Body String Binary log file name
restorableBackups.backup.binLogPosition Body Number Binary log file location
restorableBackups.backup.createdYmdt Body DateTime Date and time of backup creation
restorableBackups.backup.updatedYmdt Body DateTime Date and time of backup renewal
restorableBackups.restorableBinLogs Body Array Binary log names that can be restored using the backup
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "oldestRestorableYmdt": "2023-07-09T16:33:33+09:00",
    "latestRestorableYmdt": "2023-07-10T15:44:44+09:00",
    "restorableBackups": [
        {
            "backup": {
                "backupId": "145d889a-fe08-474f-8f58-bde576ff96a9",
                "backupName": "example-backup-name",
                "backupStatus": "COMPLETED",
                "dbInstanceId": "dba1be25-9429-4589-9716-7fb6daad7cb9",
                "dbInstanceName": "original-db-instance-name",
                "dbVersion": "MARIADB_V10330",
                "backupType": "MANUAL",
                "backupSize": 8299904,
                "useBackupLock": true,
                "failoverCount": 0,
                "binLogFileName": "mysql-bin.000001",
                "binLogPosition": 367916037,
                "createdYmdt": "2023-07-10T15:44:44+09:00",
                "updatedYmdt": "2023-07-10T15:46:07+09:00"
            },
            "restorableBinLogs": [
                "mysql-bin.000001"
            ]
        }
    ]
}


View the last query to be restored

GET /v4.0/db-instances/{dbInstanceId}/restoration-info/last-query

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Common Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
restoreType Query Enum O Restoration type
- TIMESTAMP: A point-in-time restoration type using the time within the restorable time
- BINLOG: A point-in-time restoration type using a binary log location that can be restored.

If restoreType is TIMESTAMP

Name Type Format Required Description
restoreYmdt Query DateTime O DB instance restore date (YYYY-MM-DDThh:mm:ss.SSSTZD)

If restoreType is BINLOG

Name Type Format Required Description
backupId Query UUID O Identifier of the backup to use for restoration
binLogFileName Query String O Binary log name to use for restoration
binLogPosition Query Number O Binary log location to use for restoration

Response

Name Type Format Description
executedYmdt Body DateTime Query executed date (YYYY-MM-DDThh:mm:ss.SSSTZD)
lastQuery Body String Last executed query
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "executedYmdt": "2023-03-17T14:02:29+09:00",
    "lastQuery": "INSERT INTO `test`.`test`SET  @1='0123'"
}


Restoration

POST /v4.0/db-instances/{dbInstanceId}/restore

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Restore Restore DB Instance

Common Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
restore Body Object O Restoration information object
restore.restoreType Body Enum O Restoration type
- TIMESTAMP: A point-in-time restoration type using the time within the restorable time
- BINLOG: A point-in-time restoration type using a binary log location that can be restored.
- BACKUP: Snapshot restoration type using a previously created backup
dbInstanceName Body String O Master name to identify DB instances
dbInstanceCandidateName Body String O Candidate name to identify DB instances
- Required to use high availability
description Body String X Additional information on DB instances
dbFlavorId Body UUID X Identifier of DB instance specifications
dbPort Body Number X DB port
- Default: Source DB instance value
- Minimum value: 3306
- Maximum value: 43306
parameterGroupId Body UUID X Parameter group identifier
- Default: Source DB instance value
dbSecurityGroupIds Body Array X DB security group identifiers
userGroupIds Body Array X User group identifiers
useHighAvailability Body Boolean X Whether to use high availability
- Default: false
pingInterval Body Number X Ping interval (sec) when using high availability
- Default: 3
- Minimum value: 1
- Maximum value: 600
useDefaultNotification Body Boolean X Whether to use default notification
- Default: false
useDeletionProtection Body Boolean X Whether to protect against deletion
Default: false
useSlowQueryAnalysis Body Boolean X Whether to analyze slow queries
- Default: true
network Body Object X Network information objects
network.subnetId Body UUID X Subnet identifier
- Default: Source DB instance value
network.usePublicAccess Body Boolean X External access is available or not
- Default: false
network.availabilityZone Body Enum X Availability zone where DB instance will be created
- Example: kr-pub-a
- Default: Random selection
storage Body Object X Storage information objects
storage.storageType Body Enum X Block Storage Type
- Default: Source DB instance value
- Example: General SSD
storage.storageSize Body Number X Block Storage Size (GB)
- Default: Source DB instance value
- Minimum value: 20
- Maximum value: 2048
storage.storageAutoscale Body Object X Block Storage Auto Scaling Objects
storage.storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
storage.storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Default: Source DB instance value
- Minimum value: 50
- Maximum value: 95
storage.storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Default: Source DB instance value
- Maximum value: 4096
storage.storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Default: Source DB instance value
- Minimum value: 10
- Maximum value: 1440
backup Body Object X Backup information objects
backup.backupPeriod Body Number X Backup retention period
- Default: Source DB instance value
- Minimum value: 0
- Maximum value: 730
backup.ftwrlWaitTimeout Body Number X Query latency (sec)
- Default: 1800
- Minimum value: 0
- Maximum value: 21600
backup.backupRetryCount Body Number X Number of backup retries
- Default: 0
- Minimum value: 0
- Maximum value: 10
backup.useBackupLock Body Boolean X Whether to use table lock
- Default: true
backup.backupSchedules Body Array X Scheduled auto backup list
backup.backupSchedules.backupWndBgnTime Body String X Backup started time
- Example: 00:00:00
backup.backupSchedules.backupWndDuration Body Enum X Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour

Request when restoring a point in time restoration using Timestamp (if restoreType is TIMESTAMP)

Name Type Format Required Description
restore.restoreYmdt Body DateTime O DB instance restore date (YYYY-MM-DDThh:mm:ss.SSSTZD)
Restoration is possible only before the most recent restorable time, which is queried through restoration information inquiry.
Example

{
    "dbInstanceName": "db-instance",
    "description": "description",
    "dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
    "dbPort": 10000,
    "dbUserName": "db-user",
    "dbPassword": "password",
    "parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
    "dbSecurityGroupIds": [
        "b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
    ],
    "userGroupIds": [],
    "network": {
        "subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "restore": {
        "restoreType": "TIMESTAMP",
        "restoreYmdt": "2023-07-10T15:44:44+09:00"
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "ONE_HOUR_AND_HALF"
            }
        ]
    }
}

Request for point-in-time restoration using binary logs (if restoreType is BINLOG)

Name Type Format Required Description
restore.backupId Body UUID O Identifier of the backup to use for restoration
restore.binLog Body Object O Binary log information object
restore.binLog.binLogFileName Body String O Binary log name to use for restoration
restore.binLog.binLogPosition Body Number O Binary log location to use for restoration
  • When restoring a point in time using the binary log, it is possible to restore the log recorded after that based on the binary log file and location of the base backup.
Example

{
    "dbInstanceName": "db-instance",
    "description": "description",
    "dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
    "dbPort": 10000,
    "dbUserName": "db-user",
    "dbPassword": "password",
    "parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
    "dbSecurityGroupIds": [
        "b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
    ],
    "userGroupIds": [],
    "network": {
        "subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "restore": {
        "restoreType": "BINLOG",
        "backupId":"3ae7914f-9b42-4729-b125-87417b72cf36",
        "binLogFileName": "mysql-bin.000001",
        "binLogPosition": 1234567
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "ONE_HOUR_AND_HALF"
            }
        ]
    }
}

Request when restoring from backup (if restoreType is BACKUP)

Name Type Format Required Description
restore.backupId Body UUID O (if restoreType is BACKUP) Identifier of the backup to use for restoration
Example

{
    "dbInstanceName": "db-instance",
    "description": "description",
    "dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
    "dbPort": 10000,
    "dbUserName": "db-user",
    "dbPassword": "password",
    "parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
    "dbSecurityGroupIds": [
        "b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
    ],
    "userGroupIds": [],
    "network": {
        "subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "restore": {
        "restoreType": "BACKUP",
        "backupId":"3ae7914f-9b42-4729-b125-87417b72cf36"
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "ONE_HOUR_AND_HALF"
            }
        ]
    }
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Restore from Object Storage

POST /v4.0/db-instances/restore-from-obs

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.RestoreFromObs Restore a DB instance from object storage

Request

Name Type Format Required Description
restore Body Object O Restoration information object
restore.tenantId Body String O Tenant ID of object storage where backups are stored
restore.username Body String O NHN Cloud account or IAM member ID
restore.password Body String O API password for object storage where backups are stored
restore.targetContainer Body String O Container for object storage where backups are stored
restore.objectPath Body String O Backup path stored in container
dbVersion Body Enum O DB engine type
dbInstanceName Body String O Master name to identify DB instances
dbInstanceCandidateName Body String O Candidate name to identify DB instances
description Body String X Additional information on DB instances
dbFlavorId Body UUID O Identifier of DB instance specifications
dbPort Body Number O DB port
- Minimum value: 3306
- Maximum value: 43306
parameterGroupId Body UUID O Parameter group identifier
dbSecurityGroupIds Body Array X DB security group identifiers
userGroupIds Body Array X User group identifiers
useHighAvailability Body Boolean X Whether to use high availability
- Default: false
pingInterval Body Number X Ping interval (sec) when using high availability
- Default: 3
- Minimum value: 1
- Maximum value: 600
useDefaultNotification Body Boolean X Whether to use default notification
- Default: false
useDeletionProtection Body Boolean X Whether to protect against deletion
Default: false
useSlowQueryAnalysis Body Boolean X Whether to analyze slow queries
- Default: true
network Body Object O Network information objects
network.subnetId Body UUID O Subnet identifier
network.usePublicAccess Body Boolean X External access is available or not
- Default: false
network.availabilityZone Body Enum O Availability zone where DB instance will be created
- Example: kr-pub-a
storage Body Object O Storage information objects
storage.storageType Body Enum O Block Storage Type
- Example: General SSD
storage.storageSize Body Number O Block Storage Size (GB)
- Minimum value: 20
- Maximum value: 2048
storage.storageAutoscale Body Object X Block Storage Auto Scaling Objects
storage.storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
storage.storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Minimum value: 50
- Maximum value: 95
storage.storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Maximum value: 4096
storage.storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Minimum value: 10
- Maximum value: 1440
backup Body Object O Backup information objects
backup.backupPeriod Body Number O Backup retention period
- Minimum value: 0
- Maximum value: 730
backup.ftwrlWaitTimeout Body Number X Query latency (sec)
- Default: 1800
- Minimum value: 0
- Maximum value: 21600
backup.backupRetryCount Body Number X Number of backup retries
- Default: 0
- Minimum value: 0
- Maximum value: 10
backup.useBackupLock Body Boolean X Whether to use table lock
- Default: true
backup.backupSchedules Body Array O Scheduled auto backup list
backup.backupSchedules.backupWndBgnTime Body String O Backup started time
- Example: 00:00:00
backup.backupSchedules.backupWndDuration Body Enum O Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour
Example

{
    "dbInstanceName": "db-instance",
    "description": "description",
    "dbFlavorId": "71f69bf9-3c01-4c1a-b135-bb75e93f6268",
    "dbPort": 10000,
    "dbVersion": "MARIADB_V10330",
    "dbUserName": "db-user",
    "dbPassword": "password",
    "parameterGroupId": "488bf4f5-d8f7-459b-ace6-529b606c8570",
    "dbSecurityGroupIds": [
        "b0483a3d-e8e2-46f6-9e84-d5e31b0d44f4"
    ],
    "userGroupIds": [],
    "network": {
        "subnetId": "3ae7914f-9b42-4729-b125-87417b72cf36",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "restore": {
        "tenantId":"tenant-id",
        "username":"username",
        "password":"password",
        "targetContainer":"targetContainer",
        "objectPath":"objectPath"
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "ONE_HOUR_AND_HALF"
            }
        ]
    }
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Change DB Instance Deletion Protection Settings

PUT /v4.0/db-instances/{dbInstanceId}/deletion-protection

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Modify Modify DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
useDeletionProtection Body Boolean O Whether to protect against deletion

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Modify High Availability

PUT /v4.0/db-instances/{dbInstanceId}/high-availability

Required permissions

Permission Name Description
RDSforMariaDB:HighAvailability.Modify Modify high availability

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
useHighAvailability Body Boolean O Whether to use high availability
pingInterval Body Number X Ping interval (sec) when using high availability
- Minimum value: 1
- Maximum value: 600
dbInstanceCandidateName Body String O Name to identify DB instances
- Required for using high availability

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Restart High Availability

POST /v4.0/db-instances/{dbInstanceId}/high-availability/resume

Required permissions

Permission Name Description
RDSforMariaDB:HighAvailability.Resume Restart high availability

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Pause High Availability

POST /v4.0/db-instances/{dbInstanceId}/high-availability/pause

Required permissions

Permission Name Description
RDSforMariaDB:HighAvailability.Pause Pause high availability

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Recover High Availability

POST /v4.0/db-instances/{dbInstanceId}/high-availability/repair

Required permissions

Permission Name Description
RDSforMariaDB:HighAvailability.Repair Recover high availability

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Separate High Availability

POST /v4.0/db-instances/{dbInstanceId}/high-availability/split

Required permissions

Permission Name Description
RDSforMariaDB:HighAvailability.Split Separate high availability

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

View Storage Information

GET /v4.0/db-instances/{dbInstanceId}/storage-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
storageType Body Enum Block Storage Type
storageSize Body Number Block Storage Size (GB)
storageStatus Body Enum Data Storage Current Status
- DETACHED: Detached
- ATTACHED: Attached
- DELETED: Deleted
storageAutoscale Body Object Block Storage Auto Scaling Objects
storageAutoscale.useStorageAutoscale Body Boolean Whether to enable storage auto scaling
storageAutoscale.threshold Body Number Auto scale out conditions (%)
storageAutoscale.maxStorageSize Body Number Auto scaling maximum size (GB)
storageAutoscale.cooldownTime Body Number Auto scaling cooldown time (minutes)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "storageType": "General SSD",
    "storageSize": 20,
    "storageStatus": "ATTACHED",
    "storageAutoscale": {
         "useStorageAutoscale": true,
         "threshold": 80,
         "maxStorageSize": 100,
         "cooldownTime": 10
    }
}


Modify Storage Information

PUT /v4.0/db-instances/{dbInstanceId}/storage-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Modify Modify DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
storageSize Body Number O Block Storage Size (GB)
- Minimum value: Current value
- Maximum value: 2048
useOnlineFailover Body Boolean X Whether to restart using failover
Available only for DB instance using high availability
- Default: false
storageAutoscale Body Object X Block Storage Auto Scaling Objects
storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Minimum value: 50
- Maximum value: 95
storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Maximum value: 4096
storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Minimum value: 10
- Maximum value: 1440

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

View Backup Information

GET /v4.0/db-instances/{dbInstanceId}/backup-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
backupPeriod Body Number Backup retention period
ftwrlWaitTimeout Body Number Query latency (sec)
backupRetryCount Body Number Number of backup retries
replicationRegion Body Enum Backup replication region
useBackupLock Body Boolean Whether to use table lock
backupSchedules Body Array Scheduled auto backup list
backupSchedules.backupWndBgnTime Body String Backup started time
backupSchedules.backupWndDuration Body Enum Backup duration
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "backupPeriod": 1,
    "ftwrlWaitTimeout": 1800,
    "backupRetryCount": 0,
    "replicationRegion": null,
    "useBackupLock": false,
    "backupSchedules": [
        {
            "backupWndBgnTime": "00:00:00",
            "backupWndDuration": "ONE_HOUR_AND_HALF"
        }
    ]
}


Modify Backup Information

PUT /v4.0/db-instances/{dbInstanceId}/backup-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Modify Modify DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
backupPeriod Body Number X Backup retention period
- Minimum value: 0
- Maximum value: 730
ftwrlWaitTimeout Body Number X Query latency (sec)
- Minimum value: 0
- Maximum value: 21600
backupRetryCount Body Number X Number of backup retries
- Minimum value: 0
- Maximum value: 10
useBackupLock Body Boolean X Whether to use table lock
backupSchedules Body Array X Scheduled auto backup list
backupSchedules.backupWndBgnTime Body String O Backup started time
- Example: 00:00:00
backupSchedules.backupWndDuration Body Enum O Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour
Example

{
    "backupPeriod": 5,
    "useBackupLock": true,
    "backupSchedules": [
        {
            "backupWndBgnTime": "01:00:00",
            "backupWndDuration": "TWO_HOURS"
        }
    ]
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

List Network Information

GET /v4.0/db-instances/{dbInstanceId}/network-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Get List DB Instance Details

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
availabilityZone Body Enum Availability zone where DB instance will be created
subnet Body Object Subnet object
subnet.subnetId Body UUID Subnet identifier
subnet.subnetName Body UUID Name to identify subnets
subnet.subnetCidr Body UUID CIDR of subnet
endPoints Body Array List of access information
endPoints.domain Body String Domain
endPoints.ipAddress Body String IP address
endPoints.endPointType Body Enum Access information type
-EXTERNAL: External access domain
-INTERNAL: Internal access domain
-PUBLIC: (Deprecated) External access domain
-PRIVATE: (Deprecated) Internal access domain
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "availabilityZone": "kr-pub-a",
    "subnet": {
        "subnetId": "bd453789-34ae-416c-9f78-05b9e43a46be",
        "subnetName": "Default Network",
        "subnetCidr": "192.168.0.0/16"
    },
    "endPoints": [
        {
            "domain": "ea548a78-d85f-43b4-8ddf-c88d999b9905.internal.kr1.mariadb.rds.nhncloudservice.com",
            "ipAddress": "192.168.0.2",
            "endPointType": "INTERNAL"
        }
    ]
}


Modify Network Information

PUT /v4.0/db-instances/{dbInstanceId}/network-info

Required permissions

Permission Name Description
RDSforMariaDB:DbInstance.Modify Modify DB Instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
usePublicAccess Body Boolean O External access is available or not

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

List DB Users

GET /v4.0/db-instances/{dbInstanceId}/db-users

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceUser.List List of users in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
dbUsers Body Array DB users
dbUsers.dbUserId Body UUID DB user identifier
dbUsers.dbUserName Body String DB user account name
dbUsers.host Body String DB user account host name
dbUsers.authorityType Body Enum DB user permission type
- READ: Permission to execute SELECT query
- CRUD: Permission to execute DML query
- DDL: Permission to execute DDL query
dbUsers.dbUserStatus Body Enum DB user current status
- STABLE: Created
- CREATING: Creating
- UPDATING: Modifying
- DELETING: Deleting
- DELETED: Deleted
dbUsers.authenticationPlugin Body Enum Authentication Plugin
- NATIVE: mysql_native_password
- ED25519: auth_ed25519
dbUsers.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
dbUsers.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbUsers": [
        {
            "dbUserId": "4b3d530b-fd02-4d59-a620-83d019a67bbb",
            "dbUserName": "db-user",
            "host": "%",
            "authorityType": "DDL",
            "dbUserStatus": "STABLE",
            "createdYmdt": "2023-03-17T14:02:29+09:00",
            "updatedYmdt": "2023-03-17T14:02:31+09:00"
        }
    ]
}


Create DB User

POST /v4.0/db-instances/{dbInstanceId}/db-users

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceUser.Create Create users in DB instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbUserName Body String O DB user account name
- Minimum length: 1
- Maximum length: 32
dbPassword Body String O DB user account password
- Minimum length: 4
- Maximum length: 256
host Body String O DB user account host name
- Example: 1.1.1.%
authorityType Body Enum O DB user permission type
- READ: Permission to execute SELECT query
- CRUD: Permission to execute DML query
- DDL: Permission to execute DDL query
authenticationPlugin Body Enum X Authentication Plugin
- Default: NATIVE(ED25519 if not supported)
- NATIVE: mysql_native_password
- ED25519: auth_ed25519
Example

{
    "dbUserName": "db-user",
    "dbPassword": "password",
    "host": "1.1.1.%",
    "authorityType": "CRUD"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Modify DB User

PUT /v4.0/db-instances/{dbInstanceId}/db-users/{dbUserId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceUser.Modify Modify users in DB instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbUserId URL UUID O DB user identifier
dbPassword Body String X DB user account password
- Minimum length: 4
- Maximum length: 256
authorityType Body Enum X DB user permission type
- READ: Permission to execute SELECT query
- CRUD: Permission to execute DML query
- DDL: Permission to execute DDL query
authenticationPlugin Body Enum X Authentication Plugin
- NATIVE: mysql_native_password
- ED25519: auth_ed25519
Example

{
    "authorityType": "DDL"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Delete DB User

DELETE /v4.0/db-instances/{dbInstanceId}/db-users/{dbUserId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceUser.Delete Delete users in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbUserId URL UUID O DB user identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

List DB Schema

GET /v4.0/db-instances/{dbInstanceId}/db-schemas

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceSchema.List List of schemas in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
dbSchemas Body Array DB schema list
dbSchemas.dbSchemaId Body UUID DB schema identifier
dbSchemas.dbSchemaName Body String DB schema name
dbSchemas.dbSchemaStatus Body Enum DB schema current status
- STABLE: Created
- CREATING: Creating
- DELETING: Deleting
- DELETED: Deleted
dbSchemas.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbSchemas": [
        {
            "dbSchemaId": "7c9a94b8-86c1-435d-8af2-82a5e9d53fd4",
            "dbSchemaName": "schema",
            "dbSchemaStatus": "STABLE",
            "createdYmdt": "2023-03-20T13:37:45+09:00"
        }
    ]
}


Create DB Schema

POST /v4.0/db-instances/{dbInstanceId}/db-schemas

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceSchema.Create Create schemas in DB instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbSchemaName Body String O DB schema name

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Delete DB Schema

DELETE /v4.0/db-instances/{dbInstanceId}/db-schemas/{dbSchemaId}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceSchema.Delete Delete schemas in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
dbSchemaId URL UUID O DB schema identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

List Log Files

GET /v4.0/db-instances/{dbInstanceId}/log-files

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceLog.List List of log files in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
logFileTypes Query Array X Log File type list
- ERROR: error.log
- BINLOG: mysql-bin
- GENERAL: general.log
- SLOW_QUERY: slow_query.log
- AUDIT: server_audit.log
- BACKUP: xtra_full.log

Response

Name Type Format Description
logFiles Body Array Log File list
logFiles.logFileName Body String Log File name
logFiles.logFileType Body Enum Log File type
- ERROR: error.log
- BINLOG: mysql-bin
- GENERAL: general.log
- SLOW_QUERY: slow_query.log
- AUDIT: server_audit.log
- BACKUP: xtra_full.log
logFiles.logFileSize Body Number Log File size(Byte)
logFiles.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "logFiles": [
        {
            "logFileName": "xtra_full.log-20230317",
            "logFileType": "BACKUP",
            "logFileSize": 4096,
            "createdYmdt": "2023-03-17T14:02:29+09:00"
        }
    ]
}


View Log File contents

GET /v4.0/db-instances/{dbInstanceId}/log-files/{logFileName}

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceLog.Get View log file contents in DB instance

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
logFileName URL String O Log File name
logFileType Query Enum O Log File type
- ERROR: error.log
- BINLOG: mysql-bin
- GENERAL: general.log
- SLOW_QUERY: slow_query.log
- AUDIT: server_audit.log
- BACKUP: xtra_full.log

Response

Name Type Format Description
content Body String Log File contents(maximum 65533 Bytes)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "content": "..."
}


Export Log File

POST /v4.0/db-instances/{dbInstanceId}/log-files/export

Required permissions

Permission Name Description
RDSforMariaDB:DbInstanceLog.Export Export log files in DB instance

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
logFileNames Body Array O Log File name list
- Minimum size: 1
tenantId Body String O Tenant ID of object storage to store log file
username Body String O NHN Cloud account or IAM member ID
password Body String O API password for object storage where log file is stored
targetContainer Body String O Object storage container where log file is stored
objectPath Body String O Log file path to be stored in container
Example

{
    "logFileNames": ["xtra_full.log-20230317"],
    "tenantId": "399631c404744dbbb18ce4fa2dc71a5a",
    "username": "gildong.hong@nhn.com",
    "password": "password",
    "targetContainer": "container",
    "objectPath": "logs/backup"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

View BinLog Lists

GET /v4.0/db-instances/{dbInstanceId}/binlogs

Required Permission

Permission Description
RDSforMariaDB:DbInstanceBinLog.List View BinLog lists

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
deletable Query Boolean X Show only deletable BinLogs
- true: Exclude latest BinLog
- false: All
- Default: false

Response

Name Type Format Description
binLogs Body Array BinLog file list
binLogs.binLogFileName Body String BinLog file name
binLogs.binLogFileSize Body Number BinLog file size (Byte)
binLogs.createdYmdt Body DateTime Created at(YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "binLogs": [
        {
            "binLogFileName": "mysql-bin.000001",
            "binLogFileSize": 1073741824,
            "createdYmdt": "2023-03-17T14:02:29+09:00"
        }
    ]
}


Delete BinLog

POST /v4.0/db-instances/{dbInstanceId}/binlogs/purge

Required Permission

Permission Description
RDSforMariaDB:DbInstanceBinLog.Purge Delete BinLog

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
lastBinLogFileName Body String O Last BinLog file name to delete (delete all files prior to this file)
Example

{
    "lastBinLogFileName": "mysql-bin.000010"
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


View Certificate File Lists

GET /v4.0/db-instances/{dbInstanceId}/certificates

Required Permission

Permission Description
RDSforMariaDB:DbInstanceCertificate.List View certificate file lists

Request

This API does not require a request body.

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier

Response

Name Type Format Description
certificates Body Array Certificate file list
certificates.fileName Body String Certificate file name
certificates.certificateType Body Enum Certificate type
- CA_FILE: CA certificate
- CERT_FILE: certificate
- KEY_FILE: Secret key
certificates.fileSize Body Number Certificate file size (Byte)
certificates.createdYmdt Body DateTime Created at(YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "certificates": [
        {
            "fileName": "ca.pem",
            "certificateType": "CA_FILE",
            "fileSize": 2048,
            "createdYmdt": "2023-03-17T14:02:29+09:00"
        }
    ]
}


Export a Certificate File

POST /v4.0/db-instances/{dbInstanceId}/certificates/upload

Required Permission

Permission Description
RDSforMariaDB:DbInstanceCertificate.Export Export a certificate file

Request

Name Type Format Required Description
dbInstanceId URL UUID O DB instance identifier
certificateTypes Body Array O Certificate type to upload
- CA_FILE: CA certificate
- CERT_FILE: Certificate
- KEY_FILE: Secret key
tenantId Body String O Tenant ID of object storage to store certificate file
username Body String O NHN Cloud member or IAM member ID
password Body String O API password for object storage where certificate file is stored
targetContainer Body String O Object storage container where certificate file is stored
objectPath Body String O
Certificate file path to be stored in container
Example

{
    "certificateTypes": ["CA_FILE", "CERT_FILE", "KEY_FILE"],
    "tenantId": "399631c404744dbbb18ce4fa2dc71a5a",
    "username": "gildong.hong@nhn.com",
    "password": "password",
    "targetContainer": "container",
    "objectPath": "certificates/"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Backups

Backup Status

Status Description
BACKING_UP Backup in progress
COMPLETED Backup is completed
DELETING Backup is being deleted
DELETED Backup is deleted
ERROR Error occurred

View Backup Details

GET /v4.0/backups/{backupId}

Required Permission

Permission Description
RDSforMariaDB:Backup.Get View backup details

Request

This API does not require a request body.

Name Type Format Required Description
backupId URL UUID O Backup identifier

Response

Name Type Format Description
backup Body Object Back details
backup.backupId Body UUID Backup identifier
backup.regionCode Body Enum Region code
backup.backupName Body String Name to identify backups
backup.backupStatus Body Enum Backup current status
backup.dbInstanceId Body UUID Source DB instance identifier
backup.dbInstanceName Body String Source DB instance name
backup.dbVersion Body Enum DB engine version
backup.backupType Body Enum Backup type
backup.backupMethodType Body Enum Backup method
backup.backupFileType Body Enum Backup file type
backup.backupSize Body Number Backup size (Byte)
backup.isReplicable Body Boolean Replicable
backup.binLogFileName Body String Binary log file name
backup.binLogPosition Body Number Binary log location
backup.createdYmdt Body DateTime Created at (YYYY-MM-DDThh:mm:ss.SSSTZD)
backup.updatedYmdt Body DateTime Updated at (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "backup": {
        "backupId": "0017f136-3e01-4530-94aa-20661afe6632",
        "regionCode": "KR1",
        "backupName": "backup",
        "backupStatus": "COMPLETED",
        "dbInstanceId": "142e6ccc-3bfb-4e1e-84f7-38861284fafd",
        "dbInstanceName": "db-instance",
        "dbVersion": "MARIADB_V10330",
        "backupType": "AUTO",
        "backupMethodType": "FULL",
        "backupFileType": "XTRA_BACKUP",
        "backupSize": 4996786,
        "isReplicable": true,
        "binLogFileName": "mysql-bin.000001",
        "binLogPosition": 154,
        "createdYmdt": "2023-02-21T00:35:00+09:00",
        "updatedYmdt": "2023-02-22T00:35:32+09:00"
    }
}


Retrieve Backup List

GET /v4.0/backups

Required permissions

Permission Name Description
RDSforMariaDB:Backup.List Retrieve Backup List

Request

This API does not require a request body.

Name Type Format Required Description
page Query Number X Page to retrieve
- Default: 1
- Minimum value: 1
size Query Number X Page size to retrieve
- Default: 20
backupType Query Enum X Backup type
- AUTO: Automatic
- MANUAL: Manual
- Default value: All
dbInstanceId Query UUID X Original DB instance identifier
dbVersion Query Enum X DB engine type

Response

Name Type Format Description
totalCounts Body Number Number of all backup lists
backups Body Array Backup list
backups.backupId Body UUID Backup identifier
backups.backupName Body String Name to identify backups
backups.backupStatus Body Enum Backup current status
backups.dbInstanceId Body UUID Original DB instance identifier
backups.dbVersion Body Enum DB engine type
backups.backupType Body Enum Backup type
backups.backupSize Body Number Backup size (Byte)
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "totalCounts": 1,
    "backups": [
        {
            "backupId": "0017f136-3e01-4530-94aa-20661afe6632",
            "backupName": "backup",
            "backupStatus": "COMPLETED",
            "dbInstanceId": "142e6ccc-3bfb-4e1e-84f7-38861284fafd",
            "dbVersion": "MARIADB_V10330",
            "backupType": "AUTO",
            "backupSize": 4996786,
            "createdYmdt": "2023-02-21T00:35:00+09:00",
            "updatedYmdt": "2023-02-22T00:35:32+09:00"
        }
    ]
}


Create Backup

POST /v4.0/backups

Required permissions

Permission Name Description
RDSforMariaDB:Backup.Create Create backup

Common Request

Name Type Format Required Description
backupName Body String O Backup name
backupMethodType Body Enum O Backup method type
- FULL: Full backup
- INCREMENTAL: Incremental backup
- SNAPSHOT: Snapshot backup

If backupMethodType is FULL

Name Type Format Required Description
dbInstanceId Body UUID O DB instance identifier
Example

{
    "backupName": "example-backup-name",
    "backupMethodType": "FULL",
    "dbInstanceId": "142e6ccc-3bfb-4e1e-84f7-38861284fafd"
}

If backupMethodType is INCREMENTAL

Name Type Format Required Description
baseBackupId Body UUID O Baseline backup identifier
Example

{
    "backupName": "example-backup-name",
    "backupMethodType": "INCREMENTAL",
    "baseBackupId": "3ae7914f-9b42-4729-b125-87417b72cf36"
}

Snapshot Backup (if backupMethodType is SNAPSHOT)

Name Type Format Required Description
dbInstanceId Body UUID O DB instance identifier
Example

{
    "backupName": "example-backup-name",
    "backupMethodType": "SNAPSHOT",
    "dbInstanceId": "142e6ccc-3bfb-4e1e-84f7-38861284fafd"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Export Backup

POST /v4.0/backups/{backupId}/export

Required permissions

Permission Name Description
RDSforMariaDB:Backup.Export Export backup

Request

Name Type Format Required Description
backupId URL UUID O Backup identifier
tenantId Body String O Tenant ID of object storage to store backup
username Body String O NHN Cloud account or IAM member ID
password Body String O API password for object storage where backup is stored
targetContainer Body String O Object storage container where backup is stored
objectPath Body String O Backup path to be stored in container
Example

{
    "tenantId": "399631c404744dbbb18ce4fa2dc71a5a",
    "username": "gildong.hong@nhn.com",
    "password": "password",
    "targetContainer": "container",
    "objectPath": "backups/backup_file"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Restore Backup

POST /v4.0/backups/{backupId}/restore

Required permissions

Permission Name Description
RDSforMariaDB:Backup.Restore Restore backup

Request

Name Type Format Required Description
backupId URL UUID O Backup identifier
dbInstanceName Body String O Master name to identify DB instances
dbInstanceCandidateName Body String X Candidate name to identify DB instances
description Body String X Additional information on DB instances
dbFlavorId Body UUID X Identifier of DB instance specifications
- Default: Original DB instance value
dbPort Body Integer X DB port
- Default: Source DB instance value
- Minimum value: 3306
- Maximum value: 43306
parameterGroupId Body UUID X Parameter group identifier
- Default: Original DB instance value
dbSecurityGroupIds Body Array X DB security group identifiers
userGroupIds Body Array X User group identifiers
useHighAvailability Body Boolean X Whether to use high availability
- Default: false
pingInterval Body Number X Ping interval (sec) when using high availability
- Default: 3
- Minimum value: 1
- Maximum value: 600
useDefaultNotification Body Boolean X Whether to use default notification
- Default: false
useDeletionProtection Body Boolean X Whether to protect against deletion
- Default: false
useSlowQueryAnalysis Body Boolean X Whether to analyze slow queries
- Default: true
network Body Object X Network information objects
network.subnetId Body UUID X Subnet identifier
- Default: Original DB instance value
network.usePublicAccess Body Boolean X External access is available or not
- Default: false
network.availabilityZone Body Enum X Availability zone where DB instance will be created
- Example: kr-pub-a
- Default: Random selection
storage Body Object X Storage information objects
storage.storageType Body Enum X Block Storage Type
- Default: Source DB instance value
- Example: General SSD
storage.storageSize Body Number X Block Storage Size (GB)
- Default: Source DB instance value
- Minimum value: 20
- Maximum value: 2048
storage.storageAutoscale Body Object X Block Storage Auto Scaling Objects
storage.storageAutoscale.useStorageAutoscale Body Boolean X Whether to enable storage auto scaling
- Default: Source DB instance value
storage.storageAutoscale.threshold Body Number X Auto scale out conditions (%)
- Default: Source DB instance value
- Minimum value: 50
- Maximum value: 95
storage.storageAutoscale.maxStorageSize Body Number X Auto scaling maximum size (GB)
- Default: Source DB instance value
- Maximum value: 4096
storage.storageAutoscale.cooldownTime Body Number X Auto scaling cooldown time (minutes)
- Default: Source DB instance value
- Minimum value: 10
- Maximum value: 1440
backup Body Object X Backup information objects
backup.backupPeriod Body Number X Backup retention period
- Default: Source DB instance value
- Minimum value: 0
- Maximum value: 730
backup.ftwrlWaitTimeout Body Number X Query latency (sec)
- Default: 1800
- Minimum value: 0
- Maximum value: 21600
backup.backupRetryCount Body Number X Number of backup retries
- Default: 0
- Minimum value: 0
- Maximum value: 10
backup.useBackupLock Body Boolean X Whether to use table lock
- Default: true
backup.backupSchedules Body Array X Scheduled auto backup list
- Default: Original DB instance value
backup.backupSchedules.backupWndBgnTime Body String O Backup started time
- Example: 00:00:00
backup.backupSchedules.backupWndDuration Body Enum O Backup duration
Auto backup proceeds within duration from backup start time.
- HALF_AN_HOUR: 30 minutes
- ONE_HOUR: 1 hour
- ONE_HOUR_AND_HALF: 1.5 hour
- TWO_HOURS: 2 hour
- TWO_HOURS_AND_HALF: 2.5 hour
- THREE_HOURS: 3 hour
Example


{
    "dbInstanceName": "db-instance-restore",
    "dbFlavorId": "50be6d9c-02d6-4594-a2d4-12010eb65ec0",
    "dbPort": 10000,
    "parameterGroupId": "132d383c-38e3-468a-a826-5e9a8fff15d0",
    "network": {
        "subnetId": "e721a9dd-dad0-4cf0-a53b-dd654ebfc683",
        "availabilityZone": "kr-pub-a"
    },
    "storage": {
        "storageType": "General SSD",
        "storageSize": 20
    },
    "backup": {
        "backupPeriod": 1,
        "backupSchedules": [
            {
                "backupWndBgnTime": "00:00:00",
                "backupWndDuration": "HALF_AN_HOUR"
            }
        ]
    }
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Delete Backup

DELETE /v4.0/backups/{backupId}

Required permissions

Permission Name Description
RDSforMariaDB:Backup.Delete Delete backup

Request

This API does not require a request body.

Name Type Format Required Description
backupId URL UUID O Backup identifier

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

DB Security Group

DB Security Group Progress

Status Description
NONE No task in progress
CREATING_RULE Creating rules
UPDATING_RULE Modifying rules
DELETING_RULE Deleting rules

List DB Security Groups

GET /v4.0/db-security-groups

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroup.List List DB security groups

Request

This API does not require a request body.

Name Type Format Required Description
page Query Number X Page to retrieve
- Default: 1
- Minimum value: 1
size Query Number X Page size to retrieve
- Default: 20
#### Response
Name Type Format Description
dbSecurityGroups Body Array DB security groups
dbSecurityGroups.dbSecurityGroupId Body UUID DB security group identifier
dbSecurityGroups.dbSecurityGroupName Body String Name to identify DB instances
dbSecurityGroups.description Body String Additional information on DB security group
dbSecurityGroups.progressStatus Body Enum Current status of DB security group
dbSecurityGroups.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
dbSecurityGroups.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbSecurityGroups": [
        {
            "dbSecurityGroupId": "fe4f2aee-afbb-4c19-a5e9-eb2eab394708",
            "dbSecurityGroupName": "dbSecurityGroup",
            "description": "description",
            "progressStatus": "NONE",
            "createdYmdt": "2023-02-19T19:18:13+09:00",
            "updatedYmdt": "2022-02-19T19:18:13+09:00"
        }
    ]
}


List DB Security Group Details

GET /v4.0/db-security-groups/{dbSecurityGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroup.Get List DB security group details

Request

This API does not require a request body.

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier

Response

Name Type Format Description
dbSecurityGroupId Body UUID DB security group identifier
dbSecurityGroupName Body String Name to identify DB instances
description Body String Additional information on DB security group
progressStatus Body Enum Current status of DB security group
rules Body Array DB security group rules
rules.ruleId Body UUID DB security group rule identifier
rules.description Body String Additional information on DB security group rule
rules.direction Body Enum Communication direction
- INGRESS: Inbound
- EGRESS: Outbound
rules.etherType Body Enum Ether type
- IPV4: IPv4
- IPV6: IPv6
rules.port Body Object Port object
rules.port.portType Body Enum Port type
- DB_PORT: Sets to DB instance port value.
- PORT: Sets to specified port value.
- PORT_RANGE: Sets to specified port range.
rules.port.minPort Body Number Minimum port range
rules.port.maxPort Body Number Maximum port range
rules.cidr Body String Remote source for traffic to allow
rules.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
rules.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "dbSecurityGroup": {
        "dbSecurityGroupId": "fe4f2aee-afbb-4c19-a5e9-eb2eab394708",
        "dbSecurityGroupName": "dbSecurityGroup",
        "description": "description",
        "progressStatus": "NONE",
        "rules": [
            {
                "ruleId": "17c88ef6-95f1-4678-84f9-fee1b22e250d",
                "description": "description",
                "direction": "INGRESS",
                "etherType": "IPV4",
                "port": {
                    "portType": "PORT_RANGE",
                    "minPort": 10000,
                    "maxPort": 10005
                },
                "cidr": "0.0.0.0/0",
                "createdYmdt": "2023-02-19T19:18:13+09:00",
                "updatedYmdt": "2023-02-19T19:18:13+09:00"
            }
        ],
        "createdYmdt": "2023-02-19T19:18:13+09:00",
        "updatedYmdt": "2023-02-19T19:18:13+09:00"
    }
}


Create DB Security Group

POST /v4.0/db-security-groups

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroup.Create Create DB security group

Request

Name Type Format Required Description
dbSecurityGroupName Body String O Name to identify DB instances
description Body String X Additional information on DB security group
rules Body Array O DB security group rules
rules.description Body String X Additional information on DB security group rule
rules.direction Body Enum O Communication direction
- INGRESS: Inbound
- EGRESS: Outbound
rules.etherType Body Enum O Ether type
- IPV4: IPv4
- IPV6: IPv6
rules.cidr Body String O Remote source for traffic to allow
- Example: 1.1.1.1/32
rules.port Body Object O Port object
rules.port.portType Body Enum O Port type
- DB_PORT: Sets to DB instance port value. Values for minPort and maxPort are not required.
- PORT: Sets to the specified port value. minPort and maxPort must be the same.
- PORT_RANGE: Sets to specified port range.
rules.port.minPort Body Number X Minimum port range
- Minimum value: 1
rules.port.maxPort Body Number X Maximum port range
- Maximum value: 65535

[Caution] DB port cannot be set to transmit direction.

Example

{
    "dbSecurityGroupName": "dbSecurityGroup",
    "description": "description",
    "rules": [
        {
            "direction": "INGRESS",
            "etherType": "IPV4",
            "port": {
                "portType": "PORT_RANGE",
                "minPort": 10000,
                "maxPort": 10005
            },
            "cidr": "0.0.0.0/0"
        }
    ]
}

Response

Name Type Format Description
dbSecurityGroupId Body UUID DB security group identifier

Modify DB Security Group

PUT /v4.0/db-security-groups/{dbSecurityGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroup.Modify Modify DB security group

Request

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier
dbSecurityGroupName Body String X Name to identify DB instances
description Body String X Additional information on DB security group
Example

{
    "dbSecurityGroupName": "dbSecurityGroup",
    "description": "description"
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Delete DB Security Group

DELETE /v4.0/db-security-groups/{dbSecurityGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroup.Delete Delete DB security group

Request

This API does not require a request body.

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Create DB Security Group Rule

POST /v4.0/db-security-groups/{dbSecurityGroupId}/rules

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroupRule.Create Create DB security group rule

Request

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier
description Body String X Additional information on DB security group rule
direction Body Enum O Communication direction
- INGRESS: Inbound
- EGRESS: Outbound
etherType Body Enum O Ether type
- IPV4: IPv4
- IPV6: IPv6
port Body Object O Port object
port.portType Body Enum O Port type
- DB_PORT: Sets to DB instance port value. Values for minPort and maxPort are not required.
- PORT: Sets to specified port value. The minPort and maxPort values must be the same.
- PORT_RANGE: Sets to specified port range.
port.minPort Body Number X Minimum port range
- Minimum value: 1
port.maxPort Body Number X Maximum port range
- Maximum value: 65535
cidr Body String O Remote source for traffic to allow
- Example: 1.1.1.1/32

[Caution] DB port cannot be set to transmit direction.

Example

{
    "direction": "INGRESS",
    "etherType": "IPV4",
    "port": {
        "portType": "PORT",
        "minPort": 10000,
        "maxPort": 10000
    },
    "cidr": "0.0.0.0/0"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Modify DB Security Group Rule

PUT /v4.0/db-security-groups/{dbSecurityGroupId}/rules/{ruleId}

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroupRule.Modify Modify DB security group rule

Request

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier
ruleId URL UUID O DB security group rule identifier
description Body String X Additional information on DB security group rule
direction Body Enum O Communication direction
- INGRESS: Inbound
- EGRESS: Outbound
etherType Body Enum O Ether type
- IPV4: IPv4
- IPV6: IPv6
port Body Object O Port object
port.portType Body Enum O Port type
- DB_PORT: Sets to DB instance port value. Values for minPort and maxPort are not required.
- PORT: Sets to specified port value. The minPort and maxPort values must be the same.
- PORT_RANGE: Sets to specified port range.
port.minPort Body Number X Minimum port range
- Minimum value: 1
port.maxPort Body Number X Maximum port range
- Maximum value: 65535
cidr Body String O Remote source for traffic to allow
- Example: 1.1.1.1/32

[Caution] DB port cannot be set to transmit direction.

Example

{
    "direction": "INGRESS",
    "etherType": "IPV4",
    "port": {
        "portType": "DB_PORT"
    },
    "cidr": "0.0.0.0/0"
}

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Delete DB Security Group Rule

DELETE /v4.0/db-security-groups/{dbSecurityGroupId}/rules

Required permissions

Permission Name Description
RDSforMariaDB:DbSecurityGroupRule.Create Delete DB security group rule

Request

This API does not require a request body.

Name Type Format Required Description
dbSecurityGroupId URL UUID O DB security group identifier
ruleIds Query Array O DB security group rule identifiers

Response

Name Type Format Description
jobId Body UUID Identifier of requested task

Parameter group

List Parameter Groups

GET /v4.0/parameter-groups

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.List List parameter groups

Request

This API does not require a request body.

Name Type Format Required Description
dbVersion Query Enum X DB engine type

Response

Name Type Format Description
parameterGroups Body Array Parameter groups
parameterGroups.parameterGroupId Body UUID Parameter group identifier
parameterGroups.parameterGroupName Body String Name to identify parameter groups
parameterGroups.description Body String Additional information on parameter group
parameterGroups.dbVersion Body Enum DB engine type
parameterGroups.parameterGroupStatus Body Enum Parameter group current status
- STABLE: Applied
- NEED_TO_APPLY: Need to apply
parameterGroups.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
parameterGroups.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "parameterGroups": [
        {
            "parameterGroupId": "404e8a89-ca4d-4fca-96c2-1518754d50b7",
            "parameterGroupName": "parameter-group",
            "description": null,
            "dbVersion": "MARIADB_V10330",
            "parameterGroupStatus": "STABLE",
            "createdYmdt": "2023-02-31T15:28:17+09:00",
            "updatedYmdt": "2023-02-31T15:28:17+09:00"
        }
    ]
}


List Parameter Group Details

GET /v4.0/parameter-groups/{parameterGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Get List parameter group details

Request

This API does not require a request body.

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier

Response

Name Type Format Description
parameterGroupId Body UUID Parameter group identifier
parameterGroupName Body String Name to identify parameter groups
description Body String Additional information on parameter group
dbVersion Body Enum DB engine type
parameterGroupStatus Body Enum Parameter group current status
- STABLE: Applied
- NEED_TO_APPLY: Need to apply
parameters Body Array Parameter list
parameters.parameterId Body UUID Parameter identifier
parameters.parameterFileGroup Body Enum Parameter file group type
- CLIENT: client
- MYSQL: mysql
- MYSQLD: mysqld
parameters.parameterName Body String Parameter name
parameters.fileParameterName Body String Parameter file name
parameters.value Body String Current value
parameters.defaultValue Body String Default value
parameters.allowedValue Body String Permitted values
parameters.updateType Body Enum Modify type
- VARIABLE: Modifiable any time
- CONSTANT: Not modifiable
- INIT_VARIABLE: Only modifiable when DB instance is created
parameters.applyType Body Enum Apply type
- SESSION: Apply session
- FILE: Apply setting file (restart required)
- BOTH: All (restart required)
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "parameterGroupId": "404e8a89-ca4d-4fca-96c2-1518754d50b7",
    "parameterGroupName": "parameter-group",
    "description": null,
    "dbVersion": "MARIADB_V10330",
    "parameterGroupStatus": "STABLE",
    "parameters": [
        {
            "parameterId": "fa040b5e-f29f-46de-8f0d-bba4cb82887a",
            "parameterFileGroup": "client",
            "parameterName": "socket",
            "fileParameterName": "socket",
            "value": "/home/tcrds/db/mysql/tmp/mysql.sock",
            "defaultValue": "/home/tcrds/db/mysql/tmp/mysql.sock",
            "allowedValue": "",
            "updateType": "CONSTANT",
            "applyType": "BOTH"
        }
    ],
    "createdYmdt": "2023-03-13T11:02:28+09:00",
    "updatedYmdt": "2023-03-13T11:02:28+09:00"
}


Create Parameter Group

POST /v4.0/parameter-groups

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Create Create parameter group

Request

Name Type Format Required Description
parameterGroupName Body String O Name to identify parameter groups
description Body String X Additional information on parameter group
dbVersion Body Enum O DB engine type
Example

{
    "parameterGroupName": "parameter-group",
    "dbVersion": "MARIADB_V10330"
}

Response

Name Type Format Description
parameterGroupId Body UUID Parameter group identifier

Copy Parameter Group

POST /v4.0/parameter-groups/{parameterGroupId}/copy

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Copy Copy parameter group

Request

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier
parameterGroupName Body String O Name to identify parameter groups
description Body String X Additional information on parameter group
Example

{
    "parameterGroupName": "parameter-group-copy",
    "description": "copy"
}

Response

Name Type Format Description
parameterGroupId Body UUID Parameter group identifier

Modify Parameter Group

PUT /v4.0/parameter-groups/{parameterGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Modify Modify parameter group

Request

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier
parameterGroupName Body String X Name to identify parameter groups
description Body String X Additional information on parameter group
Example

{
    "parameterGroupName": "parameter-group"
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Modify Parameter

PUT /v4.0/parameter-groups/{parameterGroupId}/parameters

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Modify Modify parameter group

Request

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier
modifiedParameters Body Array O Parameters to change
modifiedParameters.parameterId Body UUID O Parameter identifier
modifiedParameters.value Body String O Parameter value to change
Example

{
    "modifiedParameters": [
        {
            "parameterId": "3abac558-7274-44e1-9f4a-f100f53f67ba",
            "value": "0"
        }
    ]
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Reset Parameter Group

PUT /v4.0/parameter-groups/{parameterGroupId}/reset

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Reset Reset parameter group

Request

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Delete Parameter Group

DELETE /v4.0/parameter-groups/{parameterGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:ParameterGroup.Delete Delete parameter group

Request

This API does not require a request body.

Name Type Format Required Description
parameterGroupId URL UUID O Parameter group identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


User Group

List User Groups

GET /v4.0/user-groups

Required permissions

Permission Name Description
RDSforMariaDB:UserGroup.List List user groups

Request

This API does not require a request body.

Response

Name Type Format Description
userGroups Body Array User Groups
userGroups.userGroupId Body UUID User group identifier
userGroups.userGroupName Body String Name to identify user groups
userGroups.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
userGroups.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "userGroups": [
        {
            "userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
            "userGroupName": "dev-team",
            "createdYmdt": "2023-02-23T10:07:54+09:00",
            "updatedYmdt": "2023-02-26T01:15:50+09:00"
        }
    ]
}


List User Group Details

GET /v4.0/user-groups/{userGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:UserGroup.Get List user group details

Request

This API does not require a request body.

Name Type Format Required Description
userGroupId URL UUID O User group identifier

Response

Name Type Format Description
userGroupId Body UUID User group identifier
userGroupName Body String Name to identify user groups
userGroupTypeCode Body Enum User group type
ENTIRE: User group including all project members
INDIVIDUAL_MEMBER: User group including specific project members
members Body Array Project member list
members.memberId Body UUID Project member identifier
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
    "userGroupName": "dev-team",
    "userGroupTypeCode": "INDIVIDUAL_MEMBER",
    "members": [
        {
            "memberId": "1321e759-2ef3-4b85-9921-b13e918b24b5"
        }
    ],
    "createdYmdt": "2023-02-23T10:07:54+09:00",
    "updatedYmdt": "2023-02-26T01:15:50+09:00"
}


Create User Group

POST /v4.0/user-groups

Required permissions

Permission Name Description
RDSforMariaDB:UserGroup.Create Create user group

Request

Name Type Format Required Description
userGroupName Body String O Name to identify user groups
memberIds Body Array O Project member identifiers
Ignored when selectAll is true
selectAll Body Boolean X All project members or not
If true, the group is set for all members
Example

{
    "userGroupName": "dev-team",
    "memberIds": [
        "1321e759-2ef3-4b85-9921-b13e918b24b5"
    ]
}
{
    "userGroupName": "dev-team",
    "selectAll": true
}

Response

Name Type Format Description
userGroupId Body UUID User group identifier

Modify User Group

PUT /v4.0/user-groups/{userGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:UserGroup.Modify Modify user group

Request

Name Type Format Required Description
userGroupId URL UUID O User group identifier
userGroupName Body String X Name to identify user groups
memberIds Body Array X Project member identifiers
selectAll Body Boolean X All project members or not
If true, the group is set for all members
Example

{
    "userGroupName": "dev-team",
    "memberIds": [
        "1321e759-2ef3-4b85-9921-b13e918b24b5",
        "f9064b09-2b15-442e-a4b0-3a5a2754555e"
    ]
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Delete User Group

DELETE /v4.0/user-groups/{userGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:UserGroup.Delete Delete user group

Request

Name Type Format Required Description
userGroupId URL UUID O User group identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Notification Group

List Notification Groups

GET /v4.0/notification-groups

Required permissions

Permission Name Description
RDSforMariaDB:NotificationGroup.List List notification groups

Request

This API does not require a request body.

Response

Name Type Format Description
notificationGroups Body Array Notification Groups
notificationGroups.notificationGroupId Body UUID Notification group identifier
notificationGroups.notificationGroupName Body String Name to identify notification groups
notificationGroups.notifyEmail Body Boolean Whether to be notified by email
notificationGroups.notifySms Body Boolean Whether to be notified by SMS
notificationGroups.isEnabled Body Boolean Indicates whether the flavor is enabled
notificationGroups.createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
notificationGroups.updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "notificationGroups": [
        {
            "notificationGroupId": "b3901f17-9971-4d1e-8a81-8448cf533dc7",
            "notificationGroupName": "dev-team-noti",
            "notifyEmail": true,
            "notifySms": false,
            "isEnabled": true,
            "createdYmdt": "2023-02-20T13:34:13+09:00",
            "updatedYmdt": "2023-02-20T13:34:13+09:00"
        }
    ]
}


View Notification Group Details

GET /v4.0/notification-groups/{notificationGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:NotificationGroup.Get List notification groups

Request

This API does not require a request body.

Name Type Format Required Description
notificationGroupId URL UUID O Notification group identifier

Response

Name Type Format Description
notificationGroupId Body UUID Notification group identifier
notificationGroupName Body String Name to identify notification groups
notifyEmail Body Boolean Whether to be notified by email
notifySms Body Boolean Whether to be notified by SMS
isEnabled Body Boolean Indicates whether the flavor is enabled
dbInstances Body Array DB Instances to monitor
dbInstances.dbInstanceId Body UUID DB instance identifier
dbInstances.dbInstanceName Body String Name to identify DB instances
userGroups Body Array User Groups
userGroups.userGroupId Body UUID User group identifier
userGroups.userGroupName Body String Name to identify user groups
createdYmdt Body DateTime Created date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
updatedYmdt Body DateTime Modified date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "notificationGroupId": "b3901f17-9971-4d1e-8a81-8448cf533dc7",
    "notificationGroupName": "dev-team-noti",
    "notifyEmail": true,
    "notifySms": false,
    "isEnabled": true,
    "dbInstances": [
        {
            "dbInstanceId": "ed5cb985-526f-4c54-9ae0-40288593de65",
            "dbInstanceName": "database"
        }
    ],
    "userGroups": [
        {
            "userGroupId": "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0",
            "userGroupName": "dev-team"
        }
    ],
    "createdYmdt": "2023-02-20T13:34:13+09:00",
    "updatedYmdt": "2023-02-20T13:34:13+09:00"
}


Create Notification Group

POST /v4.0/notification-groups

Required permissions

Permission Name Description
RDSforMariaDB:NotificationGroup.Create Create notification group

Request

Name Type Format Required Description
notificationGroupName Body String O Name to identify notification groups
notifyEmail Body Boolean X Whether to be notified by email
- Default: true
notifySms Body Boolean X Whether to be notified by SMS
- Default: true
isEnabled Body Boolean X Indicates whether the flavor is enabled
- Default: true
dbInstanceIds Body Array O DB instance identifiers to monitor
userGroupIds Body Array O User group identifiers
Example

{
    "notificationGroupName": "dev-team-noti",
    "notifyEmail": false,
    "isEnable": true,
    "dbInstanceIds": [
        "ed5cb985-526f-4c54-9ae0-40288593de65"
    ],
    "userGroupIds": [
        "1aac0437-f32d-4923-ad3c-ac61c1cfdfe0"
    ]
}

Response

Name Type Format Description
notificationGroupId Body UUID Notification group identifier

Modify Notification Group

PUT /v4.0/notification-groups/{notificationGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:NotificationGroup.Modify Modify notification group

Request

Name Type Format Required Description
notificationGroupId URL UUID O Notification group identifier
notificationGroupName Body String X Name to identify notification groups
notifyEmail Body Boolean X Whether to be notified by email
notifySms Body Boolean X Whether to be notified by SMS
isEnabled Body Boolean X Indicates whether the flavor is enabled
dbInstanceIds Body Array X DB instance identifiers to monitor
userGroupIds Body Array X User group identifiers
Example

{
    "notifyEmail": true,
    "dbInstanceIds": [
        "ed5cb985-526f-4c54-9ae0-40288593de65",
        "d51b7da0-682f-47ff-b588-b739f6adc740"
    ]
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Delete Notification Group

DELETE /v4.0/notification-groups/{notificationGroupId}

Required permissions

Permission Name Description
RDSforMariaDB:NotificationGroup.Delete Delete notification group

Request

This API does not require a request body.

Name Type Format Required Description
notificationGroupId URL UUID O Notification group identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Monitoring

List Metric List

GET /v4.0/metrics

Required permissions

Permission Name Description
RDSforMariaDB:Metric.List List metric information

Request

This API does not require a request body.

Response

Name Type Format Description
metrics Body Array Metric List
metrics.measureName Body Enum Metric type to query
metrics.unit Body String Measure unit
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "metrics": [
        {
            "measureName": "CPU_USAGE",
            "unit": "%"
        }
    ]
}


View stats

GET /v4.0/metric-statistics

Required permissions

Permission Name Description
RDSforMariaDB:Metric.List List metric information

Request

Name Type Format Required Description
dbInstanceId Query UUID O DB instance identifier
measureNames Query Array O Metric list to query
- Minimum length: 1
from Query Datetime O Start date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
to Query Datetime O End date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
interval Query Number X View interval

Response

Name Type Format Description
metricStatistics Body Array Statistics information list
metricStatistics.measureName Body Enum Measure type
metricStatistics.unit Body String Measure unit
metricStatistics.values Body Array Measure values
metricStatistics.values.timestamp Body Timestamp Measure time
metricStatistics.values.value Body Object Measure value
Example

{
    "metricStatistics": [
        {
            "measureName": "MYSQL_STATUS",
            "unit": "",
            "values": [
                [
                    1679298540,
                    "1"
                ],
                [
                    1679298600,
                    "1"
                ],
                [
                    1679298660,
                    "1"
                ]
            ]
        }
    ]
}


Event

Event category

Events can be categorized into categories, which are shown below.

Event category Description
ALL All
BACKUP Backups
DB_INSTANCE DB Instance
JOB Jobs
TENANT Tenant
MONITORING Monitoring

List Events

GET /v4.0/events

Required permissions

Permission Name Description
RDSforMariaDB:Event.List List Events

Request

This API does not require a request body.

Name Type Format Required Description
page Query Number X Page to retrieve
- Default: 1
- Minimum value: 1
size Query Number X Page size to retrieve
- Default: 20
from Query Datetime O Start date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
to Query Datetime O End date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
eventCategoryType Query Enum O Event category types to query
- ALL: All
- INSTANCE: DB instance
- BACKUP: Backup
- DB_SECURITY_GROUP: DB security group
- TENANT: Tenant
sourceId Query String X Event target resource identifier
keyword Query String X String keyword in event message
ascendingOrder Query Enum X Event message sorting order
- ASC: Ascending order
- DESC: Descending order
- Default: DESC

Response

Name Type Format Description
totalCounts Body Number Total number of events
events Body Array Events
events.eventCategoryType Body Enum Event category type
events.eventCode Body Enum Occurred event type
events.sourceId Body String Event source identifier
events.sourceName Body String Name to identify event sources
events.messages Body Array Event messages
events.messages.langCode Body String Language code
events.messages.message Body String Event Message
events.eventYmdt Body DateTime Event occurred date and time (YYYY-MM-DDThh:mm:ss.SSSTZD)
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "totalCounts": 28,
    "events": [
        {
            "eventCategoryType": "INSTANCE",
            "eventCode": "INSTC_02_01",
            "sourceId": "76f00947-356e-4a20-8922-428368cc45ed",
            "sourceName": "db-instance",
            "messages": [
                {
                    "langCode": "EN",
                    "message": "DB instance started"
                },
                {
                    "langCode": "JA",
                    "message": "DBインスタンスの起動"
                },
                {
                    "langCode": "KO",
                    "message": "DB 인스턴스 시작"
                },
                {
                    "langCode": "ZH",
                    "message": "DB instance started"
                }
            ],
            "eventYmdt": "2023-03-20T16:31:59+09:00"
        }
    ]
}


List Subscribable Event Codes

GET /v4.0/event-codes

Required permissions

Permission Name Description
RDSforMariaDB:Event.List List Events

Request

This API does not require a request body.

Response

Name Type Format Description
eventCodes Body Array Event Codes
eventCodes.eventCode Body Enum Event Code
eventCodes.eventCategoryType Body Enum Event category type
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "eventCodes": [
        {
            "eventCode": "INSTC_05_01",
            "eventCategoryType": "INSTANCE"
        }
    ]
}


Event Subscription

List Event Subscriptions

GET /v4.0/event-subscriptions

Required Permission

Permission Description
RDSforMariaDB:EventSubscription.List List event subscriptions

Request

Name Type Format Required Description
page Query Number X Page to retrieve
- Default: 1
- Minimum value: 1
size Query Number X Page size to retrieve
- Default: 20
eventSubscriptionId Query UUID X Event subscription identifier
eventSubscriptionName Query String X Name to identify event subscription
userGroupId Query UUID X User group identifier

Response

Name Type Format Description
totalCounts Body Number Total number of event subscriptions
eventSubscriptions Body Array List of event subscriptions
eventSubscriptions.eventSubscriptionId Body UUID Event subscription identifier
eventSubscriptions.eventCategoryType Body Enum Event category type
eventSubscriptions.eventSubscriptionName Body String A name that identifies the event subscription
eventSubscriptions.enabled Body Boolean Whether to activate
eventSubscriptions.notifyEmail Body Boolean Whether to send emails
eventSubscriptions.notifySms Body Boolean Whether to send SMS messages
eventSubscriptions.eventCodes Body Array List of event codes to subscribe to
eventSubscriptions.sources Body Array List of event sources to subscribe to
eventSubscriptions.sources.sourceId Body UUID Identifier of the event source
eventSubscriptions.sources.eventCategoryType Body Enum Event category type
eventSubscriptions.userGroupIds Body Array List of identifiers of user groups subscribing to the event
eventSubscriptions.createdYmdt Body DateTime Created at
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "totalCounts": 1,
    "eventSubscriptions": [
        {
            "eventSubscriptionId": "12345678-1234-1234-1234-123456789012",
            "eventCategoryType": "INSTANCE",
            "eventSubscriptionName": "example-event-subscription",
            "enabled": true,
            "notifyEmail": true,
            "notifySms": false,
            "eventCodes": [
                "INSTC_05_01"
            ],
            "sources": [
                {
                    "sourceId": "87654321-4321-4321-4321-210987654321",
                    "eventCategoryType": "INSTANCE"
                }
            ],
            "userGroupIds": [
                "11111111-2222-3333-4444-555555555555"
            ],
            "createdYmdt": "2024-01-01T12:00:00+09:00"
        }
    ]
}


Create an Event Subscription

POST /v4.0/event-subscriptions

Required Permission

Permission Description
RDSforMariaDB:EventSubscription.Create Create an event subscription

Request

Name Type Format Required Description
eventCategoryType Body Enum O Event category type
eventSubscriptionName Body String O A name that identifies the event subscription - maximum length: 100
enabled Body Boolean O Whether to enable
notifyEmail Body Boolean O Whether to send emails
notifySms Body Boolean O Whether to send SMS messages
eventCodes Body Array O List of event codes to subscribe to
sources Body Array O List of event sources to subscribe to
sources.sourceId Body UUID O Identifier of the event source
sources.eventCategoryType Body Enum O Event category type
userGroupIds Body Array O List of identifiers of user groups to subscribe to
Example

{
    "eventCategoryType": "INSTANCE",
    "eventSubscriptionName": "example-event-subscription",
    "enabled": true,
    "notifyEmail": true,
    "notifySms": false,
    "eventCodes": [
        "INSTC_05_01"
    ],
    "sources": [
        {
            "sourceId": "87654321-4321-4321-4321-210987654321",
            "eventCategoryType": "INSTANCE"
        }
    ],
    "userGroupIds": [
        "11111111-2222-3333-4444-555555555555"
    ]
}

Response

Name Type Format Description
eventSubscriptionId Body UUID Event subscription identifier
Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    },
    "eventSubscriptionId": "12345678-1234-1234-1234-123456789012"
}


Modify an Event Subscription

PUT /v4.0/event-subscriptions/{eventSubscriptionId}

Required Permission

Permission Description
RDSforMariaDB:EventSubscription.Modify Modify an event subscription

Request

Name Type Format Required Description
eventSubscriptionId URL UUID O Event subscription identifier
eventCategoryType Body Enum X Event category type
eventSubscriptionName Body String X A name that identifies the event subscription
enabled Body Boolean X Whether to enable
notifyEmail Body Boolean X Whether to send an email
notifySms Body Boolean X Whether to send an SMS
eventCodes Body Array X A list of event codes to subscribe to
sources Body Array X A list of event sources to subscribe to
sources.sourceId Body UUID X Event source identifier
sources.eventCategoryType Body Enum X Event category type
userGroupIds Body Array X A list of identifiers for user groups to subscribe to
Example

{
    "eventSubscriptionName": "updated-event-subscription",
    "enabled": false,
    "notifyEmail": false,
    "notifySms": true,
    "eventCodes": [
        "INSTC_05_01",
        "INSTC_06_01"
    ],
    "sources": [
        {
            "sourceId": "87654321-4321-4321-4321-210987654321",
            "eventCategoryType": "INSTANCE"
        }
    ],
    "userGroupIds": [
        "11111111-2222-3333-4444-555555555555",
        "22222222-3333-4444-5555-666666666666"
    ]
}

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Delete an Event Subscription

DELETE /v4.0/event-subscriptions/{eventSubscriptionId}

Required Permission

Permission Description
RDSforMariaDB:EventSubscription.Delete Delete an event subscription

Request

Name Type Format Required Description
eventSubscriptionId URL UUID O Event subscription identifier

Response

This API does not return a response body.

Example

{
    "header": {
        "resultCode": 0,
        "resultMessage": "SUCCESS",
        "isSuccessful": true
    }
}


Table of Contents
TOP