浏览代码

由逸雄发起的DCDN SDK自动发布, 版本号:1.10.2

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 7 年之前
父节点
当前提交
672864e6a5
共有 67 个文件被更改,包括 3974 次插入0 次删除
  1. 4 0
      ChangeLog.txt
  2. 111 0
      services/dcdn/add_dcdn_domain.go
  3. 107 0
      services/dcdn/batch_delete_dcdn_domain_configs.go
  4. 81 0
      services/dcdn/client.go
  5. 107 0
      services/dcdn/delete_dcdn_domain.go
  6. 109 0
      services/dcdn/describe_dcdn_certificate_detail.go
  7. 106 0
      services/dcdn/describe_dcdn_certificate_list.go
  8. 107 0
      services/dcdn/describe_dcdn_domain_bps_data.go
  9. 103 0
      services/dcdn/describe_dcdn_domain_cname.go
  10. 107 0
      services/dcdn/describe_dcdn_domain_configs.go
  11. 106 0
      services/dcdn/describe_dcdn_domain_detail.go
  12. 107 0
      services/dcdn/describe_dcdn_domain_hit_rate_data.go
  13. 107 0
      services/dcdn/describe_dcdn_domain_http_code_data.go
  14. 104 0
      services/dcdn/describe_dcdn_domain_log.go
  15. 107 0
      services/dcdn/describe_dcdn_domain_origin_bps_data.go
  16. 107 0
      services/dcdn/describe_dcdn_domain_origin_traffic_data.go
  17. 107 0
      services/dcdn/describe_dcdn_domain_qps_data.go
  18. 107 0
      services/dcdn/describe_dcdn_domain_traffic_data.go
  19. 112 0
      services/dcdn/describe_dcdn_refresh_quota.go
  20. 118 0
      services/dcdn/describe_dcdn_refresh_tasks.go
  21. 110 0
      services/dcdn/describe_dcdn_service.go
  22. 118 0
      services/dcdn/describe_dcdn_user_domains.go
  23. 105 0
      services/dcdn/describe_dcdn_user_resource_package.go
  24. 108 0
      services/dcdn/describe_user_dcdn_status.go
  25. 106 0
      services/dcdn/preload_dcdn_object_caches.go
  26. 107 0
      services/dcdn/refresh_dcdn_object_caches.go
  27. 111 0
      services/dcdn/set_dcdn_domain_certificate.go
  28. 105 0
      services/dcdn/start_dcdn_domain.go
  29. 105 0
      services/dcdn/stop_dcdn_domain.go
  30. 21 0
      services/dcdn/struct_bps_data_per_interval.go
  31. 26 0
      services/dcdn/struct_cert.go
  32. 21 0
      services/dcdn/struct_cert_list.go
  33. 22 0
      services/dcdn/struct_certificate_list_model.go
  34. 21 0
      services/dcdn/struct_cname_datas.go
  35. 23 0
      services/dcdn/struct_data.go
  36. 54 0
      services/dcdn/struct_data_module.go
  37. 21 0
      services/dcdn/struct_data_per_interval.go
  38. 24 0
      services/dcdn/struct_domain_config.go
  39. 21 0
      services/dcdn/struct_domain_configs.go
  40. 32 0
      services/dcdn/struct_domain_detail.go
  41. 23 0
      services/dcdn/struct_domain_log_detail.go
  42. 21 0
      services/dcdn/struct_domain_log_details.go
  43. 21 0
      services/dcdn/struct_domains.go
  44. 22 0
      services/dcdn/struct_function_arg.go
  45. 21 0
      services/dcdn/struct_function_args.go
  46. 21 0
      services/dcdn/struct_hit_rate_per_interval.go
  47. 23 0
      services/dcdn/struct_http_code_data_module.go
  48. 21 0
      services/dcdn/struct_http_code_data_per_interval.go
  49. 21 0
      services/dcdn/struct_lock_reason.go
  50. 25 0
      services/dcdn/struct_log_info_detail.go
  51. 21 0
      services/dcdn/struct_log_infos.go
  52. 21 0
      services/dcdn/struct_operation_locks.go
  53. 21 0
      services/dcdn/struct_origin_bps_data_per_interval.go
  54. 21 0
      services/dcdn/struct_origin_traffic_data_per_interval.go
  55. 30 0
      services/dcdn/struct_page_data.go
  56. 23 0
      services/dcdn/struct_page_info_detail.go
  57. 21 0
      services/dcdn/struct_page_infos.go
  58. 21 0
      services/dcdn/struct_qps_data_per_interval.go
  59. 26 0
      services/dcdn/struct_resource_package_info.go
  60. 21 0
      services/dcdn/struct_resource_package_infos.go
  61. 25 0
      services/dcdn/struct_source.go
  62. 21 0
      services/dcdn/struct_sources_in_describe_dcdn_domain_detail.go
  63. 21 0
      services/dcdn/struct_sources_in_describe_dcdn_user_domains.go
  64. 27 0
      services/dcdn/struct_task.go
  65. 21 0
      services/dcdn/struct_tasks.go
  66. 21 0
      services/dcdn/struct_traffic_data_per_interval.go
  67. 108 0
      services/dcdn/update_dcdn_domain.go

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2018-04-28 Version: 1.10.2
+1, Add dcdn domain interface,Support add、modify、delete、query dcdn domain.
+2, Add dcdn config interface,Support set、delete、query domain config.
+
 2018-04-27 Version: 1.10.1
 1, release hsm open api
 2, hsm open api includes DescribeRegions, DescribeInstances, ModityInstance, ConfigNetwork, ConfigWhiteList

+ 111 - 0
services/dcdn/add_dcdn_domain.go

