瀏覽代碼

Support Go SDK.

sdk-team 6 年之前
父節點
當前提交
ce25333d96
共有 60 個文件被更改,包括 3772 次插入0 次删除
  1. 5 0
      ChangeLog.txt
  2. 108 0
      services/adb/allocate_cluster_public_connection.go
  3. 129 0
      services/adb/client.go
  4. 110 0
      services/adb/create_account.go
  5. 122 0
      services/adb/create_db_cluster.go
  6. 108 0
      services/adb/delete_account.go
  7. 109 0
      services/adb/describe_accounts.go
  8. 113 0
      services/adb/describe_auto_renew_attribute.go
  9. 112 0
      services/adb/describe_backup_policy.go
  10. 116 0
      services/adb/describe_backups.go
  11. 108 0
      services/adb/describe_db_cluster_access_white_list.go
  12. 108 0
      services/adb/describe_db_cluster_attribute.go
  13. 109 0
      services/adb/describe_db_cluster_net_info.go
  14. 114 0
      services/adb/describe_db_cluster_performance.go
  15. 122 0
      services/adb/describe_db_clusters.go
  16. 111 0
      services/adb/describe_operator_permission.go
  17. 107 0
      services/adb/describe_regions.go
  18. 117 0
      services/adb/describe_slow_log_records.go
  19. 114 0
      services/adb/describe_slow_log_trend.go
  20. 38 0
      services/adb/endpoint.go
  21. 109 0
      services/adb/grant_operator_permission.go
  22. 109 0
      services/adb/modify_account_description.go
  23. 110 0
      services/adb/modify_auto_renew_attribute.go
  24. 111 0
      services/adb/modify_db_cluster_access_white_list.go
  25. 108 0
      services/adb/modify_db_cluster_description.go
  26. 108 0
      services/adb/modify_db_cluster_maintain_time.go
  27. 107 0
      services/adb/release_cluster_public_connection.go
  28. 109 0
      services/adb/reset_account_password.go
  29. 107 0
      services/adb/revoke_operator_permission.go
  30. 21 0
      services/adb/struct_account_list.go
  31. 26 0
      services/adb/struct_address.go
  32. 26 0
      services/adb/struct_auto_renew_attribute.go
  33. 27 0
      services/adb/struct_backup.go
  34. 24 0
      services/adb/struct_db_account.go
  35. 46 0
      services/adb/struct_db_cluster.go
  36. 23 0
      services/adb/struct_ip_array.go
  37. 21 0
      services/adb/struct_items_in_describe_auto_renew_attribute.go
  38. 21 0
      services/adb/struct_items_in_describe_backups.go
  39. 21 0
      services/adb/struct_items_in_describe_db_cluster_access_white_list.go
  40. 21 0
      services/adb/struct_items_in_describe_db_cluster_attribute.go
  41. 21 0
      services/adb/struct_items_in_describe_db_cluster_net_info.go
  42. 21 0
      services/adb/struct_items_in_describe_db_clusters.go
  43. 21 0
      services/adb/struct_items_in_describe_slow_log_records.go
  44. 21 0
      services/adb/struct_items_in_describe_slow_log_trend.go
  45. 23 0
      services/adb/struct_performance_item.go
  46. 21 0
      services/adb/struct_performances.go
  47. 22 0
      services/adb/struct_region.go
  48. 21 0
      services/adb/struct_regions.go
  49. 21 0
      services/adb/struct_series_in_describe_db_cluster_performance.go
  50. 21 0
      services/adb/struct_series_in_describe_slow_log_trend.go
  51. 22 0
      services/adb/struct_series_item.go
  52. 22 0
      services/adb/struct_series_item_in_describe_slow_log_trend.go
  53. 29 0
      services/adb/struct_slow_log_record.go
  54. 23 0
      services/adb/struct_slow_log_trend_item.go
  55. 22 0
      services/adb/struct_tag.go
  56. 21 0
      services/adb/struct_tags_in_describe_db_cluster_attribute.go
  57. 21 0
      services/adb/struct_tags_in_describe_db_clusters.go
  58. 21 0
      services/adb/struct_values.go
  59. 22 0
      services/adb/struct_zone.go
  60. 21 0
      services/adb/struct_zones.go

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2019-11-13 Version: 1.60.232
+- Support Go SDK.
+- Support C SDK.
+- Support PHP SDK.
+
 2019-11-12 Version: 1.60.231
 - Generated 2018-08-21, 2018-08-16 for `Rdc`.
 

