Integration overview

Updated at:

Data Management (DMS) provides a visual console and programmatic access through OpenAPI online debugging, the Alibaba Cloud SDK, and the Alibaba Cloud CLI. To build efficiently with DMS, select the integration method that best fits your requirements.

OpenAPI overview

To help you efficiently learn and use the OpenAPI of our cloud products, Alibaba Cloud provides the OpenAPI website. It is an all-in-one platform that features intelligent search, documentation, online debugging, access to SDKs, code samples, error diagnostics, and call statistics. You can use the OpenAPI portal to call the OpenAPI of various Alibaba Cloud products and view requests and responses. The portal also automatically generates SDK code samples to help you get started quickly with Alibaba Cloud products. For more information, see What is OpenAPI?.

API versions

Alibaba Cloud OpenAPI uses version numbers to manage the major API versions of cloud products.

For example, DMS supports API version 2018-11-01. The string 2018-11-01 is an API version identifier, not a date. It provides access to the latest API features and does not indicate that the API has been static since 2018-11-01.

Feature

API version

Description

Data Management (DMS)

2018-11-01

Recommended.

Database Backup (DBS)

2021-01-01

Provides features such as backup task management, recovery task management, and backup set download. For a list of API operations supported in this version, see API reference.

2019-03-06

Provides features such as sandbox instance management and advanced RDS download. For a list of API operations supported in this version, see API reference.

API style

The API is RPC-based. For more information about API styles, see OpenAPI styles.

Online debugging

DMS provides API debugging and other features in the OpenAPI portal. Before making an API call, you must understand the versions, endpoints, API style, and request methods that DMS provides.

On the debugging page of the OpenAPI portal, the left-side navigation pane lists API operations such as ListInstances (retrieves a list of instance information), AddInstance, ModifyInstance, GetInstance, and DeleteInstance. After you select an API operation, the center panel allows you to configure the endpoint, such as China (Hangzhou), and the request parameters. These parameters include Tid (tenant ID), SearchKey (search keyword), DbType (database type), EnvType (environment type), InstanceSource (instance source), NetType (network type), InstanceState (instance state), and PageNumber (page number). After entering the values, click Initiate Call to send the request. The documentation panel on the right displays the data type and an example value for each parameter.

Debugging entry points

Feature

API version

Entry point

Data Management (DMS)

2018-11-01

https://api.aliyun.com/api/dms-enterprise/2018-11-01/

Database Backup (DBS)

2021-01-01

https://next.api.aliyun.com/api/Dbs/2021-01-01/DescribeDownloadSupport

2019-03-06

https://next.api.aliyun.com/api/Dbs/2019-03-06/CreateBackupPlan

Endpoints

DMS

Select the endpoint that corresponds to the region where your resources are located to minimize latency.

For example, the VPC endpoint for the China (Zhangjiakou) region is dms-enterprise-vpc.cn-zhangjiakou.aliyuncs.com. For more information, see Endpoints.

DBS

Select an endpoint based on the region where your resources are located to minimize latency. For example, for Database Backup (DBS) in the China (Zhangjiakou) region, the public endpoint is dbs-api.cn-zhangjiakou.aliyuncs.com, and the VPC endpoint is dbs-api-vpc.cn-zhangjiakou.aliyuncs.com.

  • Public endpoints are accessible globally.

  • A Virtual Private Cloud (VPC) is an isolated virtual network. The advantages of using a VPC endpoint are:

    • Enhanced security: VPC endpoints can be accessed only from within a VPC, providing enhanced security and privacy.

    • Improved performance: Because VPC endpoints operate within the VPC, they typically offer faster response times than public endpoints and avoid issues such as public network latency and bandwidth limitations.

    • Cost-effectiveness: VPC endpoints use internal network communication, which can reduce data transfer costs.

For more information, see Endpoints.

Supported identities

After you log on to the OpenAPI website with your Alibaba Cloud account, API calls are made using this account by default for online debugging. Using an Alibaba Cloud account for routine API access is high-risk due to its full permissions. We strongly recommend creating and using a RAM user for daily operations. Grant permissions to the RAM user based on your business needs before making API calls. The RAM user must have the necessary permissions to operate DMS. For more information, see Use RAM for access control.

User identity

Supported

Alibaba Cloud account

Supported

RAM user (recommended)

Supported

RAM role (recommended)

Supported

Integration methods

Integration overview

DMS provides multiple integration methods, including SDKs. You can choose the method that best suits your business needs.

Note

SDKs are easy to integrate and are the recommended method for calling OpenAPI.