@@ -0,0 +1,111 @@
+package dcdn
+
+//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"
+)
+
+// AddDcdnDomain invokes the dcdn.AddDcdnDomain API synchronously
+// api document: https://help.aliyun.com/api/dcdn/adddcdndomain.html
+func (client *Client) AddDcdnDomain(request *AddDcdnDomainRequest) (response *AddDcdnDomainResponse, err error) {
+	response = CreateAddDcdnDomainResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddDcdnDomainWithChan invokes the dcdn.AddDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/adddcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddDcdnDomainWithChan(request *AddDcdnDomainRequest) (<-chan *AddDcdnDomainResponse, <-chan error) {
+	responseChan := make(chan *AddDcdnDomainResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddDcdnDomain(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddDcdnDomainWithCallback invokes the dcdn.AddDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/adddcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddDcdnDomainWithCallback(request *AddDcdnDomainRequest, callback func(response *AddDcdnDomainResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddDcdnDomainResponse
+		var err error
+		defer close(result)
+		response, err = client.AddDcdnDomain(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddDcdnDomainRequest is the request struct for api AddDcdnDomain
+type AddDcdnDomainRequest struct {
+	*requests.RpcRequest
+	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
+	DomainName      string           `position:"Query" name:"DomainName"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+	Sources         string           `position:"Query" name:"Sources"`
+	CheckUrl        string           `position:"Query" name:"CheckUrl"`
+	Scope           string           `position:"Query" name:"Scope"`
+	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
+}
+
+// AddDcdnDomainResponse is the response struct for api AddDcdnDomain
+type AddDcdnDomainResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateAddDcdnDomainRequest creates a request to invoke AddDcdnDomain API
+func CreateAddDcdnDomainRequest() (request *AddDcdnDomainRequest) {
+	request = &AddDcdnDomainRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "AddDcdnDomain", "dcdn", "openAPI")
+	return
+}
+
+// CreateAddDcdnDomainResponse creates a response to parse from AddDcdnDomain response
+func CreateAddDcdnDomainResponse() (response *AddDcdnDomainResponse) {
+	response = &AddDcdnDomainResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/batch_delete_dcdn_domain_configs.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// BatchDeleteDcdnDomainConfigs invokes the dcdn.BatchDeleteDcdnDomainConfigs API synchronously
+// api document: https://help.aliyun.com/api/dcdn/batchdeletedcdndomainconfigs.html
+func (client *Client) BatchDeleteDcdnDomainConfigs(request *BatchDeleteDcdnDomainConfigsRequest) (response *BatchDeleteDcdnDomainConfigsResponse, err error) {
+	response = CreateBatchDeleteDcdnDomainConfigsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// BatchDeleteDcdnDomainConfigsWithChan invokes the dcdn.BatchDeleteDcdnDomainConfigs API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/batchdeletedcdndomainconfigs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchDeleteDcdnDomainConfigsWithChan(request *BatchDeleteDcdnDomainConfigsRequest) (<-chan *BatchDeleteDcdnDomainConfigsResponse, <-chan error) {
+	responseChan := make(chan *BatchDeleteDcdnDomainConfigsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.BatchDeleteDcdnDomainConfigs(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// BatchDeleteDcdnDomainConfigsWithCallback invokes the dcdn.BatchDeleteDcdnDomainConfigs API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/batchdeletedcdndomainconfigs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchDeleteDcdnDomainConfigsWithCallback(request *BatchDeleteDcdnDomainConfigsRequest, callback func(response *BatchDeleteDcdnDomainConfigsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *BatchDeleteDcdnDomainConfigsResponse
+		var err error
+		defer close(result)
+		response, err = client.BatchDeleteDcdnDomainConfigs(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// BatchDeleteDcdnDomainConfigsRequest is the request struct for api BatchDeleteDcdnDomainConfigs
+type BatchDeleteDcdnDomainConfigsRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	OwnerAccount  string           `position:"Query" name:"OwnerAccount"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainNames   string           `position:"Query" name:"DomainNames"`
+	FunctionNames string           `position:"Query" name:"FunctionNames"`
+}
+
+// BatchDeleteDcdnDomainConfigsResponse is the response struct for api BatchDeleteDcdnDomainConfigs
+type BatchDeleteDcdnDomainConfigsResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateBatchDeleteDcdnDomainConfigsRequest creates a request to invoke BatchDeleteDcdnDomainConfigs API
+func CreateBatchDeleteDcdnDomainConfigsRequest() (request *BatchDeleteDcdnDomainConfigsRequest) {
+	request = &BatchDeleteDcdnDomainConfigsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "BatchDeleteDcdnDomainConfigs", "dcdn", "openAPI")
+	return
+}
+
+// CreateBatchDeleteDcdnDomainConfigsResponse creates a response to parse from BatchDeleteDcdnDomainConfigs response
+func CreateBatchDeleteDcdnDomainConfigsResponse() (response *BatchDeleteDcdnDomainConfigsResponse) {
+	response = &BatchDeleteDcdnDomainConfigsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 81 - 0
services/dcdn/client.go

@@ -0,0 +1,81 @@
+package dcdn
+
+//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"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	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)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://help.aliyun.com/document_detail/66217.html
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://help.aliyun.com/document_detail/66222.html
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://help.aliyun.com/document_detail/66223.html
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// attention: rsa key pair auth is only Japan regions available
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	return
+}

+ 107 - 0
services/dcdn/delete_dcdn_domain.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DeleteDcdnDomain invokes the dcdn.DeleteDcdnDomain API synchronously
+// api document: https://help.aliyun.com/api/dcdn/deletedcdndomain.html
+func (client *Client) DeleteDcdnDomain(request *DeleteDcdnDomainRequest) (response *DeleteDcdnDomainResponse, err error) {
+	response = CreateDeleteDcdnDomainResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteDcdnDomainWithChan invokes the dcdn.DeleteDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/deletedcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDcdnDomainWithChan(request *DeleteDcdnDomainRequest) (<-chan *DeleteDcdnDomainResponse, <-chan error) {
+	responseChan := make(chan *DeleteDcdnDomainResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteDcdnDomain(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteDcdnDomainWithCallback invokes the dcdn.DeleteDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/deletedcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDcdnDomainWithCallback(request *DeleteDcdnDomainRequest, callback func(response *DeleteDcdnDomainResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteDcdnDomainResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteDcdnDomain(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteDcdnDomainRequest is the request struct for api DeleteDcdnDomain
+type DeleteDcdnDomainRequest struct {
+	*requests.RpcRequest
+	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
+	DomainName      string           `position:"Query" name:"DomainName"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+}
+
+// DeleteDcdnDomainResponse is the response struct for api DeleteDcdnDomain
+type DeleteDcdnDomainResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteDcdnDomainRequest creates a request to invoke DeleteDcdnDomain API
+func CreateDeleteDcdnDomainRequest() (request *DeleteDcdnDomainRequest) {
+	request = &DeleteDcdnDomainRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DeleteDcdnDomain", "dcdn", "openAPI")
+	return
+}
+
+// CreateDeleteDcdnDomainResponse creates a response to parse from DeleteDcdnDomain response
+func CreateDeleteDcdnDomainResponse() (response *DeleteDcdnDomainResponse) {
+	response = &DeleteDcdnDomainResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/dcdn/describe_dcdn_certificate_detail.go

@@ -0,0 +1,109 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnCertificateDetail invokes the dcdn.DescribeDcdnCertificateDetail API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatedetail.html
+func (client *Client) DescribeDcdnCertificateDetail(request *DescribeDcdnCertificateDetailRequest) (response *DescribeDcdnCertificateDetailResponse, err error) {
+	response = CreateDescribeDcdnCertificateDetailResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnCertificateDetailWithChan invokes the dcdn.DescribeDcdnCertificateDetail API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatedetail.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnCertificateDetailWithChan(request *DescribeDcdnCertificateDetailRequest) (<-chan *DescribeDcdnCertificateDetailResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnCertificateDetailResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnCertificateDetail(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnCertificateDetailWithCallback invokes the dcdn.DescribeDcdnCertificateDetail API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatedetail.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnCertificateDetailWithCallback(request *DescribeDcdnCertificateDetailRequest, callback func(response *DescribeDcdnCertificateDetailResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnCertificateDetailResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnCertificateDetail(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnCertificateDetailRequest is the request struct for api DescribeDcdnCertificateDetail
+type DescribeDcdnCertificateDetailRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	CertName      string           `position:"Query" name:"CertName"`
+}
+
+// DescribeDcdnCertificateDetailResponse is the response struct for api DescribeDcdnCertificateDetail
+type DescribeDcdnCertificateDetailResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Cert      string `json:"Cert" xml:"Cert"`
+	Key       string `json:"Key" xml:"Key"`
+	CertId    int    `json:"CertId" xml:"CertId"`
+	CertName  string `json:"CertName" xml:"CertName"`
+}
+
+// CreateDescribeDcdnCertificateDetailRequest creates a request to invoke DescribeDcdnCertificateDetail API
+func CreateDescribeDcdnCertificateDetailRequest() (request *DescribeDcdnCertificateDetailRequest) {
+	request = &DescribeDcdnCertificateDetailRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnCertificateDetail", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnCertificateDetailResponse creates a response to parse from DescribeDcdnCertificateDetail response
+func CreateDescribeDcdnCertificateDetailResponse() (response *DescribeDcdnCertificateDetailResponse) {
+	response = &DescribeDcdnCertificateDetailResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/dcdn/describe_dcdn_certificate_list.go

@@ -0,0 +1,106 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnCertificateList invokes the dcdn.DescribeDcdnCertificateList API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatelist.html
+func (client *Client) DescribeDcdnCertificateList(request *DescribeDcdnCertificateListRequest) (response *DescribeDcdnCertificateListResponse, err error) {
+	response = CreateDescribeDcdnCertificateListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnCertificateListWithChan invokes the dcdn.DescribeDcdnCertificateList API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnCertificateListWithChan(request *DescribeDcdnCertificateListRequest) (<-chan *DescribeDcdnCertificateListResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnCertificateListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnCertificateList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnCertificateListWithCallback invokes the dcdn.DescribeDcdnCertificateList API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdncertificatelist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnCertificateListWithCallback(request *DescribeDcdnCertificateListRequest, callback func(response *DescribeDcdnCertificateListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnCertificateListResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnCertificateList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnCertificateListRequest is the request struct for api DescribeDcdnCertificateList
+type DescribeDcdnCertificateListRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+}
+
+// DescribeDcdnCertificateListResponse is the response struct for api DescribeDcdnCertificateList
+type DescribeDcdnCertificateListResponse struct {
+	*responses.BaseResponse
+	RequestId            string               `json:"RequestId" xml:"RequestId"`
+	CertificateListModel CertificateListModel `json:"CertificateListModel" xml:"CertificateListModel"`
+}
+
+// CreateDescribeDcdnCertificateListRequest creates a request to invoke DescribeDcdnCertificateList API
+func CreateDescribeDcdnCertificateListRequest() (request *DescribeDcdnCertificateListRequest) {
+	request = &DescribeDcdnCertificateListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnCertificateList", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnCertificateListResponse creates a response to parse from DescribeDcdnCertificateList response
+func CreateDescribeDcdnCertificateListResponse() (response *DescribeDcdnCertificateListResponse) {
+	response = &DescribeDcdnCertificateListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_bps_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainBpsData invokes the dcdn.DescribeDcdnDomainBpsData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainbpsdata.html
+func (client *Client) DescribeDcdnDomainBpsData(request *DescribeDcdnDomainBpsDataRequest) (response *DescribeDcdnDomainBpsDataResponse, err error) {
+	response = CreateDescribeDcdnDomainBpsDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainBpsDataWithChan invokes the dcdn.DescribeDcdnDomainBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainbpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainBpsDataWithChan(request *DescribeDcdnDomainBpsDataRequest) (<-chan *DescribeDcdnDomainBpsDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainBpsDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainBpsData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainBpsDataWithCallback invokes the dcdn.DescribeDcdnDomainBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainbpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainBpsDataWithCallback(request *DescribeDcdnDomainBpsDataRequest, callback func(response *DescribeDcdnDomainBpsDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainBpsDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainBpsData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainBpsDataRequest is the request struct for api DescribeDcdnDomainBpsData
+type DescribeDcdnDomainBpsDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainBpsDataResponse is the response struct for api DescribeDcdnDomainBpsData
+type DescribeDcdnDomainBpsDataResponse struct {
+	*responses.BaseResponse
+	RequestId          string             `json:"RequestId" xml:"RequestId"`
+	DomainName         string             `json:"DomainName" xml:"DomainName"`
+	StartTime          string             `json:"StartTime" xml:"StartTime"`
+	EndTime            string             `json:"EndTime" xml:"EndTime"`
+	DataInterval       string             `json:"DataInterval" xml:"DataInterval"`
+	BpsDataPerInterval BpsDataPerInterval `json:"BpsDataPerInterval" xml:"BpsDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainBpsDataRequest creates a request to invoke DescribeDcdnDomainBpsData API
+func CreateDescribeDcdnDomainBpsDataRequest() (request *DescribeDcdnDomainBpsDataRequest) {
+	request = &DescribeDcdnDomainBpsDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainBpsData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainBpsDataResponse creates a response to parse from DescribeDcdnDomainBpsData response
+func CreateDescribeDcdnDomainBpsDataResponse() (response *DescribeDcdnDomainBpsDataResponse) {
+	response = &DescribeDcdnDomainBpsDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/dcdn/describe_dcdn_domain_cname.go

@@ -0,0 +1,103 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainCname invokes the dcdn.DescribeDcdnDomainCname API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaincname.html
+func (client *Client) DescribeDcdnDomainCname(request *DescribeDcdnDomainCnameRequest) (response *DescribeDcdnDomainCnameResponse, err error) {
+	response = CreateDescribeDcdnDomainCnameResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainCnameWithChan invokes the dcdn.DescribeDcdnDomainCname API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaincname.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainCnameWithChan(request *DescribeDcdnDomainCnameRequest) (<-chan *DescribeDcdnDomainCnameResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainCnameResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainCname(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainCnameWithCallback invokes the dcdn.DescribeDcdnDomainCname API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaincname.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainCnameWithCallback(request *DescribeDcdnDomainCnameRequest, callback func(response *DescribeDcdnDomainCnameResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainCnameResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainCname(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainCnameRequest is the request struct for api DescribeDcdnDomainCname
+type DescribeDcdnDomainCnameRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainCnameResponse is the response struct for api DescribeDcdnDomainCname
+type DescribeDcdnDomainCnameResponse struct {
+	*responses.BaseResponse
+	RequestId  string     `json:"RequestId" xml:"RequestId"`
+	CnameDatas CnameDatas `json:"CnameDatas" xml:"CnameDatas"`
+}
+
+// CreateDescribeDcdnDomainCnameRequest creates a request to invoke DescribeDcdnDomainCname API
+func CreateDescribeDcdnDomainCnameRequest() (request *DescribeDcdnDomainCnameRequest) {
+	request = &DescribeDcdnDomainCnameRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainCname", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainCnameResponse creates a response to parse from DescribeDcdnDomainCname response
+func CreateDescribeDcdnDomainCnameResponse() (response *DescribeDcdnDomainCnameResponse) {
+	response = &DescribeDcdnDomainCnameResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_configs.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainConfigs invokes the dcdn.DescribeDcdnDomainConfigs API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainconfigs.html
+func (client *Client) DescribeDcdnDomainConfigs(request *DescribeDcdnDomainConfigsRequest) (response *DescribeDcdnDomainConfigsResponse, err error) {
+	response = CreateDescribeDcdnDomainConfigsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainConfigsWithChan invokes the dcdn.DescribeDcdnDomainConfigs API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainconfigs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainConfigsWithChan(request *DescribeDcdnDomainConfigsRequest) (<-chan *DescribeDcdnDomainConfigsResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainConfigsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainConfigs(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainConfigsWithCallback invokes the dcdn.DescribeDcdnDomainConfigs API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainconfigs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainConfigsWithCallback(request *DescribeDcdnDomainConfigsRequest, callback func(response *DescribeDcdnDomainConfigsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainConfigsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainConfigs(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainConfigsRequest is the request struct for api DescribeDcdnDomainConfigs
+type DescribeDcdnDomainConfigsRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+	FunctionNames string           `position:"Query" name:"FunctionNames"`
+}
+
+// DescribeDcdnDomainConfigsResponse is the response struct for api DescribeDcdnDomainConfigs
+type DescribeDcdnDomainConfigsResponse struct {
+	*responses.BaseResponse
+	RequestId     string        `json:"RequestId" xml:"RequestId"`
+	DomainConfigs DomainConfigs `json:"DomainConfigs" xml:"DomainConfigs"`
+}
+
+// CreateDescribeDcdnDomainConfigsRequest creates a request to invoke DescribeDcdnDomainConfigs API
+func CreateDescribeDcdnDomainConfigsRequest() (request *DescribeDcdnDomainConfigsRequest) {
+	request = &DescribeDcdnDomainConfigsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainConfigs", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainConfigsResponse creates a response to parse from DescribeDcdnDomainConfigs response
+func CreateDescribeDcdnDomainConfigsResponse() (response *DescribeDcdnDomainConfigsResponse) {
+	response = &DescribeDcdnDomainConfigsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/dcdn/describe_dcdn_domain_detail.go

@@ -0,0 +1,106 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainDetail invokes the dcdn.DescribeDcdnDomainDetail API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaindetail.html
+func (client *Client) DescribeDcdnDomainDetail(request *DescribeDcdnDomainDetailRequest) (response *DescribeDcdnDomainDetailResponse, err error) {
+	response = CreateDescribeDcdnDomainDetailResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainDetailWithChan invokes the dcdn.DescribeDcdnDomainDetail API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaindetail.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainDetailWithChan(request *DescribeDcdnDomainDetailRequest) (<-chan *DescribeDcdnDomainDetailResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainDetailResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainDetail(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainDetailWithCallback invokes the dcdn.DescribeDcdnDomainDetail API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaindetail.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainDetailWithCallback(request *DescribeDcdnDomainDetailRequest, callback func(response *DescribeDcdnDomainDetailResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainDetailResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainDetail(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainDetailRequest is the request struct for api DescribeDcdnDomainDetail
+type DescribeDcdnDomainDetailRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+}
+
+// DescribeDcdnDomainDetailResponse is the response struct for api DescribeDcdnDomainDetail
+type DescribeDcdnDomainDetailResponse struct {
+	*responses.BaseResponse
+	RequestId    string       `json:"RequestId" xml:"RequestId"`
+	DomainDetail DomainDetail `json:"DomainDetail" xml:"DomainDetail"`
+}
+
+// CreateDescribeDcdnDomainDetailRequest creates a request to invoke DescribeDcdnDomainDetail API
+func CreateDescribeDcdnDomainDetailRequest() (request *DescribeDcdnDomainDetailRequest) {
+	request = &DescribeDcdnDomainDetailRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainDetail", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainDetailResponse creates a response to parse from DescribeDcdnDomainDetail response
+func CreateDescribeDcdnDomainDetailResponse() (response *DescribeDcdnDomainDetailResponse) {
+	response = &DescribeDcdnDomainDetailResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_hit_rate_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainHitRateData invokes the dcdn.DescribeDcdnDomainHitRateData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhitratedata.html
+func (client *Client) DescribeDcdnDomainHitRateData(request *DescribeDcdnDomainHitRateDataRequest) (response *DescribeDcdnDomainHitRateDataResponse, err error) {
+	response = CreateDescribeDcdnDomainHitRateDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainHitRateDataWithChan invokes the dcdn.DescribeDcdnDomainHitRateData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhitratedata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainHitRateDataWithChan(request *DescribeDcdnDomainHitRateDataRequest) (<-chan *DescribeDcdnDomainHitRateDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainHitRateDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainHitRateData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainHitRateDataWithCallback invokes the dcdn.DescribeDcdnDomainHitRateData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhitratedata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainHitRateDataWithCallback(request *DescribeDcdnDomainHitRateDataRequest, callback func(response *DescribeDcdnDomainHitRateDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainHitRateDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainHitRateData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainHitRateDataRequest is the request struct for api DescribeDcdnDomainHitRateData
+type DescribeDcdnDomainHitRateDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainHitRateDataResponse is the response struct for api DescribeDcdnDomainHitRateData
+type DescribeDcdnDomainHitRateDataResponse struct {
+	*responses.BaseResponse
+	RequestId          string             `json:"RequestId" xml:"RequestId"`
+	DomainName         string             `json:"DomainName" xml:"DomainName"`
+	StartTime          string             `json:"StartTime" xml:"StartTime"`
+	EndTime            string             `json:"EndTime" xml:"EndTime"`
+	DataInterval       string             `json:"DataInterval" xml:"DataInterval"`
+	HitRatePerInterval HitRatePerInterval `json:"HitRatePerInterval" xml:"HitRatePerInterval"`
+}
+
+// CreateDescribeDcdnDomainHitRateDataRequest creates a request to invoke DescribeDcdnDomainHitRateData API
+func CreateDescribeDcdnDomainHitRateDataRequest() (request *DescribeDcdnDomainHitRateDataRequest) {
+	request = &DescribeDcdnDomainHitRateDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainHitRateData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainHitRateDataResponse creates a response to parse from DescribeDcdnDomainHitRateData response
+func CreateDescribeDcdnDomainHitRateDataResponse() (response *DescribeDcdnDomainHitRateDataResponse) {
+	response = &DescribeDcdnDomainHitRateDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_http_code_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainHttpCodeData invokes the dcdn.DescribeDcdnDomainHttpCodeData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhttpcodedata.html
+func (client *Client) DescribeDcdnDomainHttpCodeData(request *DescribeDcdnDomainHttpCodeDataRequest) (response *DescribeDcdnDomainHttpCodeDataResponse, err error) {
+	response = CreateDescribeDcdnDomainHttpCodeDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainHttpCodeDataWithChan invokes the dcdn.DescribeDcdnDomainHttpCodeData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhttpcodedata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainHttpCodeDataWithChan(request *DescribeDcdnDomainHttpCodeDataRequest) (<-chan *DescribeDcdnDomainHttpCodeDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainHttpCodeDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainHttpCodeData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainHttpCodeDataWithCallback invokes the dcdn.DescribeDcdnDomainHttpCodeData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainhttpcodedata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainHttpCodeDataWithCallback(request *DescribeDcdnDomainHttpCodeDataRequest, callback func(response *DescribeDcdnDomainHttpCodeDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainHttpCodeDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainHttpCodeData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainHttpCodeDataRequest is the request struct for api DescribeDcdnDomainHttpCodeData
+type DescribeDcdnDomainHttpCodeDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainHttpCodeDataResponse is the response struct for api DescribeDcdnDomainHttpCodeData
+type DescribeDcdnDomainHttpCodeDataResponse struct {
+	*responses.BaseResponse
+	RequestId       string          `json:"RequestId" xml:"RequestId"`
+	DomainName      string          `json:"DomainName" xml:"DomainName"`
+	StartTime       string          `json:"StartTime" xml:"StartTime"`
+	EndTime         string          `json:"EndTime" xml:"EndTime"`
+	DataInterval    string          `json:"DataInterval" xml:"DataInterval"`
+	DataPerInterval DataPerInterval `json:"DataPerInterval" xml:"DataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainHttpCodeDataRequest creates a request to invoke DescribeDcdnDomainHttpCodeData API
+func CreateDescribeDcdnDomainHttpCodeDataRequest() (request *DescribeDcdnDomainHttpCodeDataRequest) {
+	request = &DescribeDcdnDomainHttpCodeDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainHttpCodeData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainHttpCodeDataResponse creates a response to parse from DescribeDcdnDomainHttpCodeData response
+func CreateDescribeDcdnDomainHttpCodeDataResponse() (response *DescribeDcdnDomainHttpCodeDataResponse) {
+	response = &DescribeDcdnDomainHttpCodeDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 104 - 0
services/dcdn/describe_dcdn_domain_log.go

@@ -0,0 +1,104 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainLog invokes the dcdn.DescribeDcdnDomainLog API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainlog.html
+func (client *Client) DescribeDcdnDomainLog(request *DescribeDcdnDomainLogRequest) (response *DescribeDcdnDomainLogResponse, err error) {
+	response = CreateDescribeDcdnDomainLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainLogWithChan invokes the dcdn.DescribeDcdnDomainLog API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainLogWithChan(request *DescribeDcdnDomainLogRequest) (<-chan *DescribeDcdnDomainLogResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainLogWithCallback invokes the dcdn.DescribeDcdnDomainLog API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainLogWithCallback(request *DescribeDcdnDomainLogRequest, callback func(response *DescribeDcdnDomainLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainLogResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainLogRequest is the request struct for api DescribeDcdnDomainLog
+type DescribeDcdnDomainLogRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainLogResponse is the response struct for api DescribeDcdnDomainLog
+type DescribeDcdnDomainLogResponse struct {
+	*responses.BaseResponse
+	RequestId        string           `json:"RequestId" xml:"RequestId"`
+	DomainName       string           `json:"DomainName" xml:"DomainName"`
+	DomainLogDetails DomainLogDetails `json:"DomainLogDetails" xml:"DomainLogDetails"`
+}
+
+// CreateDescribeDcdnDomainLogRequest creates a request to invoke DescribeDcdnDomainLog API
+func CreateDescribeDcdnDomainLogRequest() (request *DescribeDcdnDomainLogRequest) {
+	request = &DescribeDcdnDomainLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainLog", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainLogResponse creates a response to parse from DescribeDcdnDomainLog response
+func CreateDescribeDcdnDomainLogResponse() (response *DescribeDcdnDomainLogResponse) {
+	response = &DescribeDcdnDomainLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_origin_bps_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainOriginBpsData invokes the dcdn.DescribeDcdnDomainOriginBpsData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainoriginbpsdata.html
+func (client *Client) DescribeDcdnDomainOriginBpsData(request *DescribeDcdnDomainOriginBpsDataRequest) (response *DescribeDcdnDomainOriginBpsDataResponse, err error) {
+	response = CreateDescribeDcdnDomainOriginBpsDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainOriginBpsDataWithChan invokes the dcdn.DescribeDcdnDomainOriginBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainoriginbpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainOriginBpsDataWithChan(request *DescribeDcdnDomainOriginBpsDataRequest) (<-chan *DescribeDcdnDomainOriginBpsDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainOriginBpsDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainOriginBpsData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainOriginBpsDataWithCallback invokes the dcdn.DescribeDcdnDomainOriginBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainoriginbpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainOriginBpsDataWithCallback(request *DescribeDcdnDomainOriginBpsDataRequest, callback func(response *DescribeDcdnDomainOriginBpsDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainOriginBpsDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainOriginBpsData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainOriginBpsDataRequest is the request struct for api DescribeDcdnDomainOriginBpsData
+type DescribeDcdnDomainOriginBpsDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainOriginBpsDataResponse is the response struct for api DescribeDcdnDomainOriginBpsData
+type DescribeDcdnDomainOriginBpsDataResponse struct {
+	*responses.BaseResponse
+	RequestId                string                   `json:"RequestId" xml:"RequestId"`
+	DomainName               string                   `json:"DomainName" xml:"DomainName"`
+	StartTime                string                   `json:"StartTime" xml:"StartTime"`
+	EndTime                  string                   `json:"EndTime" xml:"EndTime"`
+	DataInterval             string                   `json:"DataInterval" xml:"DataInterval"`
+	OriginBpsDataPerInterval OriginBpsDataPerInterval `json:"OriginBpsDataPerInterval" xml:"OriginBpsDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainOriginBpsDataRequest creates a request to invoke DescribeDcdnDomainOriginBpsData API
+func CreateDescribeDcdnDomainOriginBpsDataRequest() (request *DescribeDcdnDomainOriginBpsDataRequest) {
+	request = &DescribeDcdnDomainOriginBpsDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainOriginBpsData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainOriginBpsDataResponse creates a response to parse from DescribeDcdnDomainOriginBpsData response
+func CreateDescribeDcdnDomainOriginBpsDataResponse() (response *DescribeDcdnDomainOriginBpsDataResponse) {
+	response = &DescribeDcdnDomainOriginBpsDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_origin_traffic_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainOriginTrafficData invokes the dcdn.DescribeDcdnDomainOriginTrafficData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainorigintrafficdata.html
+func (client *Client) DescribeDcdnDomainOriginTrafficData(request *DescribeDcdnDomainOriginTrafficDataRequest) (response *DescribeDcdnDomainOriginTrafficDataResponse, err error) {
+	response = CreateDescribeDcdnDomainOriginTrafficDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainOriginTrafficDataWithChan invokes the dcdn.DescribeDcdnDomainOriginTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainorigintrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainOriginTrafficDataWithChan(request *DescribeDcdnDomainOriginTrafficDataRequest) (<-chan *DescribeDcdnDomainOriginTrafficDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainOriginTrafficDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainOriginTrafficData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainOriginTrafficDataWithCallback invokes the dcdn.DescribeDcdnDomainOriginTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainorigintrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainOriginTrafficDataWithCallback(request *DescribeDcdnDomainOriginTrafficDataRequest, callback func(response *DescribeDcdnDomainOriginTrafficDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainOriginTrafficDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainOriginTrafficData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainOriginTrafficDataRequest is the request struct for api DescribeDcdnDomainOriginTrafficData
+type DescribeDcdnDomainOriginTrafficDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainOriginTrafficDataResponse is the response struct for api DescribeDcdnDomainOriginTrafficData
+type DescribeDcdnDomainOriginTrafficDataResponse struct {
+	*responses.BaseResponse
+	RequestId                    string                       `json:"RequestId" xml:"RequestId"`
+	DomainName                   string                       `json:"DomainName" xml:"DomainName"`
+	StartTime                    string                       `json:"StartTime" xml:"StartTime"`
+	EndTime                      string                       `json:"EndTime" xml:"EndTime"`
+	DataInterval                 string                       `json:"DataInterval" xml:"DataInterval"`
+	OriginTrafficDataPerInterval OriginTrafficDataPerInterval `json:"OriginTrafficDataPerInterval" xml:"OriginTrafficDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainOriginTrafficDataRequest creates a request to invoke DescribeDcdnDomainOriginTrafficData API
+func CreateDescribeDcdnDomainOriginTrafficDataRequest() (request *DescribeDcdnDomainOriginTrafficDataRequest) {
+	request = &DescribeDcdnDomainOriginTrafficDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainOriginTrafficData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainOriginTrafficDataResponse creates a response to parse from DescribeDcdnDomainOriginTrafficData response
+func CreateDescribeDcdnDomainOriginTrafficDataResponse() (response *DescribeDcdnDomainOriginTrafficDataResponse) {
+	response = &DescribeDcdnDomainOriginTrafficDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_qps_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainQpsData invokes the dcdn.DescribeDcdnDomainQpsData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainqpsdata.html
+func (client *Client) DescribeDcdnDomainQpsData(request *DescribeDcdnDomainQpsDataRequest) (response *DescribeDcdnDomainQpsDataResponse, err error) {
+	response = CreateDescribeDcdnDomainQpsDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainQpsDataWithChan invokes the dcdn.DescribeDcdnDomainQpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainqpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainQpsDataWithChan(request *DescribeDcdnDomainQpsDataRequest) (<-chan *DescribeDcdnDomainQpsDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainQpsDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainQpsData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainQpsDataWithCallback invokes the dcdn.DescribeDcdnDomainQpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainqpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainQpsDataWithCallback(request *DescribeDcdnDomainQpsDataRequest, callback func(response *DescribeDcdnDomainQpsDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainQpsDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainQpsData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainQpsDataRequest is the request struct for api DescribeDcdnDomainQpsData
+type DescribeDcdnDomainQpsDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainQpsDataResponse is the response struct for api DescribeDcdnDomainQpsData
+type DescribeDcdnDomainQpsDataResponse struct {
+	*responses.BaseResponse
+	RequestId          string             `json:"RequestId" xml:"RequestId"`
+	DomainName         string             `json:"DomainName" xml:"DomainName"`
+	StartTime          string             `json:"StartTime" xml:"StartTime"`
+	EndTime            string             `json:"EndTime" xml:"EndTime"`
+	DataInterval       string             `json:"DataInterval" xml:"DataInterval"`
+	QpsDataPerInterval QpsDataPerInterval `json:"QpsDataPerInterval" xml:"QpsDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainQpsDataRequest creates a request to invoke DescribeDcdnDomainQpsData API
+func CreateDescribeDcdnDomainQpsDataRequest() (request *DescribeDcdnDomainQpsDataRequest) {
+	request = &DescribeDcdnDomainQpsDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainQpsData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainQpsDataResponse creates a response to parse from DescribeDcdnDomainQpsData response
+func CreateDescribeDcdnDomainQpsDataResponse() (response *DescribeDcdnDomainQpsDataResponse) {
+	response = &DescribeDcdnDomainQpsDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/describe_dcdn_domain_traffic_data.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnDomainTrafficData invokes the dcdn.DescribeDcdnDomainTrafficData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaintrafficdata.html
+func (client *Client) DescribeDcdnDomainTrafficData(request *DescribeDcdnDomainTrafficDataRequest) (response *DescribeDcdnDomainTrafficDataResponse, err error) {
+	response = CreateDescribeDcdnDomainTrafficDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainTrafficDataWithChan invokes the dcdn.DescribeDcdnDomainTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaintrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainTrafficDataWithChan(request *DescribeDcdnDomainTrafficDataRequest) (<-chan *DescribeDcdnDomainTrafficDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainTrafficDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainTrafficData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainTrafficDataWithCallback invokes the dcdn.DescribeDcdnDomainTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomaintrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainTrafficDataWithCallback(request *DescribeDcdnDomainTrafficDataRequest, callback func(response *DescribeDcdnDomainTrafficDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainTrafficDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainTrafficData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainTrafficDataRequest is the request struct for api DescribeDcdnDomainTrafficData
+type DescribeDcdnDomainTrafficDataRequest struct {
+	*requests.RpcRequest
+}
+
+// DescribeDcdnDomainTrafficDataResponse is the response struct for api DescribeDcdnDomainTrafficData
+type DescribeDcdnDomainTrafficDataResponse struct {
+	*responses.BaseResponse
+	RequestId              string                 `json:"RequestId" xml:"RequestId"`
+	DomainName             string                 `json:"DomainName" xml:"DomainName"`
+	StartTime              string                 `json:"StartTime" xml:"StartTime"`
+	EndTime                string                 `json:"EndTime" xml:"EndTime"`
+	DataInterval           string                 `json:"DataInterval" xml:"DataInterval"`
+	TrafficDataPerInterval TrafficDataPerInterval `json:"TrafficDataPerInterval" xml:"TrafficDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainTrafficDataRequest creates a request to invoke DescribeDcdnDomainTrafficData API
+func CreateDescribeDcdnDomainTrafficDataRequest() (request *DescribeDcdnDomainTrafficDataRequest) {
+	request = &DescribeDcdnDomainTrafficDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainTrafficData", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnDomainTrafficDataResponse creates a response to parse from DescribeDcdnDomainTrafficData response
+func CreateDescribeDcdnDomainTrafficDataResponse() (response *DescribeDcdnDomainTrafficDataResponse) {
+	response = &DescribeDcdnDomainTrafficDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 112 - 0
services/dcdn/describe_dcdn_refresh_quota.go

@@ -0,0 +1,112 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnRefreshQuota invokes the dcdn.DescribeDcdnRefreshQuota API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshquota.html
+func (client *Client) DescribeDcdnRefreshQuota(request *DescribeDcdnRefreshQuotaRequest) (response *DescribeDcdnRefreshQuotaResponse, err error) {
+	response = CreateDescribeDcdnRefreshQuotaResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnRefreshQuotaWithChan invokes the dcdn.DescribeDcdnRefreshQuota API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshquota.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnRefreshQuotaWithChan(request *DescribeDcdnRefreshQuotaRequest) (<-chan *DescribeDcdnRefreshQuotaResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnRefreshQuotaResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnRefreshQuota(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnRefreshQuotaWithCallback invokes the dcdn.DescribeDcdnRefreshQuota API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshquota.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnRefreshQuotaWithCallback(request *DescribeDcdnRefreshQuotaRequest, callback func(response *DescribeDcdnRefreshQuotaResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnRefreshQuotaResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnRefreshQuota(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnRefreshQuotaRequest is the request struct for api DescribeDcdnRefreshQuota
+type DescribeDcdnRefreshQuotaRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeDcdnRefreshQuotaResponse is the response struct for api DescribeDcdnRefreshQuota
+type DescribeDcdnRefreshQuotaResponse struct {
+	*responses.BaseResponse
+	RequestId     string `json:"RequestId" xml:"RequestId"`
+	UrlQuota      string `json:"UrlQuota" xml:"UrlQuota"`
+	DirQuota      string `json:"DirQuota" xml:"DirQuota"`
+	UrlRemain     string `json:"UrlRemain" xml:"UrlRemain"`
+	DirRemain     string `json:"DirRemain" xml:"DirRemain"`
+	PreloadQuota  string `json:"PreloadQuota" xml:"PreloadQuota"`
+	BlockQuota    string `json:"BlockQuota" xml:"BlockQuota"`
+	PreloadRemain string `json:"PreloadRemain" xml:"PreloadRemain"`
+	BlockRemain   string `json:"blockRemain" xml:"blockRemain"`
+}
+
+// CreateDescribeDcdnRefreshQuotaRequest creates a request to invoke DescribeDcdnRefreshQuota API
+func CreateDescribeDcdnRefreshQuotaRequest() (request *DescribeDcdnRefreshQuotaRequest) {
+	request = &DescribeDcdnRefreshQuotaRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnRefreshQuota", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnRefreshQuotaResponse creates a response to parse from DescribeDcdnRefreshQuota response
+func CreateDescribeDcdnRefreshQuotaResponse() (response *DescribeDcdnRefreshQuotaResponse) {
+	response = &DescribeDcdnRefreshQuotaResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 118 - 0
services/dcdn/describe_dcdn_refresh_tasks.go

@@ -0,0 +1,118 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnRefreshTasks invokes the dcdn.DescribeDcdnRefreshTasks API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshtasks.html
+func (client *Client) DescribeDcdnRefreshTasks(request *DescribeDcdnRefreshTasksRequest) (response *DescribeDcdnRefreshTasksResponse, err error) {
+	response = CreateDescribeDcdnRefreshTasksResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnRefreshTasksWithChan invokes the dcdn.DescribeDcdnRefreshTasks API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshtasks.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnRefreshTasksWithChan(request *DescribeDcdnRefreshTasksRequest) (<-chan *DescribeDcdnRefreshTasksResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnRefreshTasksResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnRefreshTasks(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnRefreshTasksWithCallback invokes the dcdn.DescribeDcdnRefreshTasks API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnrefreshtasks.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnRefreshTasksWithCallback(request *DescribeDcdnRefreshTasksRequest, callback func(response *DescribeDcdnRefreshTasksResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnRefreshTasksResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnRefreshTasks(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnRefreshTasksRequest is the request struct for api DescribeDcdnRefreshTasks
+type DescribeDcdnRefreshTasksRequest struct {
+	*requests.RpcRequest
+	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
+	TaskId          string           `position:"Query" name:"TaskId"`
+	ObjectPath      string           `position:"Query" name:"ObjectPath"`
+	PageNumber      requests.Integer `position:"Query" name:"PageNumber"`
+	ObjectType      string           `position:"Query" name:"ObjectType"`
+	DomainName      string           `position:"Query" name:"DomainName"`
+	Status          string           `position:"Query" name:"Status"`
+	PageSize        requests.Integer `position:"Query" name:"PageSize"`
+	StartTime       string           `position:"Query" name:"StartTime"`
+	EndTime         string           `position:"Query" name:"EndTime"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+}
+
+// DescribeDcdnRefreshTasksResponse is the response struct for api DescribeDcdnRefreshTasks
+type DescribeDcdnRefreshTasksResponse struct {
+	*responses.BaseResponse
+	RequestId  string `json:"RequestId" xml:"RequestId"`
+	PageNumber int    `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int    `json:"PageSize" xml:"PageSize"`
+	TotalCount int    `json:"TotalCount" xml:"TotalCount"`
+	Tasks      Tasks  `json:"Tasks" xml:"Tasks"`
+}
+
+// CreateDescribeDcdnRefreshTasksRequest creates a request to invoke DescribeDcdnRefreshTasks API
+func CreateDescribeDcdnRefreshTasksRequest() (request *DescribeDcdnRefreshTasksRequest) {
+	request = &DescribeDcdnRefreshTasksRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnRefreshTasks", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnRefreshTasksResponse creates a response to parse from DescribeDcdnRefreshTasks response
+func CreateDescribeDcdnRefreshTasksResponse() (response *DescribeDcdnRefreshTasksResponse) {
+	response = &DescribeDcdnRefreshTasksResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 110 - 0
services/dcdn/describe_dcdn_service.go

@@ -0,0 +1,110 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnService invokes the dcdn.DescribeDcdnService API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnservice.html
+func (client *Client) DescribeDcdnService(request *DescribeDcdnServiceRequest) (response *DescribeDcdnServiceResponse, err error) {
+	response = CreateDescribeDcdnServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnServiceWithChan invokes the dcdn.DescribeDcdnService API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnServiceWithChan(request *DescribeDcdnServiceRequest) (<-chan *DescribeDcdnServiceResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnServiceWithCallback invokes the dcdn.DescribeDcdnService API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnServiceWithCallback(request *DescribeDcdnServiceRequest, callback func(response *DescribeDcdnServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnServiceRequest is the request struct for api DescribeDcdnService
+type DescribeDcdnServiceRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeDcdnServiceResponse is the response struct for api DescribeDcdnService
+type DescribeDcdnServiceResponse struct {
+	*responses.BaseResponse
+	RequestId          string         `json:"RequestId" xml:"RequestId"`
+	InstanceId         string         `json:"InstanceId" xml:"InstanceId"`
+	InternetChargeType string         `json:"InternetChargeType" xml:"InternetChargeType"`
+	OpeningTime        string         `json:"OpeningTime" xml:"OpeningTime"`
+	ChangingChargeType string         `json:"ChangingChargeType" xml:"ChangingChargeType"`
+	ChangingAffectTime string         `json:"ChangingAffectTime" xml:"ChangingAffectTime"`
+	OperationLocks     OperationLocks `json:"OperationLocks" xml:"OperationLocks"`
+}
+
+// CreateDescribeDcdnServiceRequest creates a request to invoke DescribeDcdnService API
+func CreateDescribeDcdnServiceRequest() (request *DescribeDcdnServiceRequest) {
+	request = &DescribeDcdnServiceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnService", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnServiceResponse creates a response to parse from DescribeDcdnService response
+func CreateDescribeDcdnServiceResponse() (response *DescribeDcdnServiceResponse) {
+	response = &DescribeDcdnServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 118 - 0
services/dcdn/describe_dcdn_user_domains.go

@@ -0,0 +1,118 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnUserDomains invokes the dcdn.DescribeDcdnUserDomains API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserdomains.html
+func (client *Client) DescribeDcdnUserDomains(request *DescribeDcdnUserDomainsRequest) (response *DescribeDcdnUserDomainsResponse, err error) {
+	response = CreateDescribeDcdnUserDomainsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnUserDomainsWithChan invokes the dcdn.DescribeDcdnUserDomains API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserdomains.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnUserDomainsWithChan(request *DescribeDcdnUserDomainsRequest) (<-chan *DescribeDcdnUserDomainsResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnUserDomainsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnUserDomains(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnUserDomainsWithCallback invokes the dcdn.DescribeDcdnUserDomains API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserdomains.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnUserDomainsWithCallback(request *DescribeDcdnUserDomainsRequest, callback func(response *DescribeDcdnUserDomainsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnUserDomainsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnUserDomains(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnUserDomainsRequest is the request struct for api DescribeDcdnUserDomains
+type DescribeDcdnUserDomainsRequest struct {
+	*requests.RpcRequest
+	OwnerId          requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken    string           `position:"Query" name:"SecurityToken"`
+	PageSize         requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber       requests.Integer `position:"Query" name:"PageNumber"`
+	DomainName       string           `position:"Query" name:"DomainName"`
+	DomainStatus     string           `position:"Query" name:"DomainStatus"`
+	DomainSearchType string           `position:"Query" name:"DomainSearchType"`
+	CheckDomainShow  requests.Boolean `position:"Query" name:"CheckDomainShow"`
+	ResourceGroupId  string           `position:"Query" name:"ResourceGroupId"`
+	FuncId           string           `position:"Query" name:"FuncId"`
+	FuncFilter       string           `position:"Query" name:"FuncFilter"`
+}
+
+// DescribeDcdnUserDomainsResponse is the response struct for api DescribeDcdnUserDomains
+type DescribeDcdnUserDomainsResponse struct {
+	*responses.BaseResponse
+	RequestId   string  `json:"RequestId" xml:"RequestId"`
+	PageNumber  int     `json:"PageNumber" xml:"PageNumber"`
+	PageSize    int     `json:"PageSize" xml:"PageSize"`
+	TotalCount  int     `json:"TotalCount" xml:"TotalCount"`
+	OnlineCount int     `json:"OnlineCount" xml:"OnlineCount"`
+	Domains     Domains `json:"Domains" xml:"Domains"`
+}
+
+// CreateDescribeDcdnUserDomainsRequest creates a request to invoke DescribeDcdnUserDomains API
+func CreateDescribeDcdnUserDomainsRequest() (request *DescribeDcdnUserDomainsRequest) {
+	request = &DescribeDcdnUserDomainsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnUserDomains", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnUserDomainsResponse creates a response to parse from DescribeDcdnUserDomains response
+func CreateDescribeDcdnUserDomainsResponse() (response *DescribeDcdnUserDomainsResponse) {
+	response = &DescribeDcdnUserDomainsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/dcdn/describe_dcdn_user_resource_package.go

@@ -0,0 +1,105 @@
+package dcdn
+
+//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"
+)
+
+// DescribeDcdnUserResourcePackage invokes the dcdn.DescribeDcdnUserResourcePackage API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserresourcepackage.html
+func (client *Client) DescribeDcdnUserResourcePackage(request *DescribeDcdnUserResourcePackageRequest) (response *DescribeDcdnUserResourcePackageResponse, err error) {
+	response = CreateDescribeDcdnUserResourcePackageResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnUserResourcePackageWithChan invokes the dcdn.DescribeDcdnUserResourcePackage API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserresourcepackage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnUserResourcePackageWithChan(request *DescribeDcdnUserResourcePackageRequest) (<-chan *DescribeDcdnUserResourcePackageResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnUserResourcePackageResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnUserResourcePackage(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnUserResourcePackageWithCallback invokes the dcdn.DescribeDcdnUserResourcePackage API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnuserresourcepackage.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnUserResourcePackageWithCallback(request *DescribeDcdnUserResourcePackageRequest, callback func(response *DescribeDcdnUserResourcePackageResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnUserResourcePackageResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnUserResourcePackage(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnUserResourcePackageRequest is the request struct for api DescribeDcdnUserResourcePackage
+type DescribeDcdnUserResourcePackageRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeDcdnUserResourcePackageResponse is the response struct for api DescribeDcdnUserResourcePackage
+type DescribeDcdnUserResourcePackageResponse struct {
+	*responses.BaseResponse
+	RequestId            string               `json:"RequestId" xml:"RequestId"`
+	ResourcePackageInfos ResourcePackageInfos `json:"ResourcePackageInfos" xml:"ResourcePackageInfos"`
+}
+
+// CreateDescribeDcdnUserResourcePackageRequest creates a request to invoke DescribeDcdnUserResourcePackage API
+func CreateDescribeDcdnUserResourcePackageRequest() (request *DescribeDcdnUserResourcePackageRequest) {
+	request = &DescribeDcdnUserResourcePackageRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnUserResourcePackage", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeDcdnUserResourcePackageResponse creates a response to parse from DescribeDcdnUserResourcePackage response
+func CreateDescribeDcdnUserResourcePackageResponse() (response *DescribeDcdnUserResourcePackageResponse) {
+	response = &DescribeDcdnUserResourcePackageResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/dcdn/describe_user_dcdn_status.go

@@ -0,0 +1,108 @@
+package dcdn
+
+//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"
+)
+
+// DescribeUserDcdnStatus invokes the dcdn.DescribeUserDcdnStatus API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnstatus.html
+func (client *Client) DescribeUserDcdnStatus(request *DescribeUserDcdnStatusRequest) (response *DescribeUserDcdnStatusResponse, err error) {
+	response = CreateDescribeUserDcdnStatusResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeUserDcdnStatusWithChan invokes the dcdn.DescribeUserDcdnStatus API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnstatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUserDcdnStatusWithChan(request *DescribeUserDcdnStatusRequest) (<-chan *DescribeUserDcdnStatusResponse, <-chan error) {
+	responseChan := make(chan *DescribeUserDcdnStatusResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeUserDcdnStatus(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeUserDcdnStatusWithCallback invokes the dcdn.DescribeUserDcdnStatus API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnstatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUserDcdnStatusWithCallback(request *DescribeUserDcdnStatusRequest, callback func(response *DescribeUserDcdnStatusResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeUserDcdnStatusResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeUserDcdnStatus(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeUserDcdnStatusRequest is the request struct for api DescribeUserDcdnStatus
+type DescribeUserDcdnStatusRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeUserDcdnStatusResponse is the response struct for api DescribeUserDcdnStatus
+type DescribeUserDcdnStatusResponse struct {
+	*responses.BaseResponse
+	RequestId     string `json:"RequestId" xml:"RequestId"`
+	Enabled       bool   `json:"Enabled" xml:"Enabled"`
+	OnService     bool   `json:"OnService" xml:"OnService"`
+	InDebt        bool   `json:"InDebt" xml:"InDebt"`
+	InDebtOverdue bool   `json:"InDebtOverdue" xml:"InDebtOverdue"`
+}
+
+// CreateDescribeUserDcdnStatusRequest creates a request to invoke DescribeUserDcdnStatus API
+func CreateDescribeUserDcdnStatusRequest() (request *DescribeUserDcdnStatusRequest) {
+	request = &DescribeUserDcdnStatusRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeUserDcdnStatus", "dcdn", "openAPI")
+	return
+}
+
+// CreateDescribeUserDcdnStatusResponse creates a response to parse from DescribeUserDcdnStatus response
+func CreateDescribeUserDcdnStatusResponse() (response *DescribeUserDcdnStatusResponse) {
+	response = &DescribeUserDcdnStatusResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/dcdn/preload_dcdn_object_caches.go

@@ -0,0 +1,106 @@
+package dcdn
+
+//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"
+)
+
+// PreloadDcdnObjectCaches invokes the dcdn.PreloadDcdnObjectCaches API synchronously
+// api document: https://help.aliyun.com/api/dcdn/preloaddcdnobjectcaches.html
+func (client *Client) PreloadDcdnObjectCaches(request *PreloadDcdnObjectCachesRequest) (response *PreloadDcdnObjectCachesResponse, err error) {
+	response = CreatePreloadDcdnObjectCachesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// PreloadDcdnObjectCachesWithChan invokes the dcdn.PreloadDcdnObjectCaches API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/preloaddcdnobjectcaches.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PreloadDcdnObjectCachesWithChan(request *PreloadDcdnObjectCachesRequest) (<-chan *PreloadDcdnObjectCachesResponse, <-chan error) {
+	responseChan := make(chan *PreloadDcdnObjectCachesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.PreloadDcdnObjectCaches(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// PreloadDcdnObjectCachesWithCallback invokes the dcdn.PreloadDcdnObjectCaches API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/preloaddcdnobjectcaches.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) PreloadDcdnObjectCachesWithCallback(request *PreloadDcdnObjectCachesRequest, callback func(response *PreloadDcdnObjectCachesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *PreloadDcdnObjectCachesResponse
+		var err error
+		defer close(result)
+		response, err = client.PreloadDcdnObjectCaches(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// PreloadDcdnObjectCachesRequest is the request struct for api PreloadDcdnObjectCaches
+type PreloadDcdnObjectCachesRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	ObjectPath    string           `position:"Query" name:"ObjectPath"`
+}
+
+// PreloadDcdnObjectCachesResponse is the response struct for api PreloadDcdnObjectCaches
+type PreloadDcdnObjectCachesResponse struct {
+	*responses.BaseResponse
+	RequestId     string `json:"RequestId" xml:"RequestId"`
+	PreloadTaskId string `json:"PreloadTaskId" xml:"PreloadTaskId"`
+}
+
+// CreatePreloadDcdnObjectCachesRequest creates a request to invoke PreloadDcdnObjectCaches API
+func CreatePreloadDcdnObjectCachesRequest() (request *PreloadDcdnObjectCachesRequest) {
+	request = &PreloadDcdnObjectCachesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "PreloadDcdnObjectCaches", "dcdn", "openAPI")
+	return
+}
+
+// CreatePreloadDcdnObjectCachesResponse creates a response to parse from PreloadDcdnObjectCaches response
+func CreatePreloadDcdnObjectCachesResponse() (response *PreloadDcdnObjectCachesResponse) {
+	response = &PreloadDcdnObjectCachesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/dcdn/refresh_dcdn_object_caches.go

@@ -0,0 +1,107 @@
+package dcdn
+
+//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"
+)
+
+// RefreshDcdnObjectCaches invokes the dcdn.RefreshDcdnObjectCaches API synchronously
+// api document: https://help.aliyun.com/api/dcdn/refreshdcdnobjectcaches.html
+func (client *Client) RefreshDcdnObjectCaches(request *RefreshDcdnObjectCachesRequest) (response *RefreshDcdnObjectCachesResponse, err error) {
+	response = CreateRefreshDcdnObjectCachesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// RefreshDcdnObjectCachesWithChan invokes the dcdn.RefreshDcdnObjectCaches API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/refreshdcdnobjectcaches.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RefreshDcdnObjectCachesWithChan(request *RefreshDcdnObjectCachesRequest) (<-chan *RefreshDcdnObjectCachesResponse, <-chan error) {
+	responseChan := make(chan *RefreshDcdnObjectCachesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.RefreshDcdnObjectCaches(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// RefreshDcdnObjectCachesWithCallback invokes the dcdn.RefreshDcdnObjectCaches API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/refreshdcdnobjectcaches.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) RefreshDcdnObjectCachesWithCallback(request *RefreshDcdnObjectCachesRequest, callback func(response *RefreshDcdnObjectCachesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *RefreshDcdnObjectCachesResponse
+		var err error
+		defer close(result)
+		response, err = client.RefreshDcdnObjectCaches(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// RefreshDcdnObjectCachesRequest is the request struct for api RefreshDcdnObjectCaches
+type RefreshDcdnObjectCachesRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	ObjectPath    string           `position:"Query" name:"ObjectPath"`
+	ObjectType    string           `position:"Query" name:"ObjectType"`
+}
+
+// RefreshDcdnObjectCachesResponse is the response struct for api RefreshDcdnObjectCaches
+type RefreshDcdnObjectCachesResponse struct {
+	*responses.BaseResponse
+	RequestId     string `json:"RequestId" xml:"RequestId"`
+	RefreshTaskId string `json:"RefreshTaskId" xml:"RefreshTaskId"`
+}
+
+// CreateRefreshDcdnObjectCachesRequest creates a request to invoke RefreshDcdnObjectCaches API
+func CreateRefreshDcdnObjectCachesRequest() (request *RefreshDcdnObjectCachesRequest) {
+	request = &RefreshDcdnObjectCachesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "RefreshDcdnObjectCaches", "dcdn", "openAPI")
+	return
+}
+
+// CreateRefreshDcdnObjectCachesResponse creates a response to parse from RefreshDcdnObjectCaches response
+func CreateRefreshDcdnObjectCachesResponse() (response *RefreshDcdnObjectCachesResponse) {
+	response = &RefreshDcdnObjectCachesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/dcdn/set_dcdn_domain_certificate.go

@@ -0,0 +1,111 @@
+package dcdn
+
+//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"
+)
+
+// SetDcdnDomainCertificate invokes the dcdn.SetDcdnDomainCertificate API synchronously
+// api document: https://help.aliyun.com/api/dcdn/setdcdndomaincertificate.html
+func (client *Client) SetDcdnDomainCertificate(request *SetDcdnDomainCertificateRequest) (response *SetDcdnDomainCertificateResponse, err error) {
+	response = CreateSetDcdnDomainCertificateResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SetDcdnDomainCertificateWithChan invokes the dcdn.SetDcdnDomainCertificate API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/setdcdndomaincertificate.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SetDcdnDomainCertificateWithChan(request *SetDcdnDomainCertificateRequest) (<-chan *SetDcdnDomainCertificateResponse, <-chan error) {
+	responseChan := make(chan *SetDcdnDomainCertificateResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SetDcdnDomainCertificate(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SetDcdnDomainCertificateWithCallback invokes the dcdn.SetDcdnDomainCertificate API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/setdcdndomaincertificate.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SetDcdnDomainCertificateWithCallback(request *SetDcdnDomainCertificateRequest, callback func(response *SetDcdnDomainCertificateResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SetDcdnDomainCertificateResponse
+		var err error
+		defer close(result)
+		response, err = client.SetDcdnDomainCertificate(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SetDcdnDomainCertificateRequest is the request struct for api SetDcdnDomainCertificate
+type SetDcdnDomainCertificateRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+	CertName      string           `position:"Query" name:"CertName"`
+	CertType      string           `position:"Query" name:"CertType"`
+	SSLProtocol   string           `position:"Query" name:"SSLProtocol"`
+	SSLPub        string           `position:"Query" name:"SSLPub"`
+	SSLPri        string           `position:"Query" name:"SSLPri"`
+	Region        string           `position:"Query" name:"Region"`
+}
+
+// SetDcdnDomainCertificateResponse is the response struct for api SetDcdnDomainCertificate
+type SetDcdnDomainCertificateResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateSetDcdnDomainCertificateRequest creates a request to invoke SetDcdnDomainCertificate API
+func CreateSetDcdnDomainCertificateRequest() (request *SetDcdnDomainCertificateRequest) {
+	request = &SetDcdnDomainCertificateRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "SetDcdnDomainCertificate", "dcdn", "openAPI")
+	return
+}
+
+// CreateSetDcdnDomainCertificateResponse creates a response to parse from SetDcdnDomainCertificate response
+func CreateSetDcdnDomainCertificateResponse() (response *SetDcdnDomainCertificateResponse) {
+	response = &SetDcdnDomainCertificateResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/dcdn/start_dcdn_domain.go

@@ -0,0 +1,105 @@
+package dcdn
+
+//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"
+)
+
+// StartDcdnDomain invokes the dcdn.StartDcdnDomain API synchronously
+// api document: https://help.aliyun.com/api/dcdn/startdcdndomain.html
+func (client *Client) StartDcdnDomain(request *StartDcdnDomainRequest) (response *StartDcdnDomainResponse, err error) {
+	response = CreateStartDcdnDomainResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// StartDcdnDomainWithChan invokes the dcdn.StartDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/startdcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StartDcdnDomainWithChan(request *StartDcdnDomainRequest) (<-chan *StartDcdnDomainResponse, <-chan error) {
+	responseChan := make(chan *StartDcdnDomainResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.StartDcdnDomain(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// StartDcdnDomainWithCallback invokes the dcdn.StartDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/startdcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StartDcdnDomainWithCallback(request *StartDcdnDomainRequest, callback func(response *StartDcdnDomainResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *StartDcdnDomainResponse
+		var err error
+		defer close(result)
+		response, err = client.StartDcdnDomain(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// StartDcdnDomainRequest is the request struct for api StartDcdnDomain
+type StartDcdnDomainRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+}
+
+// StartDcdnDomainResponse is the response struct for api StartDcdnDomain
+type StartDcdnDomainResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateStartDcdnDomainRequest creates a request to invoke StartDcdnDomain API
+func CreateStartDcdnDomainRequest() (request *StartDcdnDomainRequest) {
+	request = &StartDcdnDomainRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "StartDcdnDomain", "dcdn", "openAPI")
+	return
+}
+
+// CreateStartDcdnDomainResponse creates a response to parse from StartDcdnDomain response
+func CreateStartDcdnDomainResponse() (response *StartDcdnDomainResponse) {
+	response = &StartDcdnDomainResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 105 - 0
services/dcdn/stop_dcdn_domain.go

@@ -0,0 +1,105 @@
+package dcdn
+
+//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"
+)
+
+// StopDcdnDomain invokes the dcdn.StopDcdnDomain API synchronously
+// api document: https://help.aliyun.com/api/dcdn/stopdcdndomain.html
+func (client *Client) StopDcdnDomain(request *StopDcdnDomainRequest) (response *StopDcdnDomainResponse, err error) {
+	response = CreateStopDcdnDomainResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// StopDcdnDomainWithChan invokes the dcdn.StopDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/stopdcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StopDcdnDomainWithChan(request *StopDcdnDomainRequest) (<-chan *StopDcdnDomainResponse, <-chan error) {
+	responseChan := make(chan *StopDcdnDomainResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.StopDcdnDomain(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// StopDcdnDomainWithCallback invokes the dcdn.StopDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/stopdcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) StopDcdnDomainWithCallback(request *StopDcdnDomainRequest, callback func(response *StopDcdnDomainResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *StopDcdnDomainResponse
+		var err error
+		defer close(result)
+		response, err = client.StopDcdnDomain(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// StopDcdnDomainRequest is the request struct for api StopDcdnDomain
+type StopDcdnDomainRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	DomainName    string           `position:"Query" name:"DomainName"`
+}
+
+// StopDcdnDomainResponse is the response struct for api StopDcdnDomain
+type StopDcdnDomainResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateStopDcdnDomainRequest creates a request to invoke StopDcdnDomain API
+func CreateStopDcdnDomainRequest() (request *StopDcdnDomainRequest) {
+	request = &StopDcdnDomainRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "StopDcdnDomain", "dcdn", "openAPI")
+	return
+}
+
+// CreateStopDcdnDomainResponse creates a response to parse from StopDcdnDomain response
+func CreateStopDcdnDomainResponse() (response *StopDcdnDomainResponse) {
+	response = &StopDcdnDomainResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 21 - 0
services/dcdn/struct_bps_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// BpsDataPerInterval is a nested struct in dcdn response
+type BpsDataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 26 - 0
services/dcdn/struct_cert.go

@@ -0,0 +1,26 @@
+package dcdn
+
+//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.
+
+// Cert is a nested struct in dcdn response
+type Cert struct {
+	CertName    string `json:"CertName" xml:"CertName"`
+	CertId      int    `json:"CertId" xml:"CertId"`
+	Fingerprint string `json:"Fingerprint" xml:"Fingerprint"`
+	Common      string `json:"Common" xml:"Common"`
+	Issuer      string `json:"Issuer" xml:"Issuer"`
+	LastTime    int    `json:"LastTime" xml:"LastTime"`
+}

+ 21 - 0
services/dcdn/struct_cert_list.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// CertList is a nested struct in dcdn response
+type CertList struct {
+	Cert []Cert `json:"Cert" xml:"Cert"`
+}

+ 22 - 0
services/dcdn/struct_certificate_list_model.go

@@ -0,0 +1,22 @@
+package dcdn
+
+//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.
+
+// CertificateListModel is a nested struct in dcdn response
+type CertificateListModel struct {
+	Count    int      `json:"Count" xml:"Count"`
+	CertList CertList `json:"CertList" xml:"CertList"`
+}

+ 21 - 0
services/dcdn/struct_cname_datas.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// CnameDatas is a nested struct in dcdn response
+type CnameDatas struct {
+	Data []Data `json:"Data" xml:"Data"`
+}

+ 23 - 0
services/dcdn/struct_data.go

@@ -0,0 +1,23 @@
+package dcdn
+
+//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.
+
+// Data is a nested struct in dcdn response
+type Data struct {
+	Domain string `json:"Domain" xml:"Domain"`
+	Cname  string `json:"Cname" xml:"Cname"`
+	Status int    `json:"Status" xml:"Status"`
+}

+ 54 - 0
services/dcdn/struct_data_module.go

@@ -0,0 +1,54 @@
+package dcdn
+
+//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.
+
+// DataModule is a nested struct in dcdn response
+type DataModule struct {
+	StaticHttpTraffic         float64                 `json:"StaticHttpTraffic" xml:"StaticHttpTraffic"`
+	StaticHttpBps             float64                 `json:"StaticHttpBps" xml:"StaticHttpBps"`
+	DynamicHttpsAcc           float64                 `json:"DynamicHttpsAcc" xml:"DynamicHttpsAcc"`
+	DynamicHttpOriginBps      float64                 `json:"DynamicHttpOriginBps" xml:"DynamicHttpOriginBps"`
+	DynamicHttpsOriginBps     float64                 `json:"DynamicHttpsOriginBps" xml:"DynamicHttpsOriginBps"`
+	StaticHttpsOriginTraffic  float64                 `json:"StaticHttpsOriginTraffic" xml:"StaticHttpsOriginTraffic"`
+	StaticHttpAcc             float64                 `json:"StaticHttpAcc" xml:"StaticHttpAcc"`
+	DynamicHttpsBps           float64                 `json:"DynamicHttpsBps" xml:"DynamicHttpsBps"`
+	StaticHttpsBps            float64                 `json:"StaticHttpsBps" xml:"StaticHttpsBps"`
+	OriginTraffic             float64                 `json:"OriginTraffic" xml:"OriginTraffic"`
+	DynamicHttpAcc            float64                 `json:"DynamicHttpAcc" xml:"DynamicHttpAcc"`
+	StaticHttpsTraffic        float64                 `json:"StaticHttpsTraffic" xml:"StaticHttpsTraffic"`
+	TimeStamp                 string                  `json:"TimeStamp" xml:"TimeStamp"`
+	Acc                       float64                 `json:"Acc" xml:"Acc"`
+	StaticHttpsAcc            float64                 `json:"StaticHttpsAcc" xml:"StaticHttpsAcc"`
+	DynamicHttpOriginTraffic  float64                 `json:"DynamicHttpOriginTraffic" xml:"DynamicHttpOriginTraffic"`
+	ReqHitRate                float64                 `json:"ReqHitRate" xml:"ReqHitRate"`
+	StaticHttpQps             float64                 `json:"StaticHttpQps" xml:"StaticHttpQps"`
+	DynamicHttpTraffic        float64                 `json:"DynamicHttpTraffic" xml:"DynamicHttpTraffic"`
+	OriginBps                 float64                 `json:"OriginBps" xml:"OriginBps"`
+	Bps                       float64                 `json:"Bps" xml:"Bps"`
+	DynamicHttpBps            float64                 `json:"DynamicHttpBps" xml:"DynamicHttpBps"`
+	StaticHttpOriginTraffic   float64                 `json:"StaticHttpOriginTraffic" xml:"StaticHttpOriginTraffic"`
+	StaticHttpOriginBps       float64                 `json:"StaticHttpOriginBps" xml:"StaticHttpOriginBps"`
+	Qps                       float64                 `json:"Qps" xml:"Qps"`
+	DynamicHttpsTraffic       float64                 `json:"DynamicHttpsTraffic" xml:"DynamicHttpsTraffic"`
+	StaticHttpsQps            float64                 `json:"StaticHttpsQps" xml:"StaticHttpsQps"`
+	DynamicHttpsOriginTraffic float64                 `json:"DynamicHttpsOriginTraffic" xml:"DynamicHttpsOriginTraffic"`
+	StaticHttpsOriginBps      float64                 `json:"StaticHttpsOriginBps" xml:"StaticHttpsOriginBps"`
+	ByteHitRate               float64                 `json:"ByteHitRate" xml:"ByteHitRate"`
+	DynamicHttpsQps           float64                 `json:"DynamicHttpsQps" xml:"DynamicHttpsQps"`
+	DynamicHttpQps            float64                 `json:"DynamicHttpQps" xml:"DynamicHttpQps"`
+	Traffic                   float64                 `json:"Traffic" xml:"Traffic"`
+	HttpCodeDataPerInterval   HttpCodeDataPerInterval `json:"HttpCodeDataPerInterval" xml:"HttpCodeDataPerInterval"`
+}

+ 21 - 0
services/dcdn/struct_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// DataPerInterval is a nested struct in dcdn response
+type DataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 24 - 0
services/dcdn/struct_domain_config.go

@@ -0,0 +1,24 @@
+package dcdn
+
+//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.
+
+// DomainConfig is a nested struct in dcdn response
+type DomainConfig struct {
+	FunctionName string       `json:"FunctionName" xml:"FunctionName"`
+	ConfigId     string       `json:"ConfigId" xml:"ConfigId"`
+	Status       string       `json:"Status" xml:"Status"`
+	FunctionArgs FunctionArgs `json:"FunctionArgs" xml:"FunctionArgs"`
+}

+ 21 - 0
services/dcdn/struct_domain_configs.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// DomainConfigs is a nested struct in dcdn response
+type DomainConfigs struct {
+	DomainConfig []DomainConfig `json:"DomainConfig" xml:"DomainConfig"`
+}

+ 32 - 0
services/dcdn/struct_domain_detail.go

@@ -0,0 +1,32 @@
+package dcdn
+
+//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.
+
+// DomainDetail is a nested struct in dcdn response
+type DomainDetail struct {
+	GmtCreated      string                            `json:"GmtCreated" xml:"GmtCreated"`
+	GmtModified     string                            `json:"GmtModified" xml:"GmtModified"`
+	DomainStatus    string                            `json:"DomainStatus" xml:"DomainStatus"`
+	Cname           string                            `json:"Cname" xml:"Cname"`
+	DomainName      string                            `json:"DomainName" xml:"DomainName"`
+	Description     string                            `json:"Description" xml:"Description"`
+	SSLProtocol     string                            `json:"SSLProtocol" xml:"SSLProtocol"`
+	SSLPub          string                            `json:"SSLPub" xml:"SSLPub"`
+	Scope           string                            `json:"Scope" xml:"Scope"`
+	CertName        string                            `json:"CertName" xml:"CertName"`
+	ResourceGroupId string                            `json:"ResourceGroupId" xml:"ResourceGroupId"`
+	Sources         SourcesInDescribeDcdnDomainDetail `json:"Sources" xml:"Sources"`
+}

+ 23 - 0
services/dcdn/struct_domain_log_detail.go

@@ -0,0 +1,23 @@
+package dcdn
+
+//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.
+
+// DomainLogDetail is a nested struct in dcdn response
+type DomainLogDetail struct {
+	LogCount  int       `json:"LogCount" xml:"LogCount"`
+	PageInfos PageInfos `json:"PageInfos" xml:"PageInfos"`
+	LogInfos  LogInfos  `json:"LogInfos" xml:"LogInfos"`
+}

+ 21 - 0
services/dcdn/struct_domain_log_details.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// DomainLogDetails is a nested struct in dcdn response
+type DomainLogDetails struct {
+	DomainLogDetail []DomainLogDetail `json:"DomainLogDetail" xml:"DomainLogDetail"`
+}

+ 21 - 0
services/dcdn/struct_domains.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// Domains is a nested struct in dcdn response
+type Domains struct {
+	PageData []PageData `json:"PageData" xml:"PageData"`
+}

+ 22 - 0
services/dcdn/struct_function_arg.go

@@ -0,0 +1,22 @@
+package dcdn
+
+//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.
+
+// FunctionArg is a nested struct in dcdn response
+type FunctionArg struct {
+	ArgName  string `json:"ArgName" xml:"ArgName"`
+	ArgValue string `json:"ArgValue" xml:"ArgValue"`
+}

+ 21 - 0
services/dcdn/struct_function_args.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// FunctionArgs is a nested struct in dcdn response
+type FunctionArgs struct {
+	FunctionArg []FunctionArg `json:"FunctionArg" xml:"FunctionArg"`
+}

+ 21 - 0
services/dcdn/struct_hit_rate_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// HitRatePerInterval is a nested struct in dcdn response
+type HitRatePerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 23 - 0
services/dcdn/struct_http_code_data_module.go

@@ -0,0 +1,23 @@
+package dcdn
+
+//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.
+
+// HttpCodeDataModule is a nested struct in dcdn response
+type HttpCodeDataModule struct {
+	Code       int     `json:"Code" xml:"Code"`
+	Proportion float64 `json:"Proportion" xml:"Proportion"`
+	Count      float64 `json:"Count" xml:"Count"`
+}

+ 21 - 0
services/dcdn/struct_http_code_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// HttpCodeDataPerInterval is a nested struct in dcdn response
+type HttpCodeDataPerInterval struct {
+	HttpCodeDataModule []HttpCodeDataModule `json:"HttpCodeDataModule" xml:"HttpCodeDataModule"`
+}

+ 21 - 0
services/dcdn/struct_lock_reason.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// LockReason is a nested struct in dcdn response
+type LockReason struct {
+	LockReason string `json:"LockReason" xml:"LockReason"`
+}

+ 25 - 0
services/dcdn/struct_log_info_detail.go

@@ -0,0 +1,25 @@
+package dcdn
+
+//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.
+
+// LogInfoDetail is a nested struct in dcdn response
+type LogInfoDetail struct {
+	LogName   string `json:"LogName" xml:"LogName"`
+	LogPath   string `json:"LogPath" xml:"LogPath"`
+	LogSize   int    `json:"LogSize" xml:"LogSize"`
+	StartTime string `json:"StartTime" xml:"StartTime"`
+	EndTime   string `json:"EndTime" xml:"EndTime"`
+}

+ 21 - 0
services/dcdn/struct_log_infos.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// LogInfos is a nested struct in dcdn response
+type LogInfos struct {
+	LogInfoDetail []LogInfoDetail `json:"LogInfoDetail" xml:"LogInfoDetail"`
+}

+ 21 - 0
services/dcdn/struct_operation_locks.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// OperationLocks is a nested struct in dcdn response
+type OperationLocks struct {
+	LockReason []LockReason `json:"LockReason" xml:"LockReason"`
+}

+ 21 - 0
services/dcdn/struct_origin_bps_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// OriginBpsDataPerInterval is a nested struct in dcdn response
+type OriginBpsDataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 21 - 0
services/dcdn/struct_origin_traffic_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// OriginTrafficDataPerInterval is a nested struct in dcdn response
+type OriginTrafficDataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 30 - 0
services/dcdn/struct_page_data.go

@@ -0,0 +1,30 @@
+package dcdn
+
+//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.
+
+// PageData is a nested struct in dcdn response
+type PageData struct {
+	DomainName      string                           `json:"DomainName" xml:"DomainName"`
+	Cname           string                           `json:"Cname" xml:"Cname"`
+	DomainStatus    string                           `json:"DomainStatus" xml:"DomainStatus"`
+	GmtCreated      string                           `json:"GmtCreated" xml:"GmtCreated"`
+	GmtModified     string                           `json:"GmtModified" xml:"GmtModified"`
+	Description     string                           `json:"Description" xml:"Description"`
+	SSLProtocol     string                           `json:"SSLProtocol" xml:"SSLProtocol"`
+	ResourceGroupId string                           `json:"ResourceGroupId" xml:"ResourceGroupId"`
+	Sandbox         string                           `json:"Sandbox" xml:"Sandbox"`
+	Sources         SourcesInDescribeDcdnUserDomains `json:"Sources" xml:"Sources"`
+}

+ 23 - 0
services/dcdn/struct_page_info_detail.go

@@ -0,0 +1,23 @@
+package dcdn
+
+//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.
+
+// PageInfoDetail is a nested struct in dcdn response
+type PageInfoDetail struct {
+	PageIndex int `json:"PageIndex" xml:"PageIndex"`
+	PageSize  int `json:"PageSize" xml:"PageSize"`
+	Total     int `json:"Total" xml:"Total"`
+}

+ 21 - 0
services/dcdn/struct_page_infos.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// PageInfos is a nested struct in dcdn response
+type PageInfos struct {
+	PageInfoDetail []PageInfoDetail `json:"PageInfoDetail" xml:"PageInfoDetail"`
+}

+ 21 - 0
services/dcdn/struct_qps_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// QpsDataPerInterval is a nested struct in dcdn response
+type QpsDataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 26 - 0
services/dcdn/struct_resource_package_info.go

@@ -0,0 +1,26 @@
+package dcdn
+
+//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.
+
+// ResourcePackageInfo is a nested struct in dcdn response
+type ResourcePackageInfo struct {
+	CurrCapacity  string `json:"CurrCapacity" xml:"CurrCapacity"`
+	InitCapacity  string `json:"InitCapacity" xml:"InitCapacity"`
+	CommodityCode string `json:"CommodityCode" xml:"CommodityCode"`
+	DisplayName   string `json:"DisplayName" xml:"DisplayName"`
+	InstanceId    string `json:"InstanceId" xml:"InstanceId"`
+	Status        string `json:"Status" xml:"Status"`
+}

+ 21 - 0
services/dcdn/struct_resource_package_infos.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// ResourcePackageInfos is a nested struct in dcdn response
+type ResourcePackageInfos struct {
+	ResourcePackageInfo []ResourcePackageInfo `json:"ResourcePackageInfo" xml:"ResourcePackageInfo"`
+}

+ 25 - 0
services/dcdn/struct_source.go

@@ -0,0 +1,25 @@
+package dcdn
+
+//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.
+
+// Source is a nested struct in dcdn response
+type Source struct {
+	Port     int    `json:"Port" xml:"Port"`
+	Content  string `json:"Content" xml:"Content"`
+	Enabled  string `json:"Enabled" xml:"Enabled"`
+	Priority string `json:"Priority" xml:"Priority"`
+	Type     string `json:"Type" xml:"Type"`
+}

+ 21 - 0
services/dcdn/struct_sources_in_describe_dcdn_domain_detail.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// SourcesInDescribeDcdnDomainDetail is a nested struct in dcdn response
+type SourcesInDescribeDcdnDomainDetail struct {
+	Source []Source `json:"Source" xml:"Source"`
+}

+ 21 - 0
services/dcdn/struct_sources_in_describe_dcdn_user_domains.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// SourcesInDescribeDcdnUserDomains is a nested struct in dcdn response
+type SourcesInDescribeDcdnUserDomains struct {
+	Source []Source `json:"Source" xml:"Source"`
+}

+ 27 - 0
services/dcdn/struct_task.go

@@ -0,0 +1,27 @@
+package dcdn
+
+//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.
+
+// Task is a nested struct in dcdn response
+type Task struct {
+	TaskId       string `json:"TaskId" xml:"TaskId"`
+	ObjectPath   string `json:"ObjectPath" xml:"ObjectPath"`
+	Process      string `json:"Process" xml:"Process"`
+	Status       string `json:"Status" xml:"Status"`
+	CreationTime string `json:"CreationTime" xml:"CreationTime"`
+	Description  string `json:"Description" xml:"Description"`
+	ObjectType   string `json:"ObjectType" xml:"ObjectType"`
+}

+ 21 - 0
services/dcdn/struct_tasks.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// Tasks is a nested struct in dcdn response
+type Tasks struct {
+	Task []Task `json:"Task" xml:"Task"`
+}

+ 21 - 0
services/dcdn/struct_traffic_data_per_interval.go

@@ -0,0 +1,21 @@
+package dcdn
+
+//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.
+
+// TrafficDataPerInterval is a nested struct in dcdn response
+type TrafficDataPerInterval struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 108 - 0
services/dcdn/update_dcdn_domain.go

@@ -0,0 +1,108 @@
+package dcdn
+
+//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"
+)
+
+// UpdateDcdnDomain invokes the dcdn.UpdateDcdnDomain API synchronously
+// api document: https://help.aliyun.com/api/dcdn/updatedcdndomain.html
+func (client *Client) UpdateDcdnDomain(request *UpdateDcdnDomainRequest) (response *UpdateDcdnDomainResponse, err error) {
+	response = CreateUpdateDcdnDomainResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UpdateDcdnDomainWithChan invokes the dcdn.UpdateDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/updatedcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateDcdnDomainWithChan(request *UpdateDcdnDomainRequest) (<-chan *UpdateDcdnDomainResponse, <-chan error) {
+	responseChan := make(chan *UpdateDcdnDomainResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UpdateDcdnDomain(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UpdateDcdnDomainWithCallback invokes the dcdn.UpdateDcdnDomain API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/updatedcdndomain.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateDcdnDomainWithCallback(request *UpdateDcdnDomainRequest, callback func(response *UpdateDcdnDomainResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UpdateDcdnDomainResponse
+		var err error
+		defer close(result)
+		response, err = client.UpdateDcdnDomain(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UpdateDcdnDomainRequest is the request struct for api UpdateDcdnDomain
+type UpdateDcdnDomainRequest struct {
+	*requests.RpcRequest
+	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
+	DomainName      string           `position:"Query" name:"DomainName"`
+	Sources         string           `position:"Query" name:"Sources"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
+}
+
+// UpdateDcdnDomainResponse is the response struct for api UpdateDcdnDomain
+type UpdateDcdnDomainResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateUpdateDcdnDomainRequest creates a request to invoke UpdateDcdnDomain API
+func CreateUpdateDcdnDomainRequest() (request *UpdateDcdnDomainRequest) {
+	request = &UpdateDcdnDomainRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "UpdateDcdnDomain", "dcdn", "openAPI")
+	return
+}
+
+// CreateUpdateDcdnDomainResponse creates a response to parse from UpdateDcdnDomain response
+func CreateUpdateDcdnDomainResponse() (response *UpdateDcdnDomainResponse) {
+	response = &UpdateDcdnDomainResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}