+ 108 - 0
services/adb/allocate_cluster_public_connection.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// AllocateClusterPublicConnection invokes the adb.AllocateClusterPublicConnection API synchronously
+// api document: https://help.aliyun.com/api/adb/allocateclusterpublicconnection.html
+func (client *Client) AllocateClusterPublicConnection(request *AllocateClusterPublicConnectionRequest) (response *AllocateClusterPublicConnectionResponse, err error) {
+	response = CreateAllocateClusterPublicConnectionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AllocateClusterPublicConnectionWithChan invokes the adb.AllocateClusterPublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/adb/allocateclusterpublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AllocateClusterPublicConnectionWithChan(request *AllocateClusterPublicConnectionRequest) (<-chan *AllocateClusterPublicConnectionResponse, <-chan error) {
+	responseChan := make(chan *AllocateClusterPublicConnectionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AllocateClusterPublicConnection(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AllocateClusterPublicConnectionWithCallback invokes the adb.AllocateClusterPublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/adb/allocateclusterpublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AllocateClusterPublicConnectionWithCallback(request *AllocateClusterPublicConnectionRequest, callback func(response *AllocateClusterPublicConnectionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AllocateClusterPublicConnectionResponse
+		var err error
+		defer close(result)
+		response, err = client.AllocateClusterPublicConnection(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AllocateClusterPublicConnectionRequest is the request struct for api AllocateClusterPublicConnection
+type AllocateClusterPublicConnectionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId        requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ConnectionStringPrefix string           `position:"Query" name:"ConnectionStringPrefix"`
+	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId            string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// AllocateClusterPublicConnectionResponse is the response struct for api AllocateClusterPublicConnection
+type AllocateClusterPublicConnectionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateAllocateClusterPublicConnectionRequest creates a request to invoke AllocateClusterPublicConnection API
+func CreateAllocateClusterPublicConnectionRequest() (request *AllocateClusterPublicConnectionRequest) {
+	request = &AllocateClusterPublicConnectionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "AllocateClusterPublicConnection", "ads", "openAPI")
+	return
+}
+
+// CreateAllocateClusterPublicConnectionResponse creates a response to parse from AllocateClusterPublicConnection response
+func CreateAllocateClusterPublicConnectionResponse() (response *AllocateClusterPublicConnectionResponse) {
+	response = &AllocateClusterPublicConnectionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 129 - 0
services/adb/client.go

@@ -0,0 +1,129 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"reflect"
+
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
+	return
+}

+ 110 - 0
services/adb/create_account.go

@@ -0,0 +1,110 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateAccount invokes the adb.CreateAccount API synchronously
+// api document: https://help.aliyun.com/api/adb/createaccount.html
+func (client *Client) CreateAccount(request *CreateAccountRequest) (response *CreateAccountResponse, err error) {
+	response = CreateCreateAccountResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateAccountWithChan invokes the adb.CreateAccount API asynchronously
+// api document: https://help.aliyun.com/api/adb/createaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateAccountWithChan(request *CreateAccountRequest) (<-chan *CreateAccountResponse, <-chan error) {
+	responseChan := make(chan *CreateAccountResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateAccount(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateAccountWithCallback invokes the adb.CreateAccount API asynchronously
+// api document: https://help.aliyun.com/api/adb/createaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateAccountWithCallback(request *CreateAccountRequest, callback func(response *CreateAccountResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateAccountResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateAccount(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateAccountRequest is the request struct for api CreateAccount
+type CreateAccountRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AccountDescription   string           `position:"Query" name:"AccountDescription"`
+	AccountName          string           `position:"Query" name:"AccountName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	AccountPassword      string           `position:"Query" name:"AccountPassword"`
+}
+
+// CreateAccountResponse is the response struct for api CreateAccount
+type CreateAccountResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateCreateAccountRequest creates a request to invoke CreateAccount API
+func CreateCreateAccountRequest() (request *CreateAccountRequest) {
+	request = &CreateAccountRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "CreateAccount", "ads", "openAPI")
+	return
+}
+
+// CreateCreateAccountResponse creates a response to parse from CreateAccount response
+func CreateCreateAccountResponse() (response *CreateAccountResponse) {
+	response = &CreateAccountResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 122 - 0
services/adb/create_db_cluster.go

@@ -0,0 +1,122 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreateDBCluster invokes the adb.CreateDBCluster API synchronously
+// api document: https://help.aliyun.com/api/adb/createdbcluster.html
+func (client *Client) CreateDBCluster(request *CreateDBClusterRequest) (response *CreateDBClusterResponse, err error) {
+	response = CreateCreateDBClusterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateDBClusterWithChan invokes the adb.CreateDBCluster API asynchronously
+// api document: https://help.aliyun.com/api/adb/createdbcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDBClusterWithChan(request *CreateDBClusterRequest) (<-chan *CreateDBClusterResponse, <-chan error) {
+	responseChan := make(chan *CreateDBClusterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateDBCluster(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateDBClusterWithCallback invokes the adb.CreateDBCluster API asynchronously
+// api document: https://help.aliyun.com/api/adb/createdbcluster.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDBClusterWithCallback(request *CreateDBClusterRequest, callback func(response *CreateDBClusterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateDBClusterResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateDBCluster(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateDBClusterRequest is the request struct for api CreateDBCluster
+type CreateDBClusterRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	DBClusterDescription string           `position:"Query" name:"DBClusterDescription"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	DBClusterCategory    string           `position:"Query" name:"DBClusterCategory"`
+	DBClusterNetworkType string           `position:"Query" name:"DBClusterNetworkType"`
+	Period               string           `position:"Query" name:"Period"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	DBClusterVersion     string           `position:"Query" name:"DBClusterVersion"`
+	DBClusterClass       string           `position:"Query" name:"DBClusterClass"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DBNodeGroupCount     string           `position:"Query" name:"DBNodeGroupCount"`
+	UsedTime             string           `position:"Query" name:"UsedTime"`
+	VSwitchId            string           `position:"Query" name:"VSwitchId"`
+	DBNodeStorage        string           `position:"Query" name:"DBNodeStorage"`
+	VPCId                string           `position:"Query" name:"VPCId"`
+	ZoneId               string           `position:"Query" name:"ZoneId"`
+	PayType              string           `position:"Query" name:"PayType"`
+}
+
+// CreateDBClusterResponse is the response struct for api CreateDBCluster
+type CreateDBClusterResponse struct {
+	*responses.BaseResponse
+	RequestId   string `json:"RequestId" xml:"RequestId"`
+	DBClusterId string `json:"DBClusterId" xml:"DBClusterId"`
+	OrderId     string `json:"OrderId" xml:"OrderId"`
+}
+
+// CreateCreateDBClusterRequest creates a request to invoke CreateDBCluster API
+func CreateCreateDBClusterRequest() (request *CreateDBClusterRequest) {
+	request = &CreateDBClusterRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "CreateDBCluster", "ads", "openAPI")
+	return
+}
+
+// CreateCreateDBClusterResponse creates a response to parse from CreateDBCluster response
+func CreateCreateDBClusterResponse() (response *CreateDBClusterResponse) {
+	response = &CreateDBClusterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/adb/delete_account.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeleteAccount invokes the adb.DeleteAccount API synchronously
+// api document: https://help.aliyun.com/api/adb/deleteaccount.html
+func (client *Client) DeleteAccount(request *DeleteAccountRequest) (response *DeleteAccountResponse, err error) {
+	response = CreateDeleteAccountResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteAccountWithChan invokes the adb.DeleteAccount API asynchronously
+// api document: https://help.aliyun.com/api/adb/deleteaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteAccountWithChan(request *DeleteAccountRequest) (<-chan *DeleteAccountResponse, <-chan error) {
+	responseChan := make(chan *DeleteAccountResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteAccount(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteAccountWithCallback invokes the adb.DeleteAccount API asynchronously
+// api document: https://help.aliyun.com/api/adb/deleteaccount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteAccountWithCallback(request *DeleteAccountRequest, callback func(response *DeleteAccountResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteAccountResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteAccount(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteAccountRequest is the request struct for api DeleteAccount
+type DeleteAccountRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AccountName          string           `position:"Query" name:"AccountName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteAccountResponse is the response struct for api DeleteAccount
+type DeleteAccountResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteAccountRequest creates a request to invoke DeleteAccount API
+func CreateDeleteAccountRequest() (request *DeleteAccountRequest) {
+	request = &DeleteAccountRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DeleteAccount", "ads", "openAPI")
+	return
+}
+
+// CreateDeleteAccountResponse creates a response to parse from DeleteAccount response
+func CreateDeleteAccountResponse() (response *DeleteAccountResponse) {
+	response = &DeleteAccountResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/adb/describe_accounts.go

@@ -0,0 +1,109 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeAccounts invokes the adb.DescribeAccounts API synchronously
+// api document: https://help.aliyun.com/api/adb/describeaccounts.html
+func (client *Client) DescribeAccounts(request *DescribeAccountsRequest) (response *DescribeAccountsResponse, err error) {
+	response = CreateDescribeAccountsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAccountsWithChan invokes the adb.DescribeAccounts API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeaccounts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountsWithChan(request *DescribeAccountsRequest) (<-chan *DescribeAccountsResponse, <-chan error) {
+	responseChan := make(chan *DescribeAccountsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAccounts(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAccountsWithCallback invokes the adb.DescribeAccounts API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeaccounts.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAccountsWithCallback(request *DescribeAccountsRequest, callback func(response *DescribeAccountsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAccountsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAccounts(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAccountsRequest is the request struct for api DescribeAccounts
+type DescribeAccountsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AccountName          string           `position:"Query" name:"AccountName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeAccountsResponse is the response struct for api DescribeAccounts
+type DescribeAccountsResponse struct {
+	*responses.BaseResponse
+	RequestId   string      `json:"RequestId" xml:"RequestId"`
+	AccountList AccountList `json:"AccountList" xml:"AccountList"`
+}
+
+// CreateDescribeAccountsRequest creates a request to invoke DescribeAccounts API
+func CreateDescribeAccountsRequest() (request *DescribeAccountsRequest) {
+	request = &DescribeAccountsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeAccounts", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeAccountsResponse creates a response to parse from DescribeAccounts response
+func CreateDescribeAccountsResponse() (response *DescribeAccountsResponse) {
+	response = &DescribeAccountsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 113 - 0
services/adb/describe_auto_renew_attribute.go

@@ -0,0 +1,113 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeAutoRenewAttribute invokes the adb.DescribeAutoRenewAttribute API synchronously
+// api document: https://help.aliyun.com/api/adb/describeautorenewattribute.html
+func (client *Client) DescribeAutoRenewAttribute(request *DescribeAutoRenewAttributeRequest) (response *DescribeAutoRenewAttributeResponse, err error) {
+	response = CreateDescribeAutoRenewAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAutoRenewAttributeWithChan invokes the adb.DescribeAutoRenewAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeautorenewattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAutoRenewAttributeWithChan(request *DescribeAutoRenewAttributeRequest) (<-chan *DescribeAutoRenewAttributeResponse, <-chan error) {
+	responseChan := make(chan *DescribeAutoRenewAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAutoRenewAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAutoRenewAttributeWithCallback invokes the adb.DescribeAutoRenewAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeautorenewattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAutoRenewAttributeWithCallback(request *DescribeAutoRenewAttributeRequest, callback func(response *DescribeAutoRenewAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAutoRenewAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAutoRenewAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAutoRenewAttributeRequest is the request struct for api DescribeAutoRenewAttribute
+type DescribeAutoRenewAttributeRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DBClusterIds         string           `position:"Query" name:"DBClusterIds"`
+}
+
+// DescribeAutoRenewAttributeResponse is the response struct for api DescribeAutoRenewAttribute
+type DescribeAutoRenewAttributeResponse struct {
+	*responses.BaseResponse
+	RequestId        string                            `json:"RequestId" xml:"RequestId"`
+	PageNumber       int                               `json:"PageNumber" xml:"PageNumber"`
+	TotalRecordCount int                               `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	PageRecordCount  int                               `json:"PageRecordCount" xml:"PageRecordCount"`
+	Items            ItemsInDescribeAutoRenewAttribute `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeAutoRenewAttributeRequest creates a request to invoke DescribeAutoRenewAttribute API
+func CreateDescribeAutoRenewAttributeRequest() (request *DescribeAutoRenewAttributeRequest) {
+	request = &DescribeAutoRenewAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeAutoRenewAttribute", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeAutoRenewAttributeResponse creates a response to parse from DescribeAutoRenewAttribute response
+func CreateDescribeAutoRenewAttributeResponse() (response *DescribeAutoRenewAttributeResponse) {
+	response = &DescribeAutoRenewAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 112 - 0
services/adb/describe_backup_policy.go

@@ -0,0 +1,112 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeBackupPolicy invokes the adb.DescribeBackupPolicy API synchronously
+// api document: https://help.aliyun.com/api/adb/describebackuppolicy.html
+func (client *Client) DescribeBackupPolicy(request *DescribeBackupPolicyRequest) (response *DescribeBackupPolicyResponse, err error) {
+	response = CreateDescribeBackupPolicyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeBackupPolicyWithChan invokes the adb.DescribeBackupPolicy API asynchronously
+// api document: https://help.aliyun.com/api/adb/describebackuppolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeBackupPolicyWithChan(request *DescribeBackupPolicyRequest) (<-chan *DescribeBackupPolicyResponse, <-chan error) {
+	responseChan := make(chan *DescribeBackupPolicyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeBackupPolicy(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeBackupPolicyWithCallback invokes the adb.DescribeBackupPolicy API asynchronously
+// api document: https://help.aliyun.com/api/adb/describebackuppolicy.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeBackupPolicyWithCallback(request *DescribeBackupPolicyRequest, callback func(response *DescribeBackupPolicyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeBackupPolicyResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeBackupPolicy(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeBackupPolicyRequest is the request struct for api DescribeBackupPolicy
+type DescribeBackupPolicyRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeBackupPolicyResponse is the response struct for api DescribeBackupPolicy
+type DescribeBackupPolicyResponse struct {
+	*responses.BaseResponse
+	RequestId                string `json:"RequestId" xml:"RequestId"`
+	BackupRetentionPeriod    int    `json:"BackupRetentionPeriod" xml:"BackupRetentionPeriod"`
+	PreferredBackupTime      string `json:"PreferredBackupTime" xml:"PreferredBackupTime"`
+	PreferredBackupPeriod    string `json:"PreferredBackupPeriod" xml:"PreferredBackupPeriod"`
+	EnableBackupLog          string `json:"EnableBackupLog" xml:"EnableBackupLog"`
+	LogBackupRetentionPeriod int    `json:"LogBackupRetentionPeriod" xml:"LogBackupRetentionPeriod"`
+}
+
+// CreateDescribeBackupPolicyRequest creates a request to invoke DescribeBackupPolicy API
+func CreateDescribeBackupPolicyRequest() (request *DescribeBackupPolicyRequest) {
+	request = &DescribeBackupPolicyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeBackupPolicy", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeBackupPolicyResponse creates a response to parse from DescribeBackupPolicy response
+func CreateDescribeBackupPolicyResponse() (response *DescribeBackupPolicyResponse) {
+	response = &DescribeBackupPolicyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 116 - 0
services/adb/describe_backups.go

@@ -0,0 +1,116 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeBackups invokes the adb.DescribeBackups API synchronously
+// api document: https://help.aliyun.com/api/adb/describebackups.html
+func (client *Client) DescribeBackups(request *DescribeBackupsRequest) (response *DescribeBackupsResponse, err error) {
+	response = CreateDescribeBackupsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeBackupsWithChan invokes the adb.DescribeBackups API asynchronously
+// api document: https://help.aliyun.com/api/adb/describebackups.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeBackupsWithChan(request *DescribeBackupsRequest) (<-chan *DescribeBackupsResponse, <-chan error) {
+	responseChan := make(chan *DescribeBackupsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeBackups(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeBackupsWithCallback invokes the adb.DescribeBackups API asynchronously
+// api document: https://help.aliyun.com/api/adb/describebackups.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeBackupsWithCallback(request *DescribeBackupsRequest, callback func(response *DescribeBackupsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeBackupsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeBackups(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeBackupsRequest is the request struct for api DescribeBackups
+type DescribeBackupsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	BackupId             string           `position:"Query" name:"BackupId"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeBackupsResponse is the response struct for api DescribeBackups
+type DescribeBackupsResponse struct {
+	*responses.BaseResponse
+	RequestId  string                 `json:"RequestId" xml:"RequestId"`
+	TotalCount string                 `json:"TotalCount" xml:"TotalCount"`
+	PageNumber string                 `json:"PageNumber" xml:"PageNumber"`
+	PageSize   string                 `json:"PageSize" xml:"PageSize"`
+	Items      ItemsInDescribeBackups `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeBackupsRequest creates a request to invoke DescribeBackups API
+func CreateDescribeBackupsRequest() (request *DescribeBackupsRequest) {
+	request = &DescribeBackupsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeBackups", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeBackupsResponse creates a response to parse from DescribeBackups response
+func CreateDescribeBackupsResponse() (response *DescribeBackupsResponse) {
+	response = &DescribeBackupsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/adb/describe_db_cluster_access_white_list.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBClusterAccessWhiteList invokes the adb.DescribeDBClusterAccessWhiteList API synchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusteraccesswhitelist.html
+func (client *Client) DescribeDBClusterAccessWhiteList(request *DescribeDBClusterAccessWhiteListRequest) (response *DescribeDBClusterAccessWhiteListResponse, err error) {
+	response = CreateDescribeDBClusterAccessWhiteListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBClusterAccessWhiteListWithChan invokes the adb.DescribeDBClusterAccessWhiteList API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusteraccesswhitelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterAccessWhiteListWithChan(request *DescribeDBClusterAccessWhiteListRequest) (<-chan *DescribeDBClusterAccessWhiteListResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBClusterAccessWhiteListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBClusterAccessWhiteList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBClusterAccessWhiteListWithCallback invokes the adb.DescribeDBClusterAccessWhiteList API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusteraccesswhitelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterAccessWhiteListWithCallback(request *DescribeDBClusterAccessWhiteListRequest, callback func(response *DescribeDBClusterAccessWhiteListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBClusterAccessWhiteListResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBClusterAccessWhiteList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBClusterAccessWhiteListRequest is the request struct for api DescribeDBClusterAccessWhiteList
+type DescribeDBClusterAccessWhiteListRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeDBClusterAccessWhiteListResponse is the response struct for api DescribeDBClusterAccessWhiteList
+type DescribeDBClusterAccessWhiteListResponse struct {
+	*responses.BaseResponse
+	RequestId string                                  `json:"RequestId" xml:"RequestId"`
+	Items     ItemsInDescribeDBClusterAccessWhiteList `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBClusterAccessWhiteListRequest creates a request to invoke DescribeDBClusterAccessWhiteList API
+func CreateDescribeDBClusterAccessWhiteListRequest() (request *DescribeDBClusterAccessWhiteListRequest) {
+	request = &DescribeDBClusterAccessWhiteListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeDBClusterAccessWhiteList", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeDBClusterAccessWhiteListResponse creates a response to parse from DescribeDBClusterAccessWhiteList response
+func CreateDescribeDBClusterAccessWhiteListResponse() (response *DescribeDBClusterAccessWhiteListResponse) {
+	response = &DescribeDBClusterAccessWhiteListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/adb/describe_db_cluster_attribute.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBClusterAttribute invokes the adb.DescribeDBClusterAttribute API synchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterattribute.html
+func (client *Client) DescribeDBClusterAttribute(request *DescribeDBClusterAttributeRequest) (response *DescribeDBClusterAttributeResponse, err error) {
+	response = CreateDescribeDBClusterAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBClusterAttributeWithChan invokes the adb.DescribeDBClusterAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterAttributeWithChan(request *DescribeDBClusterAttributeRequest) (<-chan *DescribeDBClusterAttributeResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBClusterAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBClusterAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBClusterAttributeWithCallback invokes the adb.DescribeDBClusterAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterAttributeWithCallback(request *DescribeDBClusterAttributeRequest, callback func(response *DescribeDBClusterAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBClusterAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBClusterAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBClusterAttributeRequest is the request struct for api DescribeDBClusterAttribute
+type DescribeDBClusterAttributeRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeDBClusterAttributeResponse is the response struct for api DescribeDBClusterAttribute
+type DescribeDBClusterAttributeResponse struct {
+	*responses.BaseResponse
+	RequestId string                            `json:"RequestId" xml:"RequestId"`
+	Items     ItemsInDescribeDBClusterAttribute `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBClusterAttributeRequest creates a request to invoke DescribeDBClusterAttribute API
+func CreateDescribeDBClusterAttributeRequest() (request *DescribeDBClusterAttributeRequest) {
+	request = &DescribeDBClusterAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeDBClusterAttribute", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeDBClusterAttributeResponse creates a response to parse from DescribeDBClusterAttribute response
+func CreateDescribeDBClusterAttributeResponse() (response *DescribeDBClusterAttributeResponse) {
+	response = &DescribeDBClusterAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/adb/describe_db_cluster_net_info.go

@@ -0,0 +1,109 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBClusterNetInfo invokes the adb.DescribeDBClusterNetInfo API synchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusternetinfo.html
+func (client *Client) DescribeDBClusterNetInfo(request *DescribeDBClusterNetInfoRequest) (response *DescribeDBClusterNetInfoResponse, err error) {
+	response = CreateDescribeDBClusterNetInfoResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBClusterNetInfoWithChan invokes the adb.DescribeDBClusterNetInfo API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusternetinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterNetInfoWithChan(request *DescribeDBClusterNetInfoRequest) (<-chan *DescribeDBClusterNetInfoResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBClusterNetInfoResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBClusterNetInfo(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBClusterNetInfoWithCallback invokes the adb.DescribeDBClusterNetInfo API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusternetinfo.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterNetInfoWithCallback(request *DescribeDBClusterNetInfoRequest, callback func(response *DescribeDBClusterNetInfoResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBClusterNetInfoResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBClusterNetInfo(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBClusterNetInfoRequest is the request struct for api DescribeDBClusterNetInfo
+type DescribeDBClusterNetInfoRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeDBClusterNetInfoResponse is the response struct for api DescribeDBClusterNetInfo
+type DescribeDBClusterNetInfoResponse struct {
+	*responses.BaseResponse
+	RequestId          string                          `json:"RequestId" xml:"RequestId"`
+	ClusterNetworkType string                          `json:"ClusterNetworkType" xml:"ClusterNetworkType"`
+	Items              ItemsInDescribeDBClusterNetInfo `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBClusterNetInfoRequest creates a request to invoke DescribeDBClusterNetInfo API
+func CreateDescribeDBClusterNetInfoRequest() (request *DescribeDBClusterNetInfoRequest) {
+	request = &DescribeDBClusterNetInfoRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeDBClusterNetInfo", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeDBClusterNetInfoResponse creates a response to parse from DescribeDBClusterNetInfo response
+func CreateDescribeDBClusterNetInfoResponse() (response *DescribeDBClusterNetInfoResponse) {
+	response = &DescribeDBClusterNetInfoResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/adb/describe_db_cluster_performance.go

@@ -0,0 +1,114 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBClusterPerformance invokes the adb.DescribeDBClusterPerformance API synchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterperformance.html
+func (client *Client) DescribeDBClusterPerformance(request *DescribeDBClusterPerformanceRequest) (response *DescribeDBClusterPerformanceResponse, err error) {
+	response = CreateDescribeDBClusterPerformanceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBClusterPerformanceWithChan invokes the adb.DescribeDBClusterPerformance API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterperformance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterPerformanceWithChan(request *DescribeDBClusterPerformanceRequest) (<-chan *DescribeDBClusterPerformanceResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBClusterPerformanceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBClusterPerformance(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBClusterPerformanceWithCallback invokes the adb.DescribeDBClusterPerformance API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusterperformance.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClusterPerformanceWithCallback(request *DescribeDBClusterPerformanceRequest, callback func(response *DescribeDBClusterPerformanceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBClusterPerformanceResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBClusterPerformance(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBClusterPerformanceRequest is the request struct for api DescribeDBClusterPerformance
+type DescribeDBClusterPerformanceRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	Key                  string           `position:"Query" name:"Key"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeDBClusterPerformanceResponse is the response struct for api DescribeDBClusterPerformance
+type DescribeDBClusterPerformanceResponse struct {
+	*responses.BaseResponse
+	RequestId    string            `json:"RequestId" xml:"RequestId"`
+	DBClusterId  string            `json:"DBClusterId" xml:"DBClusterId"`
+	StartTime    string            `json:"StartTime" xml:"StartTime"`
+	EndTime      string            `json:"EndTime" xml:"EndTime"`
+	Performances []PerformanceItem `json:"Performances" xml:"Performances"`
+}
+
+// CreateDescribeDBClusterPerformanceRequest creates a request to invoke DescribeDBClusterPerformance API
+func CreateDescribeDBClusterPerformanceRequest() (request *DescribeDBClusterPerformanceRequest) {
+	request = &DescribeDBClusterPerformanceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeDBClusterPerformance", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeDBClusterPerformanceResponse creates a response to parse from DescribeDBClusterPerformance response
+func CreateDescribeDBClusterPerformanceResponse() (response *DescribeDBClusterPerformanceResponse) {
+	response = &DescribeDBClusterPerformanceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 122 - 0
services/adb/describe_db_clusters.go

@@ -0,0 +1,122 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeDBClusters invokes the adb.DescribeDBClusters API synchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusters.html
+func (client *Client) DescribeDBClusters(request *DescribeDBClustersRequest) (response *DescribeDBClustersResponse, err error) {
+	response = CreateDescribeDBClustersResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDBClustersWithChan invokes the adb.DescribeDBClusters API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusters.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClustersWithChan(request *DescribeDBClustersRequest) (<-chan *DescribeDBClustersResponse, <-chan error) {
+	responseChan := make(chan *DescribeDBClustersResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDBClusters(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDBClustersWithCallback invokes the adb.DescribeDBClusters API asynchronously
+// api document: https://help.aliyun.com/api/adb/describedbclusters.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDBClustersWithCallback(request *DescribeDBClustersRequest, callback func(response *DescribeDBClustersResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDBClustersResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDBClusters(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDBClustersRequest is the request struct for api DescribeDBClusters
+type DescribeDBClustersRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer         `position:"Query" name:"ResourceOwnerId"`
+	DBClusterDescription string                   `position:"Query" name:"DBClusterDescription"`
+	DBClusterStatus      string                   `position:"Query" name:"DBClusterStatus"`
+	PageNumber           requests.Integer         `position:"Query" name:"PageNumber"`
+	PageSize             requests.Integer         `position:"Query" name:"PageSize"`
+	Tag                  *[]DescribeDBClustersTag `position:"Query" name:"Tag"  type:"Repeated"`
+	ResourceOwnerAccount string                   `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string                   `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer         `position:"Query" name:"OwnerId"`
+	DBClusterIds         string                   `position:"Query" name:"DBClusterIds"`
+}
+
+// DescribeDBClustersTag is a repeated param struct in DescribeDBClustersRequest
+type DescribeDBClustersTag struct {
+	Value string `name:"Value"`
+	Key   string `name:"Key"`
+}
+
+// DescribeDBClustersResponse is the response struct for api DescribeDBClusters
+type DescribeDBClustersResponse struct {
+	*responses.BaseResponse
+	RequestId  string                    `json:"RequestId" xml:"RequestId"`
+	PageNumber int                       `json:"PageNumber" xml:"PageNumber"`
+	TotalCount int                       `json:"TotalCount" xml:"TotalCount"`
+	PageSize   int                       `json:"PageSize" xml:"PageSize"`
+	Items      ItemsInDescribeDBClusters `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeDBClustersRequest creates a request to invoke DescribeDBClusters API
+func CreateDescribeDBClustersRequest() (request *DescribeDBClustersRequest) {
+	request = &DescribeDBClustersRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeDBClusters", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeDBClustersResponse creates a response to parse from DescribeDBClusters response
+func CreateDescribeDBClustersResponse() (response *DescribeDBClustersResponse) {
+	response = &DescribeDBClustersResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/adb/describe_operator_permission.go

@@ -0,0 +1,111 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeOperatorPermission invokes the adb.DescribeOperatorPermission API synchronously
+// api document: https://help.aliyun.com/api/adb/describeoperatorpermission.html
+func (client *Client) DescribeOperatorPermission(request *DescribeOperatorPermissionRequest) (response *DescribeOperatorPermissionResponse, err error) {
+	response = CreateDescribeOperatorPermissionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeOperatorPermissionWithChan invokes the adb.DescribeOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeOperatorPermissionWithChan(request *DescribeOperatorPermissionRequest) (<-chan *DescribeOperatorPermissionResponse, <-chan error) {
+	responseChan := make(chan *DescribeOperatorPermissionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeOperatorPermission(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeOperatorPermissionWithCallback invokes the adb.DescribeOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeOperatorPermissionWithCallback(request *DescribeOperatorPermissionRequest, callback func(response *DescribeOperatorPermissionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeOperatorPermissionResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeOperatorPermission(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeOperatorPermissionRequest is the request struct for api DescribeOperatorPermission
+type DescribeOperatorPermissionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeOperatorPermissionResponse is the response struct for api DescribeOperatorPermission
+type DescribeOperatorPermissionResponse struct {
+	*responses.BaseResponse
+	RequestId   string `json:"RequestId" xml:"RequestId"`
+	Privileges  string `json:"Privileges" xml:"Privileges"`
+	CreatedTime string `json:"CreatedTime" xml:"CreatedTime"`
+	ExpiredTime string `json:"ExpiredTime" xml:"ExpiredTime"`
+	DBClusterId string `json:"DBClusterId" xml:"DBClusterId"`
+}
+
+// CreateDescribeOperatorPermissionRequest creates a request to invoke DescribeOperatorPermission API
+func CreateDescribeOperatorPermissionRequest() (request *DescribeOperatorPermissionRequest) {
+	request = &DescribeOperatorPermissionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeOperatorPermission", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeOperatorPermissionResponse creates a response to parse from DescribeOperatorPermission response
+func CreateDescribeOperatorPermissionResponse() (response *DescribeOperatorPermissionResponse) {
+	response = &DescribeOperatorPermissionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/adb/describe_regions.go

@@ -0,0 +1,107 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeRegions invokes the adb.DescribeRegions API synchronously
+// api document: https://help.aliyun.com/api/adb/describeregions.html
+func (client *Client) DescribeRegions(request *DescribeRegionsRequest) (response *DescribeRegionsResponse, err error) {
+	response = CreateDescribeRegionsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeRegionsWithChan invokes the adb.DescribeRegions API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRegionsWithChan(request *DescribeRegionsRequest) (<-chan *DescribeRegionsResponse, <-chan error) {
+	responseChan := make(chan *DescribeRegionsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeRegions(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeRegionsWithCallback invokes the adb.DescribeRegions API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeregions.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeRegionsWithCallback(request *DescribeRegionsRequest, callback func(response *DescribeRegionsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeRegionsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeRegions(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeRegionsRequest is the request struct for api DescribeRegions
+type DescribeRegionsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeRegionsResponse is the response struct for api DescribeRegions
+type DescribeRegionsResponse struct {
+	*responses.BaseResponse
+	RequestId string  `json:"RequestId" xml:"RequestId"`
+	Regions   Regions `json:"Regions" xml:"Regions"`
+}
+
+// CreateDescribeRegionsRequest creates a request to invoke DescribeRegions API
+func CreateDescribeRegionsRequest() (request *DescribeRegionsRequest) {
+	request = &DescribeRegionsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeRegions", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeRegionsResponse creates a response to parse from DescribeRegions response
+func CreateDescribeRegionsResponse() (response *DescribeRegionsResponse) {
+	response = &DescribeRegionsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 117 - 0
services/adb/describe_slow_log_records.go

@@ -0,0 +1,117 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSlowLogRecords invokes the adb.DescribeSlowLogRecords API synchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogrecords.html
+func (client *Client) DescribeSlowLogRecords(request *DescribeSlowLogRecordsRequest) (response *DescribeSlowLogRecordsResponse, err error) {
+	response = CreateDescribeSlowLogRecordsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSlowLogRecordsWithChan invokes the adb.DescribeSlowLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogRecordsWithChan(request *DescribeSlowLogRecordsRequest) (<-chan *DescribeSlowLogRecordsResponse, <-chan error) {
+	responseChan := make(chan *DescribeSlowLogRecordsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSlowLogRecords(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSlowLogRecordsWithCallback invokes the adb.DescribeSlowLogRecords API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogrecords.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogRecordsWithCallback(request *DescribeSlowLogRecordsRequest, callback func(response *DescribeSlowLogRecordsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSlowLogRecordsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSlowLogRecords(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSlowLogRecordsRequest is the request struct for api DescribeSlowLogRecords
+type DescribeSlowLogRecordsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DBName               string           `position:"Query" name:"DBName"`
+}
+
+// DescribeSlowLogRecordsResponse is the response struct for api DescribeSlowLogRecords
+type DescribeSlowLogRecordsResponse struct {
+	*responses.BaseResponse
+	RequestId   string                        `json:"RequestId" xml:"RequestId"`
+	TotalCount  string                        `json:"TotalCount" xml:"TotalCount"`
+	PageNumber  string                        `json:"PageNumber" xml:"PageNumber"`
+	PageSize    string                        `json:"PageSize" xml:"PageSize"`
+	DBClusterId string                        `json:"DBClusterId" xml:"DBClusterId"`
+	Items       ItemsInDescribeSlowLogRecords `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeSlowLogRecordsRequest creates a request to invoke DescribeSlowLogRecords API
+func CreateDescribeSlowLogRecordsRequest() (request *DescribeSlowLogRecordsRequest) {
+	request = &DescribeSlowLogRecordsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeSlowLogRecords", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeSlowLogRecordsResponse creates a response to parse from DescribeSlowLogRecords response
+func CreateDescribeSlowLogRecordsResponse() (response *DescribeSlowLogRecordsResponse) {
+	response = &DescribeSlowLogRecordsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/adb/describe_slow_log_trend.go

@@ -0,0 +1,114 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DescribeSlowLogTrend invokes the adb.DescribeSlowLogTrend API synchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogtrend.html
+func (client *Client) DescribeSlowLogTrend(request *DescribeSlowLogTrendRequest) (response *DescribeSlowLogTrendResponse, err error) {
+	response = CreateDescribeSlowLogTrendResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeSlowLogTrendWithChan invokes the adb.DescribeSlowLogTrend API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogtrend.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogTrendWithChan(request *DescribeSlowLogTrendRequest) (<-chan *DescribeSlowLogTrendResponse, <-chan error) {
+	responseChan := make(chan *DescribeSlowLogTrendResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeSlowLogTrend(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeSlowLogTrendWithCallback invokes the adb.DescribeSlowLogTrend API asynchronously
+// api document: https://help.aliyun.com/api/adb/describeslowlogtrend.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeSlowLogTrendWithCallback(request *DescribeSlowLogTrendRequest, callback func(response *DescribeSlowLogTrendResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeSlowLogTrendResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeSlowLogTrend(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeSlowLogTrendRequest is the request struct for api DescribeSlowLogTrend
+type DescribeSlowLogTrendRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DBName               string           `position:"Query" name:"DBName"`
+}
+
+// DescribeSlowLogTrendResponse is the response struct for api DescribeSlowLogTrend
+type DescribeSlowLogTrendResponse struct {
+	*responses.BaseResponse
+	RequestId   string                      `json:"RequestId" xml:"RequestId"`
+	DBClusterId string                      `json:"DBClusterId" xml:"DBClusterId"`
+	StartTime   string                      `json:"StartTime" xml:"StartTime"`
+	EndTime     string                      `json:"EndTime" xml:"EndTime"`
+	Items       ItemsInDescribeSlowLogTrend `json:"Items" xml:"Items"`
+}
+
+// CreateDescribeSlowLogTrendRequest creates a request to invoke DescribeSlowLogTrend API
+func CreateDescribeSlowLogTrendRequest() (request *DescribeSlowLogTrendRequest) {
+	request = &DescribeSlowLogTrendRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "DescribeSlowLogTrend", "ads", "openAPI")
+	return
+}
+
+// CreateDescribeSlowLogTrendResponse creates a response to parse from DescribeSlowLogTrend response
+func CreateDescribeSlowLogTrendResponse() (response *DescribeSlowLogTrendResponse) {
+	response = &DescribeSlowLogTrendResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 38 - 0
services/adb/endpoint.go

@@ -0,0 +1,38 @@
+package adb
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{
+			"cn-shenzhen":           "adb.aliyuncs.com",
+			"cn-beijing":            "adb.aliyuncs.com",
+			"ap-south-1":            "adb.ap-northeast-1.aliyuncs.com",
+			"cn-shenzhen-finance-1": "adb.aliyuncs.com",
+			"me-east-1":             "adb.ap-northeast-1.aliyuncs.com",
+			"cn-north-2-gov-1":      "adb.aliyuncs.com",
+			"cn-qingdao":            "adb.aliyuncs.com",
+			"cn-shanghai":           "adb.aliyuncs.com",
+			"cn-shanghai-finance-1": "adb.aliyuncs.com",
+			"cn-hongkong":           "adb.aliyuncs.com",
+			"ap-southeast-1":        "adb.aliyuncs.com",
+			"ap-southeast-2":        "adb.ap-northeast-1.aliyuncs.com",
+			"cn-huhehaote":          "adb.aliyuncs.com",
+			"us-east-1":             "adb.aliyuncs.com",
+			"ap-southeast-5":        "adb.ap-northeast-1.aliyuncs.com",
+			"us-west-1":             "adb.aliyuncs.com",
+			"cn-hangzhou":           "adb.aliyuncs.com",
+		}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 109 - 0
services/adb/grant_operator_permission.go

@@ -0,0 +1,109 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// GrantOperatorPermission invokes the adb.GrantOperatorPermission API synchronously
+// api document: https://help.aliyun.com/api/adb/grantoperatorpermission.html
+func (client *Client) GrantOperatorPermission(request *GrantOperatorPermissionRequest) (response *GrantOperatorPermissionResponse, err error) {
+	response = CreateGrantOperatorPermissionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GrantOperatorPermissionWithChan invokes the adb.GrantOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/grantoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GrantOperatorPermissionWithChan(request *GrantOperatorPermissionRequest) (<-chan *GrantOperatorPermissionResponse, <-chan error) {
+	responseChan := make(chan *GrantOperatorPermissionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GrantOperatorPermission(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GrantOperatorPermissionWithCallback invokes the adb.GrantOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/grantoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GrantOperatorPermissionWithCallback(request *GrantOperatorPermissionRequest, callback func(response *GrantOperatorPermissionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GrantOperatorPermissionResponse
+		var err error
+		defer close(result)
+		response, err = client.GrantOperatorPermission(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GrantOperatorPermissionRequest is the request struct for api GrantOperatorPermission
+type GrantOperatorPermissionRequest struct {
+	*requests.RpcRequest
+	Privileges           string           `position:"Query" name:"Privileges"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ExpiredTime          string           `position:"Query" name:"ExpiredTime"`
+}
+
+// GrantOperatorPermissionResponse is the response struct for api GrantOperatorPermission
+type GrantOperatorPermissionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateGrantOperatorPermissionRequest creates a request to invoke GrantOperatorPermission API
+func CreateGrantOperatorPermissionRequest() (request *GrantOperatorPermissionRequest) {
+	request = &GrantOperatorPermissionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "GrantOperatorPermission", "ads", "openAPI")
+	return
+}
+
+// CreateGrantOperatorPermissionResponse creates a response to parse from GrantOperatorPermission response
+func CreateGrantOperatorPermissionResponse() (response *GrantOperatorPermissionResponse) {
+	response = &GrantOperatorPermissionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/adb/modify_account_description.go

@@ -0,0 +1,109 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyAccountDescription invokes the adb.ModifyAccountDescription API synchronously
+// api document: https://help.aliyun.com/api/adb/modifyaccountdescription.html
+func (client *Client) ModifyAccountDescription(request *ModifyAccountDescriptionRequest) (response *ModifyAccountDescriptionResponse, err error) {
+	response = CreateModifyAccountDescriptionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyAccountDescriptionWithChan invokes the adb.ModifyAccountDescription API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifyaccountdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAccountDescriptionWithChan(request *ModifyAccountDescriptionRequest) (<-chan *ModifyAccountDescriptionResponse, <-chan error) {
+	responseChan := make(chan *ModifyAccountDescriptionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyAccountDescription(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyAccountDescriptionWithCallback invokes the adb.ModifyAccountDescription API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifyaccountdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAccountDescriptionWithCallback(request *ModifyAccountDescriptionRequest, callback func(response *ModifyAccountDescriptionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyAccountDescriptionResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyAccountDescription(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyAccountDescriptionRequest is the request struct for api ModifyAccountDescription
+type ModifyAccountDescriptionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AccountDescription   string           `position:"Query" name:"AccountDescription"`
+	AccountName          string           `position:"Query" name:"AccountName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// ModifyAccountDescriptionResponse is the response struct for api ModifyAccountDescription
+type ModifyAccountDescriptionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyAccountDescriptionRequest creates a request to invoke ModifyAccountDescription API
+func CreateModifyAccountDescriptionRequest() (request *ModifyAccountDescriptionRequest) {
+	request = &ModifyAccountDescriptionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ModifyAccountDescription", "ads", "openAPI")
+	return
+}
+
+// CreateModifyAccountDescriptionResponse creates a response to parse from ModifyAccountDescription response
+func CreateModifyAccountDescriptionResponse() (response *ModifyAccountDescriptionResponse) {
+	response = &ModifyAccountDescriptionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/adb/modify_auto_renew_attribute.go

@@ -0,0 +1,110 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyAutoRenewAttribute invokes the adb.ModifyAutoRenewAttribute API synchronously
+// api document: https://help.aliyun.com/api/adb/modifyautorenewattribute.html
+func (client *Client) ModifyAutoRenewAttribute(request *ModifyAutoRenewAttributeRequest) (response *ModifyAutoRenewAttributeResponse, err error) {
+	response = CreateModifyAutoRenewAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyAutoRenewAttributeWithChan invokes the adb.ModifyAutoRenewAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifyautorenewattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAutoRenewAttributeWithChan(request *ModifyAutoRenewAttributeRequest) (<-chan *ModifyAutoRenewAttributeResponse, <-chan error) {
+	responseChan := make(chan *ModifyAutoRenewAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyAutoRenewAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyAutoRenewAttributeWithCallback invokes the adb.ModifyAutoRenewAttribute API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifyautorenewattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyAutoRenewAttributeWithCallback(request *ModifyAutoRenewAttributeRequest, callback func(response *ModifyAutoRenewAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyAutoRenewAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyAutoRenewAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyAutoRenewAttributeRequest is the request struct for api ModifyAutoRenewAttribute
+type ModifyAutoRenewAttributeRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	Duration             string           `position:"Query" name:"Duration"`
+	RenewalStatus        string           `position:"Query" name:"RenewalStatus"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PeriodUnit           string           `position:"Query" name:"PeriodUnit"`
+}
+
+// ModifyAutoRenewAttributeResponse is the response struct for api ModifyAutoRenewAttribute
+type ModifyAutoRenewAttributeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyAutoRenewAttributeRequest creates a request to invoke ModifyAutoRenewAttribute API
+func CreateModifyAutoRenewAttributeRequest() (request *ModifyAutoRenewAttributeRequest) {
+	request = &ModifyAutoRenewAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ModifyAutoRenewAttribute", "ads", "openAPI")
+	return
+}
+
+// CreateModifyAutoRenewAttributeResponse creates a response to parse from ModifyAutoRenewAttribute response
+func CreateModifyAutoRenewAttributeResponse() (response *ModifyAutoRenewAttributeResponse) {
+	response = &ModifyAutoRenewAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/adb/modify_db_cluster_access_white_list.go

@@ -0,0 +1,111 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBClusterAccessWhiteList invokes the adb.ModifyDBClusterAccessWhiteList API synchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusteraccesswhitelist.html
+func (client *Client) ModifyDBClusterAccessWhiteList(request *ModifyDBClusterAccessWhiteListRequest) (response *ModifyDBClusterAccessWhiteListResponse, err error) {
+	response = CreateModifyDBClusterAccessWhiteListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBClusterAccessWhiteListWithChan invokes the adb.ModifyDBClusterAccessWhiteList API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusteraccesswhitelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterAccessWhiteListWithChan(request *ModifyDBClusterAccessWhiteListRequest) (<-chan *ModifyDBClusterAccessWhiteListResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBClusterAccessWhiteListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBClusterAccessWhiteList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBClusterAccessWhiteListWithCallback invokes the adb.ModifyDBClusterAccessWhiteList API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusteraccesswhitelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterAccessWhiteListWithCallback(request *ModifyDBClusterAccessWhiteListRequest, callback func(response *ModifyDBClusterAccessWhiteListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBClusterAccessWhiteListResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBClusterAccessWhiteList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBClusterAccessWhiteListRequest is the request struct for api ModifyDBClusterAccessWhiteList
+type ModifyDBClusterAccessWhiteListRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId           requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	SecurityIps               string           `position:"Query" name:"SecurityIps"`
+	DBClusterIPArrayAttribute string           `position:"Query" name:"DBClusterIPArrayAttribute"`
+	ModifyMode                string           `position:"Query" name:"ModifyMode"`
+	ResourceOwnerAccount      string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId               string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount              string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                   requests.Integer `position:"Query" name:"OwnerId"`
+	DBClusterIPArrayName      string           `position:"Query" name:"DBClusterIPArrayName"`
+}
+
+// ModifyDBClusterAccessWhiteListResponse is the response struct for api ModifyDBClusterAccessWhiteList
+type ModifyDBClusterAccessWhiteListResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBClusterAccessWhiteListRequest creates a request to invoke ModifyDBClusterAccessWhiteList API
+func CreateModifyDBClusterAccessWhiteListRequest() (request *ModifyDBClusterAccessWhiteListRequest) {
+	request = &ModifyDBClusterAccessWhiteListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ModifyDBClusterAccessWhiteList", "ads", "openAPI")
+	return
+}
+
+// CreateModifyDBClusterAccessWhiteListResponse creates a response to parse from ModifyDBClusterAccessWhiteList response
+func CreateModifyDBClusterAccessWhiteListResponse() (response *ModifyDBClusterAccessWhiteListResponse) {
+	response = &ModifyDBClusterAccessWhiteListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/adb/modify_db_cluster_description.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBClusterDescription invokes the adb.ModifyDBClusterDescription API synchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusterdescription.html
+func (client *Client) ModifyDBClusterDescription(request *ModifyDBClusterDescriptionRequest) (response *ModifyDBClusterDescriptionResponse, err error) {
+	response = CreateModifyDBClusterDescriptionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBClusterDescriptionWithChan invokes the adb.ModifyDBClusterDescription API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusterdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterDescriptionWithChan(request *ModifyDBClusterDescriptionRequest) (<-chan *ModifyDBClusterDescriptionResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBClusterDescriptionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBClusterDescription(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBClusterDescriptionWithCallback invokes the adb.ModifyDBClusterDescription API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclusterdescription.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterDescriptionWithCallback(request *ModifyDBClusterDescriptionRequest, callback func(response *ModifyDBClusterDescriptionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBClusterDescriptionResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBClusterDescription(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBClusterDescriptionRequest is the request struct for api ModifyDBClusterDescription
+type ModifyDBClusterDescriptionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	DBClusterDescription string           `position:"Query" name:"DBClusterDescription"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// ModifyDBClusterDescriptionResponse is the response struct for api ModifyDBClusterDescription
+type ModifyDBClusterDescriptionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBClusterDescriptionRequest creates a request to invoke ModifyDBClusterDescription API
+func CreateModifyDBClusterDescriptionRequest() (request *ModifyDBClusterDescriptionRequest) {
+	request = &ModifyDBClusterDescriptionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ModifyDBClusterDescription", "ads", "openAPI")
+	return
+}
+
+// CreateModifyDBClusterDescriptionResponse creates a response to parse from ModifyDBClusterDescription response
+func CreateModifyDBClusterDescriptionResponse() (response *ModifyDBClusterDescriptionResponse) {
+	response = &ModifyDBClusterDescriptionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/adb/modify_db_cluster_maintain_time.go

@@ -0,0 +1,108 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ModifyDBClusterMaintainTime invokes the adb.ModifyDBClusterMaintainTime API synchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclustermaintaintime.html
+func (client *Client) ModifyDBClusterMaintainTime(request *ModifyDBClusterMaintainTimeRequest) (response *ModifyDBClusterMaintainTimeResponse, err error) {
+	response = CreateModifyDBClusterMaintainTimeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDBClusterMaintainTimeWithChan invokes the adb.ModifyDBClusterMaintainTime API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclustermaintaintime.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterMaintainTimeWithChan(request *ModifyDBClusterMaintainTimeRequest) (<-chan *ModifyDBClusterMaintainTimeResponse, <-chan error) {
+	responseChan := make(chan *ModifyDBClusterMaintainTimeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDBClusterMaintainTime(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDBClusterMaintainTimeWithCallback invokes the adb.ModifyDBClusterMaintainTime API asynchronously
+// api document: https://help.aliyun.com/api/adb/modifydbclustermaintaintime.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDBClusterMaintainTimeWithCallback(request *ModifyDBClusterMaintainTimeRequest, callback func(response *ModifyDBClusterMaintainTimeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDBClusterMaintainTimeResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDBClusterMaintainTime(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDBClusterMaintainTimeRequest is the request struct for api ModifyDBClusterMaintainTime
+type ModifyDBClusterMaintainTimeRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	MaintainTime         string           `position:"Query" name:"MaintainTime"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// ModifyDBClusterMaintainTimeResponse is the response struct for api ModifyDBClusterMaintainTime
+type ModifyDBClusterMaintainTimeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDBClusterMaintainTimeRequest creates a request to invoke ModifyDBClusterMaintainTime API
+func CreateModifyDBClusterMaintainTimeRequest() (request *ModifyDBClusterMaintainTimeRequest) {
+	request = &ModifyDBClusterMaintainTimeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ModifyDBClusterMaintainTime", "ads", "openAPI")
+	return
+}
+
+// CreateModifyDBClusterMaintainTimeResponse creates a response to parse from ModifyDBClusterMaintainTime response
+func CreateModifyDBClusterMaintainTimeResponse() (response *ModifyDBClusterMaintainTimeResponse) {
+	response = &ModifyDBClusterMaintainTimeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/adb/release_cluster_public_connection.go

@@ -0,0 +1,107 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ReleaseClusterPublicConnection invokes the adb.ReleaseClusterPublicConnection API synchronously
+// api document: https://help.aliyun.com/api/adb/releaseclusterpublicconnection.html
+func (client *Client) ReleaseClusterPublicConnection(request *ReleaseClusterPublicConnectionRequest) (response *ReleaseClusterPublicConnectionResponse, err error) {
+	response = CreateReleaseClusterPublicConnectionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ReleaseClusterPublicConnectionWithChan invokes the adb.ReleaseClusterPublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/adb/releaseclusterpublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseClusterPublicConnectionWithChan(request *ReleaseClusterPublicConnectionRequest) (<-chan *ReleaseClusterPublicConnectionResponse, <-chan error) {
+	responseChan := make(chan *ReleaseClusterPublicConnectionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ReleaseClusterPublicConnection(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ReleaseClusterPublicConnectionWithCallback invokes the adb.ReleaseClusterPublicConnection API asynchronously
+// api document: https://help.aliyun.com/api/adb/releaseclusterpublicconnection.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ReleaseClusterPublicConnectionWithCallback(request *ReleaseClusterPublicConnectionRequest, callback func(response *ReleaseClusterPublicConnectionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ReleaseClusterPublicConnectionResponse
+		var err error
+		defer close(result)
+		response, err = client.ReleaseClusterPublicConnection(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ReleaseClusterPublicConnectionRequest is the request struct for api ReleaseClusterPublicConnection
+type ReleaseClusterPublicConnectionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// ReleaseClusterPublicConnectionResponse is the response struct for api ReleaseClusterPublicConnection
+type ReleaseClusterPublicConnectionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateReleaseClusterPublicConnectionRequest creates a request to invoke ReleaseClusterPublicConnection API
+func CreateReleaseClusterPublicConnectionRequest() (request *ReleaseClusterPublicConnectionRequest) {
+	request = &ReleaseClusterPublicConnectionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ReleaseClusterPublicConnection", "ads", "openAPI")
+	return
+}
+
+// CreateReleaseClusterPublicConnectionResponse creates a response to parse from ReleaseClusterPublicConnection response
+func CreateReleaseClusterPublicConnectionResponse() (response *ReleaseClusterPublicConnectionResponse) {
+	response = &ReleaseClusterPublicConnectionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/adb/reset_account_password.go

@@ -0,0 +1,109 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ResetAccountPassword invokes the adb.ResetAccountPassword API synchronously
+// api document: https://help.aliyun.com/api/adb/resetaccountpassword.html
+func (client *Client) ResetAccountPassword(request *ResetAccountPasswordRequest) (response *ResetAccountPasswordResponse, err error) {
+	response = CreateResetAccountPasswordResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ResetAccountPasswordWithChan invokes the adb.ResetAccountPassword API asynchronously
+// api document: https://help.aliyun.com/api/adb/resetaccountpassword.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResetAccountPasswordWithChan(request *ResetAccountPasswordRequest) (<-chan *ResetAccountPasswordResponse, <-chan error) {
+	responseChan := make(chan *ResetAccountPasswordResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ResetAccountPassword(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ResetAccountPasswordWithCallback invokes the adb.ResetAccountPassword API asynchronously
+// api document: https://help.aliyun.com/api/adb/resetaccountpassword.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ResetAccountPasswordWithCallback(request *ResetAccountPasswordRequest, callback func(response *ResetAccountPasswordResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ResetAccountPasswordResponse
+		var err error
+		defer close(result)
+		response, err = client.ResetAccountPassword(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ResetAccountPasswordRequest is the request struct for api ResetAccountPassword
+type ResetAccountPasswordRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AccountName          string           `position:"Query" name:"AccountName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	AccountPassword      string           `position:"Query" name:"AccountPassword"`
+}
+
+// ResetAccountPasswordResponse is the response struct for api ResetAccountPassword
+type ResetAccountPasswordResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateResetAccountPasswordRequest creates a request to invoke ResetAccountPassword API
+func CreateResetAccountPasswordRequest() (request *ResetAccountPasswordRequest) {
+	request = &ResetAccountPasswordRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "ResetAccountPassword", "ads", "openAPI")
+	return
+}
+
+// CreateResetAccountPasswordResponse creates a response to parse from ResetAccountPassword response
+func CreateResetAccountPasswordResponse() (response *ResetAccountPasswordResponse) {
+	response = &ResetAccountPasswordResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/adb/revoke_operator_permission.go

@@ -0,0 +1,107 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// RevokeOperatorPermission invokes the adb.RevokeOperatorPermission API synchronously
+// api document: https://help.aliyun.com/api/adb/revokeoperatorpermission.html
+func (client *Client) RevokeOperatorPermission(request *RevokeOperatorPermissionRequest) (response *RevokeOperatorPermissionResponse, err error) {
+	response = CreateRevokeOperatorPermissionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RevokeOperatorPermissionWithChan invokes the adb.RevokeOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/revokeoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RevokeOperatorPermissionWithChan(request *RevokeOperatorPermissionRequest) (<-chan *RevokeOperatorPermissionResponse, <-chan error) {
+	responseChan := make(chan *RevokeOperatorPermissionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RevokeOperatorPermission(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RevokeOperatorPermissionWithCallback invokes the adb.RevokeOperatorPermission API asynchronously
+// api document: https://help.aliyun.com/api/adb/revokeoperatorpermission.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RevokeOperatorPermissionWithCallback(request *RevokeOperatorPermissionRequest, callback func(response *RevokeOperatorPermissionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RevokeOperatorPermissionResponse
+		var err error
+		defer close(result)
+		response, err = client.RevokeOperatorPermission(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RevokeOperatorPermissionRequest is the request struct for api RevokeOperatorPermission
+type RevokeOperatorPermissionRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	DBClusterId          string           `position:"Query" name:"DBClusterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// RevokeOperatorPermissionResponse is the response struct for api RevokeOperatorPermission
+type RevokeOperatorPermissionResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateRevokeOperatorPermissionRequest creates a request to invoke RevokeOperatorPermission API
+func CreateRevokeOperatorPermissionRequest() (request *RevokeOperatorPermissionRequest) {
+	request = &RevokeOperatorPermissionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("adb", "2019-03-15", "RevokeOperatorPermission", "ads", "openAPI")
+	return
+}
+
+// CreateRevokeOperatorPermissionResponse creates a response to parse from RevokeOperatorPermission response
+func CreateRevokeOperatorPermissionResponse() (response *RevokeOperatorPermissionResponse) {
+	response = &RevokeOperatorPermissionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/adb/struct_account_list.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// AccountList is a nested struct in adb response
+type AccountList struct {
+	DBAccount []DBAccount `json:"DBAccount" xml:"DBAccount"`
+}

+ 26 - 0
services/adb/struct_address.go

@@ -0,0 +1,26 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Address is a nested struct in adb response
+type Address struct {
+	ConnectionString string `json:"ConnectionString" xml:"ConnectionString"`
+	IPAddress        string `json:"IPAddress" xml:"IPAddress"`
+	NetType          string `json:"NetType" xml:"NetType"`
+	Port             string `json:"Port" xml:"Port"`
+	VPCId            string `json:"VPCId" xml:"VPCId"`
+	VSwitchId        string `json:"VSwitchId" xml:"VSwitchId"`
+}

+ 26 - 0
services/adb/struct_auto_renew_attribute.go

@@ -0,0 +1,26 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// AutoRenewAttribute is a nested struct in adb response
+type AutoRenewAttribute struct {
+	DBClusterId      string `json:"DBClusterId" xml:"DBClusterId"`
+	RegionId         string `json:"RegionId" xml:"RegionId"`
+	AutoRenewEnabled bool   `json:"AutoRenewEnabled" xml:"AutoRenewEnabled"`
+	Duration         int    `json:"Duration" xml:"Duration"`
+	PeriodUnit       string `json:"PeriodUnit" xml:"PeriodUnit"`
+	RenewalStatus    string `json:"RenewalStatus" xml:"RenewalStatus"`
+}

+ 27 - 0
services/adb/struct_backup.go

@@ -0,0 +1,27 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Backup is a nested struct in adb response
+type Backup struct {
+	BackupId        string `json:"BackupId" xml:"BackupId"`
+	DBClusterId     string `json:"DBClusterId" xml:"DBClusterId"`
+	BackupStartTime string `json:"BackupStartTime" xml:"BackupStartTime"`
+	BackupEndTime   string `json:"BackupEndTime" xml:"BackupEndTime"`
+	BackupSize      int    `json:"BackupSize" xml:"BackupSize"`
+	BackupMethod    string `json:"BackupMethod" xml:"BackupMethod"`
+	BackupType      string `json:"BackupType" xml:"BackupType"`
+}

+ 24 - 0
services/adb/struct_db_account.go

@@ -0,0 +1,24 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBAccount is a nested struct in adb response
+type DBAccount struct {
+	AccountName        string `json:"AccountName" xml:"AccountName"`
+	AccountStatus      string `json:"AccountStatus" xml:"AccountStatus"`
+	AccountDescription string `json:"AccountDescription" xml:"AccountDescription"`
+	AccountType        string `json:"AccountType" xml:"AccountType"`
+}

+ 46 - 0
services/adb/struct_db_cluster.go

@@ -0,0 +1,46 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DBCluster is a nested struct in adb response
+type DBCluster struct {
+	Category             string                           `json:"Category" xml:"Category"`
+	LockReason           string                           `json:"LockReason" xml:"LockReason"`
+	DBNodeClass          string                           `json:"DBNodeClass" xml:"DBNodeClass"`
+	VPCCloudInstanceId   string                           `json:"VPCCloudInstanceId" xml:"VPCCloudInstanceId"`
+	Engine               string                           `json:"Engine" xml:"Engine"`
+	CreateTime           string                           `json:"CreateTime" xml:"CreateTime"`
+	DBClusterNetworkType string                           `json:"DBClusterNetworkType" xml:"DBClusterNetworkType"`
+	RegionId             string                           `json:"RegionId" xml:"RegionId"`
+	ExpireTime           string                           `json:"ExpireTime" xml:"ExpireTime"`
+	CommodityCode        string                           `json:"CommodityCode" xml:"CommodityCode"`
+	Expired              string                           `json:"Expired" xml:"Expired"`
+	DBVersion            string                           `json:"DBVersion" xml:"DBVersion"`
+	DBClusterType        string                           `json:"DBClusterType" xml:"DBClusterType"`
+	DBNodeStorage        int64                            `json:"DBNodeStorage" xml:"DBNodeStorage"`
+	MaintainTime         string                           `json:"MaintainTime" xml:"MaintainTime"`
+	VPCId                string                           `json:"VPCId" xml:"VPCId"`
+	PayType              string                           `json:"PayType" xml:"PayType"`
+	VSwitchId            string                           `json:"VSwitchId" xml:"VSwitchId"`
+	DBNodeCount          int64                            `json:"DBNodeCount" xml:"DBNodeCount"`
+	CreationTime         string                           `json:"CreationTime" xml:"CreationTime"`
+	DBClusterId          string                           `json:"DBClusterId" xml:"DBClusterId"`
+	DBClusterStatus      string                           `json:"DBClusterStatus" xml:"DBClusterStatus"`
+	ZoneId               string                           `json:"ZoneId" xml:"ZoneId"`
+	DBClusterDescription string                           `json:"DBClusterDescription" xml:"DBClusterDescription"`
+	LockMode             string                           `json:"LockMode" xml:"LockMode"`
+	Tags                 TagsInDescribeDBClusterAttribute `json:"Tags" xml:"Tags"`
+}

+ 23 - 0
services/adb/struct_ip_array.go

@@ -0,0 +1,23 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// IPArray is a nested struct in adb response
+type IPArray struct {
+	DBClusterIPArrayName      string `json:"DBClusterIPArrayName" xml:"DBClusterIPArrayName"`
+	SecurityIPList            string `json:"SecurityIPList" xml:"SecurityIPList"`
+	DBClusterIPArrayAttribute string `json:"DBClusterIPArrayAttribute" xml:"DBClusterIPArrayAttribute"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_auto_renew_attribute.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeAutoRenewAttribute is a nested struct in adb response
+type ItemsInDescribeAutoRenewAttribute struct {
+	AutoRenewAttribute []AutoRenewAttribute `json:"AutoRenewAttribute" xml:"AutoRenewAttribute"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_backups.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeBackups is a nested struct in adb response
+type ItemsInDescribeBackups struct {
+	Backup []Backup `json:"Backup" xml:"Backup"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_db_cluster_access_white_list.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBClusterAccessWhiteList is a nested struct in adb response
+type ItemsInDescribeDBClusterAccessWhiteList struct {
+	IPArray []IPArray `json:"IPArray" xml:"IPArray"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_db_cluster_attribute.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBClusterAttribute is a nested struct in adb response
+type ItemsInDescribeDBClusterAttribute struct {
+	DBCluster []DBCluster `json:"DBCluster" xml:"DBCluster"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_db_cluster_net_info.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBClusterNetInfo is a nested struct in adb response
+type ItemsInDescribeDBClusterNetInfo struct {
+	Address []Address `json:"Address" xml:"Address"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_db_clusters.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeDBClusters is a nested struct in adb response
+type ItemsInDescribeDBClusters struct {
+	DBCluster []DBCluster `json:"DBCluster" xml:"DBCluster"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_slow_log_records.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeSlowLogRecords is a nested struct in adb response
+type ItemsInDescribeSlowLogRecords struct {
+	SlowLogRecord []SlowLogRecord `json:"SlowLogRecord" xml:"SlowLogRecord"`
+}

+ 21 - 0
services/adb/struct_items_in_describe_slow_log_trend.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ItemsInDescribeSlowLogTrend is a nested struct in adb response
+type ItemsInDescribeSlowLogTrend struct {
+	SlowLogTrendItem []SlowLogTrendItem `json:"SlowLogTrendItem" xml:"SlowLogTrendItem"`
+}

+ 23 - 0
services/adb/struct_performance_item.go

@@ -0,0 +1,23 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// PerformanceItem is a nested struct in adb response
+type PerformanceItem struct {
+	Key    string       `json:"Key" xml:"Key"`
+	Unit   string       `json:"Unit" xml:"Unit"`
+	Series []SeriesItem `json:"Series" xml:"Series"`
+}

+ 21 - 0
services/adb/struct_performances.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Performances is a nested struct in adb response
+type Performances struct {
+	PerformanceItem []PerformanceItem `json:"PerformanceItem" xml:"PerformanceItem"`
+}

+ 22 - 0
services/adb/struct_region.go

@@ -0,0 +1,22 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Region is a nested struct in adb response
+type Region struct {
+	RegionId string `json:"RegionId" xml:"RegionId"`
+	Zones    Zones  `json:"Zones" xml:"Zones"`
+}

+ 21 - 0
services/adb/struct_regions.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Regions is a nested struct in adb response
+type Regions struct {
+	Region []Region `json:"Region" xml:"Region"`
+}

+ 21 - 0
services/adb/struct_series_in_describe_db_cluster_performance.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SeriesInDescribeDBClusterPerformance is a nested struct in adb response
+type SeriesInDescribeDBClusterPerformance struct {
+	SeriesItem []SeriesItem `json:"SeriesItem" xml:"SeriesItem"`
+}

+ 21 - 0
services/adb/struct_series_in_describe_slow_log_trend.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SeriesInDescribeSlowLogTrend is a nested struct in adb response
+type SeriesInDescribeSlowLogTrend struct {
+	SeriesItem []SeriesItemInDescribeSlowLogTrend `json:"SeriesItem" xml:"SeriesItem"`
+}

+ 22 - 0
services/adb/struct_series_item.go

@@ -0,0 +1,22 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SeriesItem is a nested struct in adb response
+type SeriesItem struct {
+	Name   string   `json:"Name" xml:"Name"`
+	Values []string `json:"Values" xml:"Values"`
+}

+ 22 - 0
services/adb/struct_series_item_in_describe_slow_log_trend.go

@@ -0,0 +1,22 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SeriesItemInDescribeSlowLogTrend is a nested struct in adb response
+type SeriesItemInDescribeSlowLogTrend struct {
+	Name   string `json:"Name" xml:"Name"`
+	Values string `json:"Values" xml:"Values"`
+}

+ 29 - 0
services/adb/struct_slow_log_record.go

@@ -0,0 +1,29 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SlowLogRecord is a nested struct in adb response
+type SlowLogRecord struct {
+	HostAddress        string `json:"HostAddress" xml:"HostAddress"`
+	DBName             string `json:"DBName" xml:"DBName"`
+	SQLText            string `json:"SQLText" xml:"SQLText"`
+	QueryTime          int64  `json:"QueryTime" xml:"QueryTime"`
+	ReturnRowCounts    int64  `json:"ReturnRowCounts" xml:"ReturnRowCounts"`
+	ExecutionStartTime string `json:"ExecutionStartTime" xml:"ExecutionStartTime"`
+	ParseRowCounts     int64  `json:"ParseRowCounts" xml:"ParseRowCounts"`
+	ProcessID          string `json:"ProcessID" xml:"ProcessID"`
+	UserName           string `json:"UserName" xml:"UserName"`
+}

+ 23 - 0
services/adb/struct_slow_log_trend_item.go

@@ -0,0 +1,23 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// SlowLogTrendItem is a nested struct in adb response
+type SlowLogTrendItem struct {
+	Key    string                       `json:"Key" xml:"Key"`
+	Unit   string                       `json:"Unit" xml:"Unit"`
+	Series SeriesInDescribeSlowLogTrend `json:"Series" xml:"Series"`
+}

+ 22 - 0
services/adb/struct_tag.go

@@ -0,0 +1,22 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Tag is a nested struct in adb response
+type Tag struct {
+	Key   string `json:"Key" xml:"Key"`
+	Value string `json:"Value" xml:"Value"`
+}

+ 21 - 0
services/adb/struct_tags_in_describe_db_cluster_attribute.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagsInDescribeDBClusterAttribute is a nested struct in adb response
+type TagsInDescribeDBClusterAttribute struct {
+	Tag []Tag `json:"Tag" xml:"Tag"`
+}

+ 21 - 0
services/adb/struct_tags_in_describe_db_clusters.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// TagsInDescribeDBClusters is a nested struct in adb response
+type TagsInDescribeDBClusters struct {
+	Tag []Tag `json:"Tag" xml:"Tag"`
+}

+ 21 - 0
services/adb/struct_values.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Values is a nested struct in adb response
+type Values struct {
+	Values []string `json:"Values" xml:"Values"`
+}

+ 22 - 0
services/adb/struct_zone.go

@@ -0,0 +1,22 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Zone is a nested struct in adb response
+type Zone struct {
+	ZoneId     string `json:"ZoneId" xml:"ZoneId"`
+	VpcEnabled bool   `json:"VpcEnabled" xml:"VpcEnabled"`
+}

+ 21 - 0
services/adb/struct_zones.go

@@ -0,0 +1,21 @@
+package adb
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Zones is a nested struct in adb response
+type Zones struct {
+	Zone []Zone `json:"Zone" xml:"Zone"`
+}