浏览代码

Sync cdn APIs.

sdk-team 6 年之前
父节点
当前提交
1b3b8c38c4
共有 82 个文件被更改,包括 2387 次插入170 次删除
  1. 3 0
      ChangeLog.txt
  2. 3 3
      services/dcdn/add_dcdn_domain.go
  3. 111 0
      services/dcdn/add_dcdn_ipa_domain.go
  4. 1 1
      services/dcdn/batch_delete_dcdn_domain_configs.go
  5. 1 1
      services/dcdn/batch_set_dcdn_domain_configs.go
  6. 107 0
      services/dcdn/batch_set_dcdn_ipa_domain_configs.go
  7. 105 0
      services/dcdn/batch_start_dcdn_domain.go
  8. 105 0
      services/dcdn/batch_stop_dcdn_domain.go
  9. 53 5
      services/dcdn/client.go
  10. 2 2
      services/dcdn/delete_dcdn_domain.go
  11. 107 0
      services/dcdn/delete_dcdn_ipa_domain.go
  12. 106 0
      services/dcdn/delete_dcdn_specific_config.go
  13. 2 2
      services/dcdn/describe_dcdn_certificate_detail.go
  14. 1 1
      services/dcdn/describe_dcdn_certificate_list.go
  15. 0 2
      services/dcdn/describe_dcdn_domain_bps_data.go
  16. 3 3
      services/dcdn/describe_dcdn_domain_configs.go
  17. 1 1
      services/dcdn/describe_dcdn_domain_detail.go
  18. 116 0
      services/dcdn/describe_dcdn_domain_ipa_bps_data.go
  19. 116 0
      services/dcdn/describe_dcdn_domain_ipa_traffic_data.go
  20. 0 2
      services/dcdn/describe_dcdn_domain_origin_bps_data.go
  21. 0 2
      services/dcdn/describe_dcdn_domain_origin_traffic_data.go
  22. 1 1
      services/dcdn/describe_dcdn_domain_pv_data.go
  23. 0 2
      services/dcdn/describe_dcdn_domain_qps_data.go
  24. 112 0
      services/dcdn/describe_dcdn_domain_real_time_detail_data.go
  25. 2 2
      services/dcdn/describe_dcdn_domain_top_refer_visit.go
  26. 2 2
      services/dcdn/describe_dcdn_domain_top_url_visit.go
  27. 0 2
      services/dcdn/describe_dcdn_domain_traffic_data.go
  28. 1 1
      services/dcdn/describe_dcdn_domain_uv_data.go
  29. 0 2
      services/dcdn/describe_dcdn_domain_websocket_bps_data.go
  30. 0 2
      services/dcdn/describe_dcdn_domain_websocket_traffic_data.go
  31. 107 0
      services/dcdn/describe_dcdn_ipa_domain_configs.go
  32. 106 0
      services/dcdn/describe_dcdn_ipa_domain_detail.go
  33. 110 0
      services/dcdn/describe_dcdn_ipa_service.go
  34. 117 0
      services/dcdn/describe_dcdn_ipa_user_domains.go
  35. 1 1
      services/dcdn/describe_dcdn_refresh_quota.go
  36. 6 6
      services/dcdn/describe_dcdn_refresh_tasks.go
  37. 11 11
      services/dcdn/describe_dcdn_service.go
  38. 2 3
      services/dcdn/describe_dcdn_top_domains_by_flow.go
  39. 9 7
      services/dcdn/describe_dcdn_user_domains.go
  40. 1 1
      services/dcdn/describe_dcdn_user_quota.go
  41. 1 1
      services/dcdn/describe_dcdn_user_resource_package.go
  42. 108 0
      services/dcdn/describe_user_dcdn_ipa_status.go
  43. 1 1
      services/dcdn/describe_user_dcdn_status.go
  44. 75 0
      services/dcdn/endpoint.go
  45. 105 0
      services/dcdn/modify_d_cdn_domain_schdm_by_property.go
  46. 1 1
      services/dcdn/preload_dcdn_object_caches.go
  47. 1 1
      services/dcdn/refresh_dcdn_object_caches.go
  48. 4 4
      services/dcdn/set_dcdn_domain_certificate.go
  49. 1 1
      services/dcdn/start_dcdn_domain.go
  50. 105 0
      services/dcdn/start_dcdn_ipa_domain.go
  51. 1 1
      services/dcdn/stop_dcdn_domain.go
  52. 105 0
      services/dcdn/stop_dcdn_ipa_domain.go
  53. 21 0
      services/dcdn/struct_bps_data_per_interval_in_describe_dcdn_domain_ipa_bps_data.go
  54. 2 2
      services/dcdn/struct_cert.go
  55. 5 3
      services/dcdn/struct_data_module.go
  56. 4 4
      services/dcdn/struct_domain_config.go
  57. 2 2
      services/dcdn/struct_domain_configs_in_describe_dcdn_domain_configs.go
  58. 21 0
      services/dcdn/struct_domain_configs_in_describe_dcdn_ipa_domain_configs.go
  59. 6 6
      services/dcdn/struct_domain_detail.go
  60. 1 1
      services/dcdn/struct_domain_log_detail.go
  61. 21 0
      services/dcdn/struct_domains_in_describe_dcdn_ipa_user_domains.go
  62. 2 2
      services/dcdn/struct_domains_in_describe_dcdn_user_domains.go
  63. 2 2
      services/dcdn/struct_function_args_in_describe_dcdn_domain_configs.go
  64. 21 0
      services/dcdn/struct_function_args_in_describe_dcdn_ipa_domain_configs.go
  65. 1 1
      services/dcdn/struct_log_info_detail.go
  66. 21 0
      services/dcdn/struct_operation_locks_in_describe_dcdn_ipa_service.go
  67. 2 2
      services/dcdn/struct_operation_locks_in_describe_dcdn_service.go
  68. 10 10
      services/dcdn/struct_page_data.go
  69. 3 3
      services/dcdn/struct_page_infos.go
  70. 1 1
      services/dcdn/struct_pv_data_interval.go
  71. 1 1
      services/dcdn/struct_real_time_http_code_data.go
  72. 21 0
      services/dcdn/struct_sources_in_describe_dcdn_ipa_domain_detail.go
  73. 21 0
      services/dcdn/struct_sources_in_describe_dcdn_ipa_user_domains.go
  74. 3 3
      services/dcdn/struct_top_domain.go
  75. 21 0
      services/dcdn/struct_traffic_data_per_interval_in_describe_dcdn_domain_ipa_traffic_data.go
  76. 2 2
      services/dcdn/struct_usage_data.go
  77. 0 22
      services/dcdn/struct_usage_data_in_describe_dcdn_domain_pv_data.go
  78. 22 0
      services/dcdn/struct_usage_data_in_describe_dcdn_domain_real_time_http_code_data.go
  79. 0 22
      services/dcdn/struct_usage_data_in_describe_dcdn_domain_uv_data.go
  80. 1 1
      services/dcdn/struct_uv_data_interval.go
  81. 2 2
      services/dcdn/update_dcdn_domain.go
  82. 108 0
      services/dcdn/update_dcdn_ipa_domain.go

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2019-11-15 Version: 1.60.246
+- Sync cdn APIs.
+
 2019-11-15 Version: 1.60.245
 2019-11-15 Version: 1.60.245
 - Fixed bugs.
 - Fixed bugs.
 
 

+ 3 - 3
services/dcdn/add_dcdn_domain.go