DMS

Method

Supported

Alibaba Cloud SDK (recommended)

Supported

Alibaba Cloud CLI

Supported

Resource Orchestration Service (ROS)

Partially supported

Terraform

Partially supported

Custom API encapsulation (not recommended)

Supported

Alibaba Cloud SDK

  • Alibaba Cloud provides SDKs for multiple programming languages, including Java, C#, Go, Python, Node.js/TypeScript, PHP, and C++. You only need to integrate the SDK to call OpenAPI directly through the exposed methods. The SDKs simplify development by handling signing logic, timeout, and retry mechanisms, and returning structured Response objects. For more information about Alibaba Cloud SDKs, see Alibaba Cloud SDK.

  • For information about the languages and dependencies supported by the DMS SDK, see DMS SDK.

  • You can use an Alibaba Cloud SDK to call the OpenAPI of Database Backup (DBS). For more information, see SDK reference.

Alibaba Cloud CLI

Resource Orchestration (ROS)

  • Resource Orchestration Service (ROS) is an Alibaba Cloud service that simplifies the management of cloud resources. Developers and administrators can write templates to define the required Alibaba Cloud resources, such as ECS instances and RDS database instances, and their dependencies. The ROS orchestration engine automatically creates and configures all resources based on the template, enabling automated deployment and O&M. For more information, see What is Resource Orchestration Service?.

  • You can use ROS to orchestrate DMS resources. The following DMS resources are supported:

  • To quickly use ROS to orchestrate DMS resources, see ROS integration example.

Terraform

The following table lists some of the DMS resources and data sources supported by Terraform. If you are new to Terraform, see Learn about Alibaba Cloud Terraform.

Resource type

Resource

Description

Resources

alicloud_dms_enterprise_authority_template

Creates a permission template.

alicloud_dms_enterprise_instance

Registers a new instance.

alicloud_dms_enterprise_logic_database

Creates a logical database.

alicloud_dms_enterprise_proxy

Enables the data security access feature.

alicloud_dms_enterprise_proxy_access

Authorizes a user for a secure access proxy.

alicloud_dms_enterprise_user

Registers a DMS user.

Data Sources

alicloud_dms_enterprise_databases

Obtains a list of database details for an instance.

alicloud_dms_enterprise_instances

Obtains a list of instance information.

alicloud_dms_enterprise_logic_databases

Obtains logical database information.

alicloud_dms_enterprise_proxies

Obtains a list of secure access proxies.

alicloud_dms_enterprise_proxy_accesses

Obtains authorization information for secure access proxies.

alicloud_dms_enterprise_users

Obtains a list of user details.

alicloud_dms_user_tenants

Obtains a list of current tenants.

Custom API encapsulation

To make native HTTP calls, you must implement the signature algorithm, construct custom requests, and initiate the HTTP calls. For more information about the signature mechanism, see DMS API overview and Request body and signature mechanism (V3).

DBS

Integration method

Supported

Alibaba Cloud SDK (recommended)

Supported

Alibaba Cloud CLI

Not supported

Resource Orchestration Service (ROS)

Partially supported

Terraform

Partially supported

Custom API encapsulation

Supported

Alibaba Cloud SDK

  • Alibaba Cloud provides SDKs for multiple programming languages, including Java, C#, Go, Python, Node.js, TypeScript, PHP, and C++. These SDKs simplify development by handling the underlying implementation details of OpenAPI, including identity, authentication, and signing. You only need to integrate the SDK to call OpenAPI directly. For more information about Alibaba Cloud SDKs, see Alibaba Cloud SDK.

  • You can use an Alibaba Cloud SDK to call the OpenAPI of Database Backup (DBS). For more information, see SDK reference.

Custom API encapsulation

You can encapsulate requests to access Alibaba Cloud OpenAPI by referring to the V3 signature documentation in the SDK section. To make native HTTP calls, you must implement the signature algorithm, construct custom requests, and initiate the HTTP calls. For more information about the signature mechanism, see Request body and signature mechanism (V3).

Usage notes

DMS

  • If an API call fails, use the returned error code to check your request parameters and their values. For more information, see Error codes.

  • Alternatively, record the RequestID or SDK error message from the response and use Alibaba Cloud OpenAPI Diagnostics to troubleshoot the issue.

DBS

  • If an API call returns an error, use the returned error code to check your request parameters and their values. For more information, see Error codes.

  • Alternatively, record the returned RequestID or SDK error message and use Alibaba Cloud OpenAPI Diagnostics to diagnose the issue yourself.