@@ -76,12 +76,12 @@ func (client *Client) AddDcdnDomainWithCallback(request *AddDcdnDomainRequest, c
 // AddDcdnDomainRequest is the request struct for api AddDcdnDomain
 // AddDcdnDomainRequest is the request struct for api AddDcdnDomain
 type AddDcdnDomainRequest struct {
 type AddDcdnDomainRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
-	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
 	Sources         string           `position:"Query" name:"Sources"`
 	Sources         string           `position:"Query" name:"Sources"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
 	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 	SecurityToken   string           `position:"Query" name:"SecurityToken"`
-	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
 	Scope           string           `position:"Query" name:"Scope"`
 	Scope           string           `position:"Query" name:"Scope"`
+	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
+	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	CheckUrl        string           `position:"Query" name:"CheckUrl"`
 	CheckUrl        string           `position:"Query" name:"CheckUrl"`

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

+ 1 - 1
services/dcdn/batch_delete_dcdn_domain_configs.go

@@ -77,10 +77,10 @@ func (client *Client) BatchDeleteDcdnDomainConfigsWithCallback(request *BatchDel
 type BatchDeleteDcdnDomainConfigsRequest struct {
 type BatchDeleteDcdnDomainConfigsRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	FunctionNames string           `position:"Query" name:"FunctionNames"`
 	FunctionNames string           `position:"Query" name:"FunctionNames"`
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainNames   string           `position:"Query" name:"DomainNames"`
 	DomainNames   string           `position:"Query" name:"DomainNames"`
 	OwnerAccount  string           `position:"Query" name:"OwnerAccount"`
 	OwnerAccount  string           `position:"Query" name:"OwnerAccount"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // BatchDeleteDcdnDomainConfigsResponse is the response struct for api BatchDeleteDcdnDomainConfigs
 // BatchDeleteDcdnDomainConfigsResponse is the response struct for api BatchDeleteDcdnDomainConfigs

+ 1 - 1
services/dcdn/batch_set_dcdn_domain_configs.go

@@ -77,10 +77,10 @@ func (client *Client) BatchSetDcdnDomainConfigsWithCallback(request *BatchSetDcd
 type BatchSetDcdnDomainConfigsRequest struct {
 type BatchSetDcdnDomainConfigsRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	Functions     string           `position:"Query" name:"Functions"`
 	Functions     string           `position:"Query" name:"Functions"`
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainNames   string           `position:"Query" name:"DomainNames"`
 	DomainNames   string           `position:"Query" name:"DomainNames"`
 	OwnerAccount  string           `position:"Query" name:"OwnerAccount"`
 	OwnerAccount  string           `position:"Query" name:"OwnerAccount"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // BatchSetDcdnDomainConfigsResponse is the response struct for api BatchSetDcdnDomainConfigs
 // BatchSetDcdnDomainConfigsResponse is the response struct for api BatchSetDcdnDomainConfigs

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

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

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

+ 53 - 5
services/dcdn/client.go

@@ -16,8 +16,11 @@ package dcdn
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
 
 import (
 import (
+	"reflect"
+
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
 )
 )
 
 
 // Client is the sdk client struct, each func corresponds to an OpenAPI
 // Client is the sdk client struct, each func corresponds to an OpenAPI
@@ -25,10 +28,40 @@ type Client struct {
 	sdk.Client
 	sdk.Client
 }
 }
 
 
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
 // NewClient creates a sdk client with environment variables
 // NewClient creates a sdk client with environment variables
 func NewClient() (client *Client, err error) {
 func NewClient() (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.Init()
 	err = client.Init()
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
@@ -37,45 +70,60 @@ func NewClient() (client *Client, err error) {
 func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
 func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithOptions(regionId, config, credential)
 	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
 // NewClientWithAccessKey is a shortcut to create sdk client with accesskey
 // NewClientWithAccessKey is a shortcut to create sdk client with accesskey
-// usage: https://help.aliyun.com/document_detail/66217.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
 func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
 	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
 // NewClientWithStsToken is a shortcut to create sdk client with sts token
 // NewClientWithStsToken is a shortcut to create sdk client with sts token
-// usage: https://help.aliyun.com/document_detail/66222.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
 func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
 	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
 // NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
 // NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
-// usage: https://help.aliyun.com/document_detail/66222.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
 func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
 	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
 // NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
 // NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
-// usage: https://help.aliyun.com/document_detail/66223.html
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
 func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithEcsRamRole(regionId, roleName)
 	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }
 
 
 // NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
 // NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
-// attention: rsa key pair auth is only Japan regions available
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
 func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
 func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
 	client = &Client{}
 	client = &Client{}
 	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
 	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
 	return
 	return
 }
 }

+ 2 - 2
services/dcdn/delete_dcdn_domain.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteDcdnDomainWithCallback(request *DeleteDcdnDomainRequ
 // DeleteDcdnDomainRequest is the request struct for api DeleteDcdnDomain
 // DeleteDcdnDomainRequest is the request struct for api DeleteDcdnDomain
 type DeleteDcdnDomainRequest struct {
 type DeleteDcdnDomainRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
-	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
 	OwnerAccount    string           `position:"Query" name:"OwnerAccount"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DeleteDcdnDomainResponse is the response struct for api DeleteDcdnDomain
 // DeleteDcdnDomainResponse is the response struct for api DeleteDcdnDomain

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

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

+ 2 - 2
services/dcdn/describe_dcdn_certificate_detail.go

@@ -76,9 +76,9 @@ func (client *Client) DescribeDcdnCertificateDetailWithCallback(request *Describ
 // DescribeDcdnCertificateDetailRequest is the request struct for api DescribeDcdnCertificateDetail
 // DescribeDcdnCertificateDetailRequest is the request struct for api DescribeDcdnCertificateDetail
 type DescribeDcdnCertificateDetailRequest struct {
 type DescribeDcdnCertificateDetailRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	CertName      string           `position:"Query" name:"CertName"`
 	CertName      string           `position:"Query" name:"CertName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnCertificateDetailResponse is the response struct for api DescribeDcdnCertificateDetail
 // DescribeDcdnCertificateDetailResponse is the response struct for api DescribeDcdnCertificateDetail
@@ -87,7 +87,7 @@ type DescribeDcdnCertificateDetailResponse struct {
 	RequestId string `json:"RequestId" xml:"RequestId"`
 	RequestId string `json:"RequestId" xml:"RequestId"`
 	Cert      string `json:"Cert" xml:"Cert"`
 	Cert      string `json:"Cert" xml:"Cert"`
 	Key       string `json:"Key" xml:"Key"`
 	Key       string `json:"Key" xml:"Key"`
-	CertId    int    `json:"CertId" xml:"CertId"`
+	CertId    int64  `json:"CertId" xml:"CertId"`
 	CertName  string `json:"CertName" xml:"CertName"`
 	CertName  string `json:"CertName" xml:"CertName"`
 }
 }
 
 

+ 1 - 1
services/dcdn/describe_dcdn_certificate_list.go

@@ -76,9 +76,9 @@ func (client *Client) DescribeDcdnCertificateListWithCallback(request *DescribeD
 // DescribeDcdnCertificateListRequest is the request struct for api DescribeDcdnCertificateList
 // DescribeDcdnCertificateListRequest is the request struct for api DescribeDcdnCertificateList
 type DescribeDcdnCertificateListRequest struct {
 type DescribeDcdnCertificateListRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnCertificateListResponse is the response struct for api DescribeDcdnCertificateList
 // DescribeDcdnCertificateListResponse is the response struct for api DescribeDcdnCertificateList

+ 0 - 2
services/dcdn/describe_dcdn_domain_bps_data.go

@@ -79,8 +79,6 @@ type DescribeDcdnDomainBpsDataRequest struct {
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
-	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge      string           `position:"Query" name:"TimeMerge"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`

+ 3 - 3
services/dcdn/describe_dcdn_domain_configs.go

@@ -77,16 +77,16 @@ func (client *Client) DescribeDcdnDomainConfigsWithCallback(request *DescribeDcd
 type DescribeDcdnDomainConfigsRequest struct {
 type DescribeDcdnDomainConfigsRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	FunctionNames string           `position:"Query" name:"FunctionNames"`
 	FunctionNames string           `position:"Query" name:"FunctionNames"`
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnDomainConfigsResponse is the response struct for api DescribeDcdnDomainConfigs
 // DescribeDcdnDomainConfigsResponse is the response struct for api DescribeDcdnDomainConfigs
 type DescribeDcdnDomainConfigsResponse struct {
 type DescribeDcdnDomainConfigsResponse struct {
 	*responses.BaseResponse
 	*responses.BaseResponse
-	RequestId     string        `json:"RequestId" xml:"RequestId"`
-	DomainConfigs DomainConfigs `json:"DomainConfigs" xml:"DomainConfigs"`
+	RequestId     string                                   `json:"RequestId" xml:"RequestId"`
+	DomainConfigs DomainConfigsInDescribeDcdnDomainConfigs `json:"DomainConfigs" xml:"DomainConfigs"`
 }
 }
 
 
 // CreateDescribeDcdnDomainConfigsRequest creates a request to invoke DescribeDcdnDomainConfigs API
 // CreateDescribeDcdnDomainConfigsRequest creates a request to invoke DescribeDcdnDomainConfigs API

+ 1 - 1
services/dcdn/describe_dcdn_domain_detail.go

@@ -76,9 +76,9 @@ func (client *Client) DescribeDcdnDomainDetailWithCallback(request *DescribeDcdn
 // DescribeDcdnDomainDetailRequest is the request struct for api DescribeDcdnDomainDetail
 // DescribeDcdnDomainDetailRequest is the request struct for api DescribeDcdnDomainDetail
 type DescribeDcdnDomainDetailRequest struct {
 type DescribeDcdnDomainDetailRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnDomainDetailResponse is the response struct for api DescribeDcdnDomainDetail
 // DescribeDcdnDomainDetailResponse is the response struct for api DescribeDcdnDomainDetail

+ 116 - 0
services/dcdn/describe_dcdn_domain_ipa_bps_data.go

@@ -0,0 +1,116 @@
+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"
+)
+
+// DescribeDcdnDomainIpaBpsData invokes the dcdn.DescribeDcdnDomainIpaBpsData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipabpsdata.html
+func (client *Client) DescribeDcdnDomainIpaBpsData(request *DescribeDcdnDomainIpaBpsDataRequest) (response *DescribeDcdnDomainIpaBpsDataResponse, err error) {
+	response = CreateDescribeDcdnDomainIpaBpsDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainIpaBpsDataWithChan invokes the dcdn.DescribeDcdnDomainIpaBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipabpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainIpaBpsDataWithChan(request *DescribeDcdnDomainIpaBpsDataRequest) (<-chan *DescribeDcdnDomainIpaBpsDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainIpaBpsDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainIpaBpsData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainIpaBpsDataWithCallback invokes the dcdn.DescribeDcdnDomainIpaBpsData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipabpsdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainIpaBpsDataWithCallback(request *DescribeDcdnDomainIpaBpsDataRequest, callback func(response *DescribeDcdnDomainIpaBpsDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainIpaBpsDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainIpaBpsData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainIpaBpsDataRequest is the request struct for api DescribeDcdnDomainIpaBpsData
+type DescribeDcdnDomainIpaBpsDataRequest struct {
+	*requests.RpcRequest
+	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
+	StartTime      string           `position:"Query" name:"StartTime"`
+	IspNameEn      string           `position:"Query" name:"IspNameEn"`
+	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
+	TimeMerge      string           `position:"Query" name:"TimeMerge"`
+	DomainName     string           `position:"Query" name:"DomainName"`
+	EndTime        string           `position:"Query" name:"EndTime"`
+	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
+	Interval       string           `position:"Query" name:"Interval"`
+}
+
+// DescribeDcdnDomainIpaBpsDataResponse is the response struct for api DescribeDcdnDomainIpaBpsData
+type DescribeDcdnDomainIpaBpsDataResponse 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 BpsDataPerIntervalInDescribeDcdnDomainIpaBpsData `json:"BpsDataPerInterval" xml:"BpsDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainIpaBpsDataRequest creates a request to invoke DescribeDcdnDomainIpaBpsData API
+func CreateDescribeDcdnDomainIpaBpsDataRequest() (request *DescribeDcdnDomainIpaBpsDataRequest) {
+	request = &DescribeDcdnDomainIpaBpsDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainIpaBpsData", "", "")
+	return
+}
+
+// CreateDescribeDcdnDomainIpaBpsDataResponse creates a response to parse from DescribeDcdnDomainIpaBpsData response
+func CreateDescribeDcdnDomainIpaBpsDataResponse() (response *DescribeDcdnDomainIpaBpsDataResponse) {
+	response = &DescribeDcdnDomainIpaBpsDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 116 - 0
services/dcdn/describe_dcdn_domain_ipa_traffic_data.go

@@ -0,0 +1,116 @@
+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"
+)
+
+// DescribeDcdnDomainIpaTrafficData invokes the dcdn.DescribeDcdnDomainIpaTrafficData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipatrafficdata.html
+func (client *Client) DescribeDcdnDomainIpaTrafficData(request *DescribeDcdnDomainIpaTrafficDataRequest) (response *DescribeDcdnDomainIpaTrafficDataResponse, err error) {
+	response = CreateDescribeDcdnDomainIpaTrafficDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainIpaTrafficDataWithChan invokes the dcdn.DescribeDcdnDomainIpaTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipatrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainIpaTrafficDataWithChan(request *DescribeDcdnDomainIpaTrafficDataRequest) (<-chan *DescribeDcdnDomainIpaTrafficDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainIpaTrafficDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainIpaTrafficData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainIpaTrafficDataWithCallback invokes the dcdn.DescribeDcdnDomainIpaTrafficData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainipatrafficdata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainIpaTrafficDataWithCallback(request *DescribeDcdnDomainIpaTrafficDataRequest, callback func(response *DescribeDcdnDomainIpaTrafficDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainIpaTrafficDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainIpaTrafficData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainIpaTrafficDataRequest is the request struct for api DescribeDcdnDomainIpaTrafficData
+type DescribeDcdnDomainIpaTrafficDataRequest struct {
+	*requests.RpcRequest
+	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
+	StartTime      string           `position:"Query" name:"StartTime"`
+	IspNameEn      string           `position:"Query" name:"IspNameEn"`
+	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
+	TimeMerge      string           `position:"Query" name:"TimeMerge"`
+	DomainName     string           `position:"Query" name:"DomainName"`
+	EndTime        string           `position:"Query" name:"EndTime"`
+	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
+	Interval       string           `position:"Query" name:"Interval"`
+}
+
+// DescribeDcdnDomainIpaTrafficDataResponse is the response struct for api DescribeDcdnDomainIpaTrafficData
+type DescribeDcdnDomainIpaTrafficDataResponse 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 TrafficDataPerIntervalInDescribeDcdnDomainIpaTrafficData `json:"TrafficDataPerInterval" xml:"TrafficDataPerInterval"`
+}
+
+// CreateDescribeDcdnDomainIpaTrafficDataRequest creates a request to invoke DescribeDcdnDomainIpaTrafficData API
+func CreateDescribeDcdnDomainIpaTrafficDataRequest() (request *DescribeDcdnDomainIpaTrafficDataRequest) {
+	request = &DescribeDcdnDomainIpaTrafficDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainIpaTrafficData", "", "")
+	return
+}
+
+// CreateDescribeDcdnDomainIpaTrafficDataResponse creates a response to parse from DescribeDcdnDomainIpaTrafficData response
+func CreateDescribeDcdnDomainIpaTrafficDataResponse() (response *DescribeDcdnDomainIpaTrafficDataResponse) {
+	response = &DescribeDcdnDomainIpaTrafficDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 0 - 2
services/dcdn/describe_dcdn_domain_origin_bps_data.go

@@ -77,8 +77,6 @@ func (client *Client) DescribeDcdnDomainOriginBpsDataWithCallback(request *Descr
 type DescribeDcdnDomainOriginBpsDataRequest struct {
 type DescribeDcdnDomainOriginBpsDataRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	StartTime  string           `position:"Query" name:"StartTime"`
 	StartTime  string           `position:"Query" name:"StartTime"`
-	FixTimeGap string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge  string           `position:"Query" name:"TimeMerge"`
 	DomainName string           `position:"Query" name:"DomainName"`
 	DomainName string           `position:"Query" name:"DomainName"`
 	EndTime    string           `position:"Query" name:"EndTime"`
 	EndTime    string           `position:"Query" name:"EndTime"`
 	OwnerId    requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId    requests.Integer `position:"Query" name:"OwnerId"`

+ 0 - 2
services/dcdn/describe_dcdn_domain_origin_traffic_data.go

@@ -77,8 +77,6 @@ func (client *Client) DescribeDcdnDomainOriginTrafficDataWithCallback(request *D
 type DescribeDcdnDomainOriginTrafficDataRequest struct {
 type DescribeDcdnDomainOriginTrafficDataRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	StartTime  string           `position:"Query" name:"StartTime"`
 	StartTime  string           `position:"Query" name:"StartTime"`
-	FixTimeGap string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge  string           `position:"Query" name:"TimeMerge"`
 	DomainName string           `position:"Query" name:"DomainName"`
 	DomainName string           `position:"Query" name:"DomainName"`
 	EndTime    string           `position:"Query" name:"EndTime"`
 	EndTime    string           `position:"Query" name:"EndTime"`
 	OwnerId    requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId    requests.Integer `position:"Query" name:"OwnerId"`

+ 1 - 1
services/dcdn/describe_dcdn_domain_pv_data.go

@@ -76,11 +76,11 @@ func (client *Client) DescribeDcdnDomainPvDataWithCallback(request *DescribeDcdn
 // DescribeDcdnDomainPvDataRequest is the request struct for api DescribeDcdnDomainPvData
 // DescribeDcdnDomainPvDataRequest is the request struct for api DescribeDcdnDomainPvData
 type DescribeDcdnDomainPvDataRequest struct {
 type DescribeDcdnDomainPvDataRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	EndTime       string           `position:"Query" name:"EndTime"`
 	EndTime       string           `position:"Query" name:"EndTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnDomainPvDataResponse is the response struct for api DescribeDcdnDomainPvData
 // DescribeDcdnDomainPvDataResponse is the response struct for api DescribeDcdnDomainPvData

+ 0 - 2
services/dcdn/describe_dcdn_domain_qps_data.go

@@ -79,8 +79,6 @@ type DescribeDcdnDomainQpsDataRequest struct {
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
-	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge      string           `position:"Query" name:"TimeMerge"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`

+ 112 - 0
services/dcdn/describe_dcdn_domain_real_time_detail_data.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"
+)
+
+// DescribeDcdnDomainRealTimeDetailData invokes the dcdn.DescribeDcdnDomainRealTimeDetailData API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainrealtimedetaildata.html
+func (client *Client) DescribeDcdnDomainRealTimeDetailData(request *DescribeDcdnDomainRealTimeDetailDataRequest) (response *DescribeDcdnDomainRealTimeDetailDataResponse, err error) {
+	response = CreateDescribeDcdnDomainRealTimeDetailDataResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnDomainRealTimeDetailDataWithChan invokes the dcdn.DescribeDcdnDomainRealTimeDetailData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainrealtimedetaildata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainRealTimeDetailDataWithChan(request *DescribeDcdnDomainRealTimeDetailDataRequest) (<-chan *DescribeDcdnDomainRealTimeDetailDataResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnDomainRealTimeDetailDataResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnDomainRealTimeDetailData(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnDomainRealTimeDetailDataWithCallback invokes the dcdn.DescribeDcdnDomainRealTimeDetailData API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdndomainrealtimedetaildata.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnDomainRealTimeDetailDataWithCallback(request *DescribeDcdnDomainRealTimeDetailDataRequest, callback func(response *DescribeDcdnDomainRealTimeDetailDataResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnDomainRealTimeDetailDataResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnDomainRealTimeDetailData(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnDomainRealTimeDetailDataRequest is the request struct for api DescribeDcdnDomainRealTimeDetailData
+type DescribeDcdnDomainRealTimeDetailDataRequest struct {
+	*requests.RpcRequest
+	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
+	StartTime      string           `position:"Query" name:"StartTime"`
+	IspNameEn      string           `position:"Query" name:"IspNameEn"`
+	Merge          string           `position:"Query" name:"Merge"`
+	DomainName     string           `position:"Query" name:"DomainName"`
+	EndTime        string           `position:"Query" name:"EndTime"`
+	MergeLocIsp    string           `position:"Query" name:"MergeLocIsp"`
+	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
+	Field          string           `position:"Query" name:"Field"`
+}
+
+// DescribeDcdnDomainRealTimeDetailDataResponse is the response struct for api DescribeDcdnDomainRealTimeDetailData
+type DescribeDcdnDomainRealTimeDetailDataResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Data      string `json:"Data" xml:"Data"`
+}
+
+// CreateDescribeDcdnDomainRealTimeDetailDataRequest creates a request to invoke DescribeDcdnDomainRealTimeDetailData API
+func CreateDescribeDcdnDomainRealTimeDetailDataRequest() (request *DescribeDcdnDomainRealTimeDetailDataRequest) {
+	request = &DescribeDcdnDomainRealTimeDetailDataRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnDomainRealTimeDetailData", "", "")
+	return
+}
+
+// CreateDescribeDcdnDomainRealTimeDetailDataResponse creates a response to parse from DescribeDcdnDomainRealTimeDetailData response
+func CreateDescribeDcdnDomainRealTimeDetailDataResponse() (response *DescribeDcdnDomainRealTimeDetailDataResponse) {
+	response = &DescribeDcdnDomainRealTimeDetailDataResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 2 - 2
services/dcdn/describe_dcdn_domain_top_refer_visit.go

@@ -76,11 +76,11 @@ func (client *Client) DescribeDcdnDomainTopReferVisitWithCallback(request *Descr
 // DescribeDcdnDomainTopReferVisitRequest is the request struct for api DescribeDcdnDomainTopReferVisit
 // DescribeDcdnDomainTopReferVisitRequest is the request struct for api DescribeDcdnDomainTopReferVisit
 type DescribeDcdnDomainTopReferVisitRequest struct {
 type DescribeDcdnDomainTopReferVisitRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
-	SortBy        string           `position:"Query" name:"SortBy"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	SortBy        string           `position:"Query" name:"SortBy"`
 }
 }
 
 
 // DescribeDcdnDomainTopReferVisitResponse is the response struct for api DescribeDcdnDomainTopReferVisit
 // DescribeDcdnDomainTopReferVisitResponse is the response struct for api DescribeDcdnDomainTopReferVisit

+ 2 - 2
services/dcdn/describe_dcdn_domain_top_url_visit.go

@@ -76,11 +76,11 @@ func (client *Client) DescribeDcdnDomainTopUrlVisitWithCallback(request *Describ
 // DescribeDcdnDomainTopUrlVisitRequest is the request struct for api DescribeDcdnDomainTopUrlVisit
 // DescribeDcdnDomainTopUrlVisitRequest is the request struct for api DescribeDcdnDomainTopUrlVisit
 type DescribeDcdnDomainTopUrlVisitRequest struct {
 type DescribeDcdnDomainTopUrlVisitRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
-	SortBy        string           `position:"Query" name:"SortBy"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+	SortBy        string           `position:"Query" name:"SortBy"`
 }
 }
 
 
 // DescribeDcdnDomainTopUrlVisitResponse is the response struct for api DescribeDcdnDomainTopUrlVisit
 // DescribeDcdnDomainTopUrlVisitResponse is the response struct for api DescribeDcdnDomainTopUrlVisit

+ 0 - 2
services/dcdn/describe_dcdn_domain_traffic_data.go

@@ -79,8 +79,6 @@ type DescribeDcdnDomainTrafficDataRequest struct {
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
-	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge      string           `position:"Query" name:"TimeMerge"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`

+ 1 - 1
services/dcdn/describe_dcdn_domain_uv_data.go

@@ -76,11 +76,11 @@ func (client *Client) DescribeDcdnDomainUvDataWithCallback(request *DescribeDcdn
 // DescribeDcdnDomainUvDataRequest is the request struct for api DescribeDcdnDomainUvData
 // DescribeDcdnDomainUvDataRequest is the request struct for api DescribeDcdnDomainUvData
 type DescribeDcdnDomainUvDataRequest struct {
 type DescribeDcdnDomainUvDataRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	EndTime       string           `position:"Query" name:"EndTime"`
 	EndTime       string           `position:"Query" name:"EndTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	StartTime     string           `position:"Query" name:"StartTime"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnDomainUvDataResponse is the response struct for api DescribeDcdnDomainUvData
 // DescribeDcdnDomainUvDataResponse is the response struct for api DescribeDcdnDomainUvData

+ 0 - 2
services/dcdn/describe_dcdn_domain_websocket_bps_data.go

@@ -79,8 +79,6 @@ type DescribeDcdnDomainWebsocketBpsDataRequest struct {
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
-	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge      string           `position:"Query" name:"TimeMerge"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`

+ 0 - 2
services/dcdn/describe_dcdn_domain_websocket_traffic_data.go

@@ -79,8 +79,6 @@ type DescribeDcdnDomainWebsocketTrafficDataRequest struct {
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	LocationNameEn string           `position:"Query" name:"LocationNameEn"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	StartTime      string           `position:"Query" name:"StartTime"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
 	IspNameEn      string           `position:"Query" name:"IspNameEn"`
-	FixTimeGap     string           `position:"Query" name:"FixTimeGap"`
-	TimeMerge      string           `position:"Query" name:"TimeMerge"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	DomainName     string           `position:"Query" name:"DomainName"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	EndTime        string           `position:"Query" name:"EndTime"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId        requests.Integer `position:"Query" name:"OwnerId"`

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

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

+ 110 - 0
services/dcdn/describe_dcdn_ipa_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"
+)
+
+// DescribeDcdnIpaService invokes the dcdn.DescribeDcdnIpaService API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnipaservice.html
+func (client *Client) DescribeDcdnIpaService(request *DescribeDcdnIpaServiceRequest) (response *DescribeDcdnIpaServiceResponse, err error) {
+	response = CreateDescribeDcdnIpaServiceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDcdnIpaServiceWithChan invokes the dcdn.DescribeDcdnIpaService API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnipaservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnIpaServiceWithChan(request *DescribeDcdnIpaServiceRequest) (<-chan *DescribeDcdnIpaServiceResponse, <-chan error) {
+	responseChan := make(chan *DescribeDcdnIpaServiceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDcdnIpaService(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDcdnIpaServiceWithCallback invokes the dcdn.DescribeDcdnIpaService API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describedcdnipaservice.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDcdnIpaServiceWithCallback(request *DescribeDcdnIpaServiceRequest, callback func(response *DescribeDcdnIpaServiceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDcdnIpaServiceResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDcdnIpaService(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDcdnIpaServiceRequest is the request struct for api DescribeDcdnIpaService
+type DescribeDcdnIpaServiceRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeDcdnIpaServiceResponse is the response struct for api DescribeDcdnIpaService
+type DescribeDcdnIpaServiceResponse 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     OperationLocksInDescribeDcdnIpaService `json:"OperationLocks" xml:"OperationLocks"`
+}
+
+// CreateDescribeDcdnIpaServiceRequest creates a request to invoke DescribeDcdnIpaService API
+func CreateDescribeDcdnIpaServiceRequest() (request *DescribeDcdnIpaServiceRequest) {
+	request = &DescribeDcdnIpaServiceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeDcdnIpaService", "", "")
+	return
+}
+
+// CreateDescribeDcdnIpaServiceResponse creates a response to parse from DescribeDcdnIpaService response
+func CreateDescribeDcdnIpaServiceResponse() (response *DescribeDcdnIpaServiceResponse) {
+	response = &DescribeDcdnIpaServiceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 117 - 0
services/dcdn/describe_dcdn_ipa_user_domains.go

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

+ 1 - 1
services/dcdn/describe_dcdn_refresh_quota.go

@@ -76,8 +76,8 @@ func (client *Client) DescribeDcdnRefreshQuotaWithCallback(request *DescribeDcdn
 // DescribeDcdnRefreshQuotaRequest is the request struct for api DescribeDcdnRefreshQuota
 // DescribeDcdnRefreshQuotaRequest is the request struct for api DescribeDcdnRefreshQuota
 type DescribeDcdnRefreshQuotaRequest struct {
 type DescribeDcdnRefreshQuotaRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnRefreshQuotaResponse is the response struct for api DescribeDcdnRefreshQuota
 // DescribeDcdnRefreshQuotaResponse is the response struct for api DescribeDcdnRefreshQuota

+ 6 - 6
services/dcdn/describe_dcdn_refresh_tasks.go

@@ -77,16 +77,16 @@ func (client *Client) DescribeDcdnRefreshTasksWithCallback(request *DescribeDcdn
 type DescribeDcdnRefreshTasksRequest struct {
 type DescribeDcdnRefreshTasksRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	ObjectPath      string           `position:"Query" name:"ObjectPath"`
 	ObjectPath      string           `position:"Query" name:"ObjectPath"`
-	DomainName      string           `position:"Query" name:"DomainName"`
-	EndTime         string           `position:"Query" name:"EndTime"`
 	StartTime       string           `position:"Query" name:"StartTime"`
 	StartTime       string           `position:"Query" name:"StartTime"`
-	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber      requests.Integer `position:"Query" name:"PageNumber"`
 	PageNumber      requests.Integer `position:"Query" name:"PageNumber"`
 	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
 	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
 	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 	PageSize        requests.Integer `position:"Query" name:"PageSize"`
 	PageSize        requests.Integer `position:"Query" name:"PageSize"`
 	ObjectType      string           `position:"Query" name:"ObjectType"`
 	ObjectType      string           `position:"Query" name:"ObjectType"`
 	TaskId          string           `position:"Query" name:"TaskId"`
 	TaskId          string           `position:"Query" name:"TaskId"`
+	DomainName      string           `position:"Query" name:"DomainName"`
+	EndTime         string           `position:"Query" name:"EndTime"`
+	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	Status          string           `position:"Query" name:"Status"`
 	Status          string           `position:"Query" name:"Status"`
 }
 }
 
 
@@ -94,9 +94,9 @@ type DescribeDcdnRefreshTasksRequest struct {
 type DescribeDcdnRefreshTasksResponse struct {
 type DescribeDcdnRefreshTasksResponse struct {
 	*responses.BaseResponse
 	*responses.BaseResponse
 	RequestId  string `json:"RequestId" xml:"RequestId"`
 	RequestId  string `json:"RequestId" xml:"RequestId"`
-	PageNumber int    `json:"PageNumber" xml:"PageNumber"`
-	PageSize   int    `json:"PageSize" xml:"PageSize"`
-	TotalCount int    `json:"TotalCount" xml:"TotalCount"`
+	PageNumber int64  `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int64  `json:"PageSize" xml:"PageSize"`
+	TotalCount int64  `json:"TotalCount" xml:"TotalCount"`
 	Tasks      Tasks  `json:"Tasks" xml:"Tasks"`
 	Tasks      Tasks  `json:"Tasks" xml:"Tasks"`
 }
 }
 
 

+ 11 - 11
services/dcdn/describe_dcdn_service.go

@@ -76,23 +76,23 @@ func (client *Client) DescribeDcdnServiceWithCallback(request *DescribeDcdnServi
 // DescribeDcdnServiceRequest is the request struct for api DescribeDcdnService
 // DescribeDcdnServiceRequest is the request struct for api DescribeDcdnService
 type DescribeDcdnServiceRequest struct {
 type DescribeDcdnServiceRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnServiceResponse is the response struct for api DescribeDcdnService
 // DescribeDcdnServiceResponse is the response struct for api DescribeDcdnService
 type DescribeDcdnServiceResponse struct {
 type DescribeDcdnServiceResponse struct {
 	*responses.BaseResponse
 	*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"`
-	WebsocketChangingType string         `json:"WebsocketChangingType" xml:"WebsocketChangingType"`
-	WebsocketType         string         `json:"WebsocketType" xml:"WebsocketType"`
-	WebsocketChangingTime string         `json:"WebsocketChangingTime" xml:"WebsocketChangingTime"`
-	OperationLocks        OperationLocks `json:"OperationLocks" xml:"OperationLocks"`
+	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"`
+	WebsocketChangingType string                              `json:"WebsocketChangingType" xml:"WebsocketChangingType"`
+	WebsocketType         string                              `json:"WebsocketType" xml:"WebsocketType"`
+	WebsocketChangingTime string                              `json:"WebsocketChangingTime" xml:"WebsocketChangingTime"`
+	OperationLocks        OperationLocksInDescribeDcdnService `json:"OperationLocks" xml:"OperationLocks"`
 }
 }
 
 
 // CreateDescribeDcdnServiceRequest creates a request to invoke DescribeDcdnService API
 // CreateDescribeDcdnServiceRequest creates a request to invoke DescribeDcdnService API

+ 2 - 3
services/dcdn/describe_dcdn_top_domains_by_flow.go

@@ -78,7 +78,6 @@ type DescribeDcdnTopDomainsByFlowRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	StartTime string           `position:"Query" name:"StartTime"`
 	StartTime string           `position:"Query" name:"StartTime"`
 	Limit     requests.Integer `position:"Query" name:"Limit"`
 	Limit     requests.Integer `position:"Query" name:"Limit"`
-	Product   string           `position:"Query" name:"Product"`
 	EndTime   string           `position:"Query" name:"EndTime"`
 	EndTime   string           `position:"Query" name:"EndTime"`
 	OwnerId   requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId   requests.Integer `position:"Query" name:"OwnerId"`
 }
 }
@@ -89,8 +88,8 @@ type DescribeDcdnTopDomainsByFlowResponse struct {
 	RequestId         string     `json:"RequestId" xml:"RequestId"`
 	RequestId         string     `json:"RequestId" xml:"RequestId"`
 	StartTime         string     `json:"StartTime" xml:"StartTime"`
 	StartTime         string     `json:"StartTime" xml:"StartTime"`
 	EndTime           string     `json:"EndTime" xml:"EndTime"`
 	EndTime           string     `json:"EndTime" xml:"EndTime"`
-	DomainCount       int        `json:"DomainCount" xml:"DomainCount"`
-	DomainOnlineCount int        `json:"DomainOnlineCount" xml:"DomainOnlineCount"`
+	DomainCount       int64      `json:"DomainCount" xml:"DomainCount"`
+	DomainOnlineCount int64      `json:"DomainOnlineCount" xml:"DomainOnlineCount"`
 	TopDomains        TopDomains `json:"TopDomains" xml:"TopDomains"`
 	TopDomains        TopDomains `json:"TopDomains" xml:"TopDomains"`
 }
 }
 
 

+ 9 - 7
services/dcdn/describe_dcdn_user_domains.go

@@ -76,27 +76,29 @@ func (client *Client) DescribeDcdnUserDomainsWithCallback(request *DescribeDcdnU
 // DescribeDcdnUserDomainsRequest is the request struct for api DescribeDcdnUserDomains
 // DescribeDcdnUserDomainsRequest is the request struct for api DescribeDcdnUserDomains
 type DescribeDcdnUserDomainsRequest struct {
 type DescribeDcdnUserDomainsRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	FuncFilter       string           `position:"Query" name:"FuncFilter"`
+	PageNumber       requests.Integer `position:"Query" name:"PageNumber"`
 	CheckDomainShow  requests.Boolean `position:"Query" name:"CheckDomainShow"`
 	CheckDomainShow  requests.Boolean `position:"Query" name:"CheckDomainShow"`
 	ResourceGroupId  string           `position:"Query" name:"ResourceGroupId"`
 	ResourceGroupId  string           `position:"Query" name:"ResourceGroupId"`
 	SecurityToken    string           `position:"Query" name:"SecurityToken"`
 	SecurityToken    string           `position:"Query" name:"SecurityToken"`
+	ChangeEndTime    string           `position:"Query" name:"ChangeEndTime"`
 	PageSize         requests.Integer `position:"Query" name:"PageSize"`
 	PageSize         requests.Integer `position:"Query" name:"PageSize"`
+	FuncFilter       string           `position:"Query" name:"FuncFilter"`
 	DomainName       string           `position:"Query" name:"DomainName"`
 	DomainName       string           `position:"Query" name:"DomainName"`
 	OwnerId          requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId          requests.Integer `position:"Query" name:"OwnerId"`
 	FuncId           string           `position:"Query" name:"FuncId"`
 	FuncId           string           `position:"Query" name:"FuncId"`
-	PageNumber       requests.Integer `position:"Query" name:"PageNumber"`
 	DomainStatus     string           `position:"Query" name:"DomainStatus"`
 	DomainStatus     string           `position:"Query" name:"DomainStatus"`
 	DomainSearchType string           `position:"Query" name:"DomainSearchType"`
 	DomainSearchType string           `position:"Query" name:"DomainSearchType"`
+	ChangeStartTime  string           `position:"Query" name:"ChangeStartTime"`
 }
 }
 
 
 // DescribeDcdnUserDomainsResponse is the response struct for api DescribeDcdnUserDomains
 // DescribeDcdnUserDomainsResponse is the response struct for api DescribeDcdnUserDomains
 type DescribeDcdnUserDomainsResponse struct {
 type DescribeDcdnUserDomainsResponse struct {
 	*responses.BaseResponse
 	*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"`
-	Domains    Domains `json:"Domains" xml:"Domains"`
+	RequestId  string                           `json:"RequestId" xml:"RequestId"`
+	PageNumber int64                            `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int64                            `json:"PageSize" xml:"PageSize"`
+	TotalCount int64                            `json:"TotalCount" xml:"TotalCount"`
+	Domains    DomainsInDescribeDcdnUserDomains `json:"Domains" xml:"Domains"`
 }
 }
 
 
 // CreateDescribeDcdnUserDomainsRequest creates a request to invoke DescribeDcdnUserDomains API
 // CreateDescribeDcdnUserDomainsRequest creates a request to invoke DescribeDcdnUserDomains API

+ 1 - 1
services/dcdn/describe_dcdn_user_quota.go

@@ -76,8 +76,8 @@ func (client *Client) DescribeDcdnUserQuotaWithCallback(request *DescribeDcdnUse
 // DescribeDcdnUserQuotaRequest is the request struct for api DescribeDcdnUserQuota
 // DescribeDcdnUserQuotaRequest is the request struct for api DescribeDcdnUserQuota
 type DescribeDcdnUserQuotaRequest struct {
 type DescribeDcdnUserQuotaRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnUserQuotaResponse is the response struct for api DescribeDcdnUserQuota
 // DescribeDcdnUserQuotaResponse is the response struct for api DescribeDcdnUserQuota

+ 1 - 1
services/dcdn/describe_dcdn_user_resource_package.go

@@ -76,8 +76,8 @@ func (client *Client) DescribeDcdnUserResourcePackageWithCallback(request *Descr
 // DescribeDcdnUserResourcePackageRequest is the request struct for api DescribeDcdnUserResourcePackage
 // DescribeDcdnUserResourcePackageRequest is the request struct for api DescribeDcdnUserResourcePackage
 type DescribeDcdnUserResourcePackageRequest struct {
 type DescribeDcdnUserResourcePackageRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeDcdnUserResourcePackageResponse is the response struct for api DescribeDcdnUserResourcePackage
 // DescribeDcdnUserResourcePackageResponse is the response struct for api DescribeDcdnUserResourcePackage

+ 108 - 0
services/dcdn/describe_user_dcdn_ipa_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"
+)
+
+// DescribeUserDcdnIpaStatus invokes the dcdn.DescribeUserDcdnIpaStatus API synchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnipastatus.html
+func (client *Client) DescribeUserDcdnIpaStatus(request *DescribeUserDcdnIpaStatusRequest) (response *DescribeUserDcdnIpaStatusResponse, err error) {
+	response = CreateDescribeUserDcdnIpaStatusResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeUserDcdnIpaStatusWithChan invokes the dcdn.DescribeUserDcdnIpaStatus API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnipastatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUserDcdnIpaStatusWithChan(request *DescribeUserDcdnIpaStatusRequest) (<-chan *DescribeUserDcdnIpaStatusResponse, <-chan error) {
+	responseChan := make(chan *DescribeUserDcdnIpaStatusResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeUserDcdnIpaStatus(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeUserDcdnIpaStatusWithCallback invokes the dcdn.DescribeUserDcdnIpaStatus API asynchronously
+// api document: https://help.aliyun.com/api/dcdn/describeuserdcdnipastatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUserDcdnIpaStatusWithCallback(request *DescribeUserDcdnIpaStatusRequest, callback func(response *DescribeUserDcdnIpaStatusResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeUserDcdnIpaStatusResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeUserDcdnIpaStatus(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeUserDcdnIpaStatusRequest is the request struct for api DescribeUserDcdnIpaStatus
+type DescribeUserDcdnIpaStatusRequest struct {
+	*requests.RpcRequest
+	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
+}
+
+// DescribeUserDcdnIpaStatusResponse is the response struct for api DescribeUserDcdnIpaStatus
+type DescribeUserDcdnIpaStatusResponse 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"`
+}
+
+// CreateDescribeUserDcdnIpaStatusRequest creates a request to invoke DescribeUserDcdnIpaStatus API
+func CreateDescribeUserDcdnIpaStatusRequest() (request *DescribeUserDcdnIpaStatusRequest) {
+	request = &DescribeUserDcdnIpaStatusRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("dcdn", "2018-01-15", "DescribeUserDcdnIpaStatus", "", "")
+	return
+}
+
+// CreateDescribeUserDcdnIpaStatusResponse creates a response to parse from DescribeUserDcdnIpaStatus response
+func CreateDescribeUserDcdnIpaStatusResponse() (response *DescribeUserDcdnIpaStatusResponse) {
+	response = &DescribeUserDcdnIpaStatusResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 1 - 1
services/dcdn/describe_user_dcdn_status.go

@@ -76,8 +76,8 @@ func (client *Client) DescribeUserDcdnStatusWithCallback(request *DescribeUserDc
 // DescribeUserDcdnStatusRequest is the request struct for api DescribeUserDcdnStatus
 // DescribeUserDcdnStatusRequest is the request struct for api DescribeUserDcdnStatus
 type DescribeUserDcdnStatusRequest struct {
 type DescribeUserDcdnStatusRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // DescribeUserDcdnStatusResponse is the response struct for api DescribeUserDcdnStatus
 // DescribeUserDcdnStatusResponse is the response struct for api DescribeUserDcdnStatus

+ 75 - 0
services/dcdn/endpoint.go

@@ -0,0 +1,75 @@
+package dcdn
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{
+			"cn-shanghai-internal-test-1": "dcdn.aliyuncs.com",
+			"cn-shenzhen-su18-b01":        "dcdn.aliyuncs.com",
+			"cn-beijing":                  "dcdn.aliyuncs.com",
+			"cn-shanghai-inner":           "dcdn.aliyuncs.com",
+			"cn-hangzhou-internal-prod-1": "dcdn.aliyuncs.com",
+			"cn-north-2-gov-1":            "dcdn.aliyuncs.com",
+			"cn-yushanfang":               "dcdn.aliyuncs.com",
+			"cn-qingdao-nebula":           "dcdn.aliyuncs.com",
+			"cn-beijing-finance-pop":      "dcdn.aliyuncs.com",
+			"cn-wuhan":                    "dcdn.aliyuncs.com",
+			"cn-zhangjiakou":              "dcdn.aliyuncs.com",
+			"us-west-1":                   "dcdn.aliyuncs.com",
+			"rus-west-1-pop":              "dcdn.aliyuncs.com",
+			"cn-shanghai-et15-b01":        "dcdn.aliyuncs.com",
+			"cn-hangzhou-bj-b01":          "dcdn.aliyuncs.com",
+			"cn-zhangbei-na61-b01":        "dcdn.aliyuncs.com",
+			"ap-northeast-1":              "dcdn.aliyuncs.com",
+			"cn-shanghai-et2-b01":         "dcdn.aliyuncs.com",
+			"ap-southeast-1":              "dcdn.aliyuncs.com",
+			"ap-southeast-2":              "dcdn.aliyuncs.com",
+			"ap-southeast-3":              "dcdn.aliyuncs.com",
+			"ap-southeast-5":              "dcdn.aliyuncs.com",
+			"us-east-1":                   "dcdn.aliyuncs.com",
+			"cn-shenzhen-inner":           "dcdn.aliyuncs.com",
+			"cn-zhangjiakou-na62-a01":     "dcdn.aliyuncs.com",
+			"cn-beijing-gov-1":            "dcdn.aliyuncs.com",
+			"ap-south-1":                  "dcdn.aliyuncs.com",
+			"cn-shenzhen-st4-d01":         "dcdn.aliyuncs.com",
+			"cn-haidian-cm12-c01":         "dcdn.aliyuncs.com",
+			"cn-qingdao":                  "dcdn.aliyuncs.com",
+			"cn-hongkong-finance-pop":     "dcdn.aliyuncs.com",
+			"cn-shanghai":                 "dcdn.aliyuncs.com",
+			"cn-shanghai-finance-1":       "dcdn.aliyuncs.com",
+			"cn-hongkong":                 "dcdn.aliyuncs.com",
+			"eu-central-1":                "dcdn.aliyuncs.com",
+			"cn-shenzhen":                 "dcdn.aliyuncs.com",
+			"cn-zhengzhou-nebula-1":       "dcdn.aliyuncs.com",
+			"eu-west-1":                   "dcdn.aliyuncs.com",
+			"cn-hangzhou-internal-test-1": "dcdn.aliyuncs.com",
+			"eu-west-1-oxs":               "dcdn.aliyuncs.com",
+			"cn-beijing-finance-1":        "dcdn.aliyuncs.com",
+			"cn-hangzhou-internal-test-3": "dcdn.aliyuncs.com",
+			"cn-hangzhou-internal-test-2": "dcdn.aliyuncs.com",
+			"cn-shenzhen-finance-1":       "dcdn.aliyuncs.com",
+			"me-east-1":                   "dcdn.aliyuncs.com",
+			"cn-chengdu":                  "dcdn.aliyuncs.com",
+			"cn-hangzhou-test-306":        "dcdn.aliyuncs.com",
+			"cn-hangzhou-finance":         "dcdn.aliyuncs.com",
+			"cn-beijing-nu16-b01":         "dcdn.aliyuncs.com",
+			"cn-edge-1":                   "dcdn.aliyuncs.com",
+			"cn-huhehaote":                "dcdn.aliyuncs.com",
+			"cn-fujian":                   "dcdn.aliyuncs.com",
+			"ap-northeast-2-pop":          "dcdn.aliyuncs.com",
+			"cn-hangzhou":                 "dcdn.aliyuncs.com",
+		}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

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

+ 1 - 1
services/dcdn/preload_dcdn_object_caches.go

@@ -77,9 +77,9 @@ func (client *Client) PreloadDcdnObjectCachesWithCallback(request *PreloadDcdnOb
 type PreloadDcdnObjectCachesRequest struct {
 type PreloadDcdnObjectCachesRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	Area          string           `position:"Query" name:"Area"`
 	Area          string           `position:"Query" name:"Area"`
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	ObjectPath    string           `position:"Query" name:"ObjectPath"`
 	ObjectPath    string           `position:"Query" name:"ObjectPath"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // PreloadDcdnObjectCachesResponse is the response struct for api PreloadDcdnObjectCaches
 // PreloadDcdnObjectCachesResponse is the response struct for api PreloadDcdnObjectCaches

+ 1 - 1
services/dcdn/refresh_dcdn_object_caches.go

@@ -76,9 +76,9 @@ func (client *Client) RefreshDcdnObjectCachesWithCallback(request *RefreshDcdnOb
 // RefreshDcdnObjectCachesRequest is the request struct for api RefreshDcdnObjectCaches
 // RefreshDcdnObjectCachesRequest is the request struct for api RefreshDcdnObjectCaches
 type RefreshDcdnObjectCachesRequest struct {
 type RefreshDcdnObjectCachesRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	ObjectPath    string           `position:"Query" name:"ObjectPath"`
 	ObjectPath    string           `position:"Query" name:"ObjectPath"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	ObjectType    string           `position:"Query" name:"ObjectType"`
 	ObjectType    string           `position:"Query" name:"ObjectType"`
 }
 }
 
 

+ 4 - 4
services/dcdn/set_dcdn_domain_certificate.go

@@ -76,16 +76,16 @@ func (client *Client) SetDcdnDomainCertificateWithCallback(request *SetDcdnDomai
 // SetDcdnDomainCertificateRequest is the request struct for api SetDcdnDomainCertificate
 // SetDcdnDomainCertificateRequest is the request struct for api SetDcdnDomainCertificate
 type SetDcdnDomainCertificateRequest struct {
 type SetDcdnDomainCertificateRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	ForceSet      string           `position:"Query" name:"ForceSet"`
+	SSLProtocol   string           `position:"Query" name:"SSLProtocol"`
 	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	CertType      string           `position:"Query" name:"CertType"`
 	CertType      string           `position:"Query" name:"CertType"`
-	SSLPub        string           `position:"Query" name:"SSLPub"`
+	SSLPri        string           `position:"Query" name:"SSLPri"`
+	ForceSet      string           `position:"Query" name:"ForceSet"`
 	CertName      string           `position:"Query" name:"CertName"`
 	CertName      string           `position:"Query" name:"CertName"`
-	SSLProtocol   string           `position:"Query" name:"SSLProtocol"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SSLPub        string           `position:"Query" name:"SSLPub"`
 	Region        string           `position:"Query" name:"Region"`
 	Region        string           `position:"Query" name:"Region"`
-	SSLPri        string           `position:"Query" name:"SSLPri"`
 }
 }
 
 
 // SetDcdnDomainCertificateResponse is the response struct for api SetDcdnDomainCertificate
 // SetDcdnDomainCertificateResponse is the response struct for api SetDcdnDomainCertificate

+ 1 - 1
services/dcdn/start_dcdn_domain.go

@@ -76,9 +76,9 @@ func (client *Client) StartDcdnDomainWithCallback(request *StartDcdnDomainReques
 // StartDcdnDomainRequest is the request struct for api StartDcdnDomain
 // StartDcdnDomainRequest is the request struct for api StartDcdnDomain
 type StartDcdnDomainRequest struct {
 type StartDcdnDomainRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // StartDcdnDomainResponse is the response struct for api StartDcdnDomain
 // StartDcdnDomainResponse is the response struct for api StartDcdnDomain

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

+ 1 - 1
services/dcdn/stop_dcdn_domain.go

@@ -76,9 +76,9 @@ func (client *Client) StopDcdnDomainWithCallback(request *StopDcdnDomainRequest,
 // StopDcdnDomainRequest is the request struct for api StopDcdnDomain
 // StopDcdnDomainRequest is the request struct for api StopDcdnDomain
 type StopDcdnDomainRequest struct {
 type StopDcdnDomainRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
-	SecurityToken string           `position:"Query" name:"SecurityToken"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	DomainName    string           `position:"Query" name:"DomainName"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId       requests.Integer `position:"Query" name:"OwnerId"`
+	SecurityToken string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // StopDcdnDomainResponse is the response struct for api StopDcdnDomain
 // StopDcdnDomainResponse is the response struct for api StopDcdnDomain

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

+ 21 - 0
services/dcdn/struct_bps_data_per_interval_in_describe_dcdn_domain_ipa_bps_data.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.
+
+// BpsDataPerIntervalInDescribeDcdnDomainIpaBpsData is a nested struct in dcdn response
+type BpsDataPerIntervalInDescribeDcdnDomainIpaBpsData struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 2 - 2
services/dcdn/struct_cert.go

@@ -18,9 +18,9 @@ package dcdn
 // Cert is a nested struct in dcdn response
 // Cert is a nested struct in dcdn response
 type Cert struct {
 type Cert struct {
 	CertName    string `json:"CertName" xml:"CertName"`
 	CertName    string `json:"CertName" xml:"CertName"`
-	CertId      int    `json:"CertId" xml:"CertId"`
+	CertId      int64  `json:"CertId" xml:"CertId"`
 	Fingerprint string `json:"Fingerprint" xml:"Fingerprint"`
 	Fingerprint string `json:"Fingerprint" xml:"Fingerprint"`
 	Common      string `json:"Common" xml:"Common"`
 	Common      string `json:"Common" xml:"Common"`
 	Issuer      string `json:"Issuer" xml:"Issuer"`
 	Issuer      string `json:"Issuer" xml:"Issuer"`
-	LastTime    int    `json:"LastTime" xml:"LastTime"`
+	LastTime    int64  `json:"LastTime" xml:"LastTime"`
 }
 }

+ 5 - 3
services/dcdn/struct_data_module.go

@@ -28,6 +28,7 @@ type DataModule struct {
 	StaticHttpsBps                   float64                          `json:"StaticHttpsBps" xml:"StaticHttpsBps"`
 	StaticHttpsBps                   float64                          `json:"StaticHttpsBps" xml:"StaticHttpsBps"`
 	OriginTraffic                    float64                          `json:"OriginTraffic" xml:"OriginTraffic"`
 	OriginTraffic                    float64                          `json:"OriginTraffic" xml:"OriginTraffic"`
 	DynamicHttpAcc                   float64                          `json:"DynamicHttpAcc" xml:"DynamicHttpAcc"`
 	DynamicHttpAcc                   float64                          `json:"DynamicHttpAcc" xml:"DynamicHttpAcc"`
+	IpaTraffic                       float64                          `json:"IpaTraffic" xml:"IpaTraffic"`
 	StaticHttpsTraffic               float64                          `json:"StaticHttpsTraffic" xml:"StaticHttpsTraffic"`
 	StaticHttpsTraffic               float64                          `json:"StaticHttpsTraffic" xml:"StaticHttpsTraffic"`
 	TimeStamp                        string                           `json:"TimeStamp" xml:"TimeStamp"`
 	TimeStamp                        string                           `json:"TimeStamp" xml:"TimeStamp"`
 	Acc                              float64                          `json:"Acc" xml:"Acc"`
 	Acc                              float64                          `json:"Acc" xml:"Acc"`
@@ -41,17 +42,18 @@ type DataModule struct {
 	OriginBps                        float64                          `json:"OriginBps" xml:"OriginBps"`
 	OriginBps                        float64                          `json:"OriginBps" xml:"OriginBps"`
 	Bps                              float64                          `json:"Bps" xml:"Bps"`
 	Bps                              float64                          `json:"Bps" xml:"Bps"`
 	DynamicHttpBps                   float64                          `json:"DynamicHttpBps" xml:"DynamicHttpBps"`
 	DynamicHttpBps                   float64                          `json:"DynamicHttpBps" xml:"DynamicHttpBps"`
-	StaticHttpOriginTraffic          float64                          `json:"StaticHttpOriginTraffic" xml:"StaticHttpOriginTraffic"`
 	StaticHttpOriginBps              float64                          `json:"StaticHttpOriginBps" xml:"StaticHttpOriginBps"`
 	StaticHttpOriginBps              float64                          `json:"StaticHttpOriginBps" xml:"StaticHttpOriginBps"`
+	StaticHttpOriginTraffic          float64                          `json:"StaticHttpOriginTraffic" xml:"StaticHttpOriginTraffic"`
 	Value                            string                           `json:"Value" xml:"Value"`
 	Value                            string                           `json:"Value" xml:"Value"`
 	Qps                              float64                          `json:"Qps" xml:"Qps"`
 	Qps                              float64                          `json:"Qps" xml:"Qps"`
-	DynamicHttpsTraffic              float64                          `json:"DynamicHttpsTraffic" xml:"DynamicHttpsTraffic"`
-	StaticHttpsQps                   float64                          `json:"StaticHttpsQps" xml:"StaticHttpsQps"`
 	DynamicHttpsOriginTraffic        float64                          `json:"DynamicHttpsOriginTraffic" xml:"DynamicHttpsOriginTraffic"`
 	DynamicHttpsOriginTraffic        float64                          `json:"DynamicHttpsOriginTraffic" xml:"DynamicHttpsOriginTraffic"`
+	StaticHttpsQps                   float64                          `json:"StaticHttpsQps" xml:"StaticHttpsQps"`
+	DynamicHttpsTraffic              float64                          `json:"DynamicHttpsTraffic" xml:"DynamicHttpsTraffic"`
 	StaticHttpsOriginBps             float64                          `json:"StaticHttpsOriginBps" xml:"StaticHttpsOriginBps"`
 	StaticHttpsOriginBps             float64                          `json:"StaticHttpsOriginBps" xml:"StaticHttpsOriginBps"`
 	ByteHitRate                      float64                          `json:"ByteHitRate" xml:"ByteHitRate"`
 	ByteHitRate                      float64                          `json:"ByteHitRate" xml:"ByteHitRate"`
 	DynamicHttpsQps                  float64                          `json:"DynamicHttpsQps" xml:"DynamicHttpsQps"`
 	DynamicHttpsQps                  float64                          `json:"DynamicHttpsQps" xml:"DynamicHttpsQps"`
 	DynamicHttpQps                   float64                          `json:"DynamicHttpQps" xml:"DynamicHttpQps"`
 	DynamicHttpQps                   float64                          `json:"DynamicHttpQps" xml:"DynamicHttpQps"`
+	IpaBps                           float64                          `json:"IpaBps" xml:"IpaBps"`
 	Traffic                          float64                          `json:"Traffic" xml:"Traffic"`
 	Traffic                          float64                          `json:"Traffic" xml:"Traffic"`
 	HttpCodeDataPerInterval          HttpCodeDataPerInterval          `json:"HttpCodeDataPerInterval" xml:"HttpCodeDataPerInterval"`
 	HttpCodeDataPerInterval          HttpCodeDataPerInterval          `json:"HttpCodeDataPerInterval" xml:"HttpCodeDataPerInterval"`
 	WebsocketHttpCodeDataPerInterval WebsocketHttpCodeDataPerInterval `json:"WebsocketHttpCodeDataPerInterval" xml:"WebsocketHttpCodeDataPerInterval"`
 	WebsocketHttpCodeDataPerInterval WebsocketHttpCodeDataPerInterval `json:"WebsocketHttpCodeDataPerInterval" xml:"WebsocketHttpCodeDataPerInterval"`

+ 4 - 4
services/dcdn/struct_domain_config.go

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

+ 2 - 2
services/dcdn/struct_domain_configs.go → services/dcdn/struct_domain_configs_in_describe_dcdn_domain_configs.go

@@ -15,7 +15,7 @@ package dcdn
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 // 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 {
+// DomainConfigsInDescribeDcdnDomainConfigs is a nested struct in dcdn response
+type DomainConfigsInDescribeDcdnDomainConfigs struct {
 	DomainConfig []DomainConfig `json:"DomainConfig" xml:"DomainConfig"`
 	DomainConfig []DomainConfig `json:"DomainConfig" xml:"DomainConfig"`
 }
 }

+ 21 - 0
services/dcdn/struct_domain_configs_in_describe_dcdn_ipa_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.
+
+// DomainConfigsInDescribeDcdnIpaDomainConfigs is a nested struct in dcdn response
+type DomainConfigsInDescribeDcdnIpaDomainConfigs struct {
+	DomainConfig []DomainConfig `json:"DomainConfig" xml:"DomainConfig"`
+}

+ 6 - 6
services/dcdn/struct_domain_detail.go

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

+ 1 - 1
services/dcdn/struct_domain_log_detail.go

@@ -17,7 +17,7 @@ package dcdn
 
 
 // DomainLogDetail is a nested struct in dcdn response
 // DomainLogDetail is a nested struct in dcdn response
 type DomainLogDetail struct {
 type DomainLogDetail struct {
-	LogCount  int       `json:"LogCount" xml:"LogCount"`
+	LogCount  int64     `json:"LogCount" xml:"LogCount"`
 	PageInfos PageInfos `json:"PageInfos" xml:"PageInfos"`
 	PageInfos PageInfos `json:"PageInfos" xml:"PageInfos"`
 	LogInfos  LogInfos  `json:"LogInfos" xml:"LogInfos"`
 	LogInfos  LogInfos  `json:"LogInfos" xml:"LogInfos"`
 }
 }

+ 21 - 0
services/dcdn/struct_domains_in_describe_dcdn_ipa_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.
+
+// DomainsInDescribeDcdnIpaUserDomains is a nested struct in dcdn response
+type DomainsInDescribeDcdnIpaUserDomains struct {
+	PageData []PageData `json:"PageData" xml:"PageData"`
+}

+ 2 - 2
services/dcdn/struct_domains.go → services/dcdn/struct_domains_in_describe_dcdn_user_domains.go

@@ -15,7 +15,7 @@ package dcdn
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 // 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 {
+// DomainsInDescribeDcdnUserDomains is a nested struct in dcdn response
+type DomainsInDescribeDcdnUserDomains struct {
 	PageData []PageData `json:"PageData" xml:"PageData"`
 	PageData []PageData `json:"PageData" xml:"PageData"`
 }
 }

+ 2 - 2
services/dcdn/struct_function_args.go → services/dcdn/struct_function_args_in_describe_dcdn_domain_configs.go

@@ -15,7 +15,7 @@ package dcdn
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 // 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 {
+// FunctionArgsInDescribeDcdnDomainConfigs is a nested struct in dcdn response
+type FunctionArgsInDescribeDcdnDomainConfigs struct {
 	FunctionArg []FunctionArg `json:"FunctionArg" xml:"FunctionArg"`
 	FunctionArg []FunctionArg `json:"FunctionArg" xml:"FunctionArg"`
 }
 }

+ 21 - 0
services/dcdn/struct_function_args_in_describe_dcdn_ipa_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.
+
+// FunctionArgsInDescribeDcdnIpaDomainConfigs is a nested struct in dcdn response
+type FunctionArgsInDescribeDcdnIpaDomainConfigs struct {
+	FunctionArg []FunctionArg `json:"FunctionArg" xml:"FunctionArg"`
+}

+ 1 - 1
services/dcdn/struct_log_info_detail.go

@@ -19,7 +19,7 @@ package dcdn
 type LogInfoDetail struct {
 type LogInfoDetail struct {
 	LogName   string `json:"LogName" xml:"LogName"`
 	LogName   string `json:"LogName" xml:"LogName"`
 	LogPath   string `json:"LogPath" xml:"LogPath"`
 	LogPath   string `json:"LogPath" xml:"LogPath"`
-	LogSize   int    `json:"LogSize" xml:"LogSize"`
+	LogSize   int64  `json:"LogSize" xml:"LogSize"`
 	StartTime string `json:"StartTime" xml:"StartTime"`
 	StartTime string `json:"StartTime" xml:"StartTime"`
 	EndTime   string `json:"EndTime" xml:"EndTime"`
 	EndTime   string `json:"EndTime" xml:"EndTime"`
 }
 }

+ 21 - 0
services/dcdn/struct_operation_locks_in_describe_dcdn_ipa_service.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.
+
+// OperationLocksInDescribeDcdnIpaService is a nested struct in dcdn response
+type OperationLocksInDescribeDcdnIpaService struct {
+	LockReason []LockReason `json:"LockReason" xml:"LockReason"`
+}

+ 2 - 2
services/dcdn/struct_operation_locks.go → services/dcdn/struct_operation_locks_in_describe_dcdn_service.go

@@ -15,7 +15,7 @@ package dcdn
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 // 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 {
+// OperationLocksInDescribeDcdnService is a nested struct in dcdn response
+type OperationLocksInDescribeDcdnService struct {
 	LockReason []LockReason `json:"LockReason" xml:"LockReason"`
 	LockReason []LockReason `json:"LockReason" xml:"LockReason"`
 }
 }

+ 10 - 10
services/dcdn/struct_page_data.go

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

+ 3 - 3
services/dcdn/struct_page_infos.go

@@ -17,7 +17,7 @@ package dcdn
 
 
 // PageInfos is a nested struct in dcdn response
 // PageInfos is a nested struct in dcdn response
 type PageInfos struct {
 type PageInfos struct {
-	PageIndex int `json:"PageIndex" xml:"PageIndex"`
-	PageSize  int `json:"PageSize" xml:"PageSize"`
-	Total     int `json:"Total" xml:"Total"`
+	PageIndex int64 `json:"PageIndex" xml:"PageIndex"`
+	PageSize  int64 `json:"PageSize" xml:"PageSize"`
+	Total     int64 `json:"Total" xml:"Total"`
 }
 }

+ 1 - 1
services/dcdn/struct_pv_data_interval.go

@@ -17,5 +17,5 @@ package dcdn
 
 
 // PvDataInterval is a nested struct in dcdn response
 // PvDataInterval is a nested struct in dcdn response
 type PvDataInterval struct {
 type PvDataInterval struct {
-	UsageData []UsageDataInDescribeDcdnDomainPvData `json:"UsageData" xml:"UsageData"`
+	UsageData []UsageData `json:"UsageData" xml:"UsageData"`
 }
 }

+ 1 - 1
services/dcdn/struct_real_time_http_code_data.go

@@ -17,5 +17,5 @@ package dcdn
 
 
 // RealTimeHttpCodeData is a nested struct in dcdn response
 // RealTimeHttpCodeData is a nested struct in dcdn response
 type RealTimeHttpCodeData struct {
 type RealTimeHttpCodeData struct {
-	UsageData []UsageData `json:"UsageData" xml:"UsageData"`
+	UsageData []UsageDataInDescribeDcdnDomainRealTimeHttpCodeData `json:"UsageData" xml:"UsageData"`
 }
 }

+ 21 - 0
services/dcdn/struct_sources_in_describe_dcdn_ipa_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.
+
+// SourcesInDescribeDcdnIpaDomainDetail is a nested struct in dcdn response
+type SourcesInDescribeDcdnIpaDomainDetail struct {
+	Source []Source `json:"Source" xml:"Source"`
+}

+ 21 - 0
services/dcdn/struct_sources_in_describe_dcdn_ipa_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.
+
+// SourcesInDescribeDcdnIpaUserDomains is a nested struct in dcdn response
+type SourcesInDescribeDcdnIpaUserDomains struct {
+	Source []Source `json:"Source" xml:"Source"`
+}

+ 3 - 3
services/dcdn/struct_top_domain.go

@@ -18,10 +18,10 @@ package dcdn
 // TopDomain is a nested struct in dcdn response
 // TopDomain is a nested struct in dcdn response
 type TopDomain struct {
 type TopDomain struct {
 	DomainName     string `json:"DomainName" xml:"DomainName"`
 	DomainName     string `json:"DomainName" xml:"DomainName"`
-	Rank           int    `json:"Rank" xml:"Rank"`
+	Rank           int64  `json:"Rank" xml:"Rank"`
 	TotalTraffic   string `json:"TotalTraffic" xml:"TotalTraffic"`
 	TotalTraffic   string `json:"TotalTraffic" xml:"TotalTraffic"`
 	TrafficPercent string `json:"TrafficPercent" xml:"TrafficPercent"`
 	TrafficPercent string `json:"TrafficPercent" xml:"TrafficPercent"`
-	MaxBps         int    `json:"MaxBps" xml:"MaxBps"`
+	MaxBps         int64  `json:"MaxBps" xml:"MaxBps"`
 	MaxBpsTime     string `json:"MaxBpsTime" xml:"MaxBpsTime"`
 	MaxBpsTime     string `json:"MaxBpsTime" xml:"MaxBpsTime"`
-	TotalAccess    int    `json:"TotalAccess" xml:"TotalAccess"`
+	TotalAccess    int64  `json:"TotalAccess" xml:"TotalAccess"`
 }
 }

+ 21 - 0
services/dcdn/struct_traffic_data_per_interval_in_describe_dcdn_domain_ipa_traffic_data.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.
+
+// TrafficDataPerIntervalInDescribeDcdnDomainIpaTrafficData is a nested struct in dcdn response
+type TrafficDataPerIntervalInDescribeDcdnDomainIpaTrafficData struct {
+	DataModule []DataModule `json:"DataModule" xml:"DataModule"`
+}

+ 2 - 2
services/dcdn/struct_usage_data.go

@@ -17,6 +17,6 @@ package dcdn
 
 
 // UsageData is a nested struct in dcdn response
 // UsageData is a nested struct in dcdn response
 type UsageData struct {
 type UsageData struct {
-	TimeStamp string                                        `json:"TimeStamp" xml:"TimeStamp"`
-	Value     ValueInDescribeDcdnDomainRealTimeHttpCodeData `json:"Value" xml:"Value"`
+	Value     string `json:"Value" xml:"Value"`
+	TimeStamp string `json:"TimeStamp" xml:"TimeStamp"`
 }
 }

+ 0 - 22
services/dcdn/struct_usage_data_in_describe_dcdn_domain_pv_data.go

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

+ 22 - 0
services/dcdn/struct_usage_data_in_describe_dcdn_domain_real_time_http_code_data.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.
+
+// UsageDataInDescribeDcdnDomainRealTimeHttpCodeData is a nested struct in dcdn response
+type UsageDataInDescribeDcdnDomainRealTimeHttpCodeData struct {
+	TimeStamp string                                        `json:"TimeStamp" xml:"TimeStamp"`
+	Value     ValueInDescribeDcdnDomainRealTimeHttpCodeData `json:"Value" xml:"Value"`
+}

+ 0 - 22
services/dcdn/struct_usage_data_in_describe_dcdn_domain_uv_data.go

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

+ 1 - 1
services/dcdn/struct_uv_data_interval.go

@@ -17,5 +17,5 @@ package dcdn
 
 
 // UvDataInterval is a nested struct in dcdn response
 // UvDataInterval is a nested struct in dcdn response
 type UvDataInterval struct {
 type UvDataInterval struct {
-	UsageData []UsageDataInDescribeDcdnDomainUvData `json:"UsageData" xml:"UsageData"`
+	UsageData []UsageData `json:"UsageData" xml:"UsageData"`
 }
 }

+ 2 - 2
services/dcdn/update_dcdn_domain.go

@@ -77,11 +77,11 @@ func (client *Client) UpdateDcdnDomainWithCallback(request *UpdateDcdnDomainRequ
 type UpdateDcdnDomainRequest struct {
 type UpdateDcdnDomainRequest struct {
 	*requests.RpcRequest
 	*requests.RpcRequest
 	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
 	TopLevelDomain  string           `position:"Query" name:"TopLevelDomain"`
-	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
 	Sources         string           `position:"Query" name:"Sources"`
 	Sources         string           `position:"Query" name:"Sources"`
-	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	DomainName      string           `position:"Query" name:"DomainName"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
 	OwnerId         requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceGroupId string           `position:"Query" name:"ResourceGroupId"`
+	SecurityToken   string           `position:"Query" name:"SecurityToken"`
 }
 }
 
 
 // UpdateDcdnDomainResponse is the response struct for api UpdateDcdnDomain
 // UpdateDcdnDomainResponse is the response struct for api UpdateDcdnDomain

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