浏览代码

VPC SDK Auto Released By hejian.hj,Version:1.27.0

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy 7 年之前
父节点
当前提交
646a590330
共有 100 个文件被更改,包括 2322 次插入386 次删除
  1. 5 0
      ChangeLog.txt
  2. 2 2
      services/vpc/activate_router_interface.go
  3. 108 0
      services/vpc/active_flow_log.go
  4. 4 4
      services/vpc/add_bandwidth_package_ips.go
  5. 5 5
      services/vpc/add_bgp_network.go
  6. 3 3
      services/vpc/add_common_bandwidth_package_ip.go
  7. 3 3
      services/vpc/add_global_acceleration_instance_ip.go
  8. 8 8
      services/vpc/allocate_eip_address.go
  9. 4 4
      services/vpc/associate_eip_address.go
  10. 4 4
      services/vpc/associate_global_acceleration_instance.go
  11. 5 5
      services/vpc/associate_ha_vip.go
  12. 8 8
      services/vpc/associate_physical_connection_to_virtual_border_router.go
  13. 109 0
      services/vpc/associate_route_table.go
  14. 3 3
      services/vpc/cancel_physical_connection.go
  15. 2 2
      services/vpc/connect_router_interface.go
  16. 7 7
      services/vpc/create_bandwidth_package.go
  17. 7 7
      services/vpc/create_bgp_group.go
  18. 4 4
      services/vpc/create_bgp_peer.go
  19. 5 5
      services/vpc/create_common_bandwidth_package.go
  20. 4 4
      services/vpc/create_customer_gateway.go
  21. 115 0
      services/vpc/create_flow_log.go
  22. 4 4
      services/vpc/create_forward_entry.go
  23. 6 6
      services/vpc/create_global_acceleration_instance.go
  24. 5 5
      services/vpc/create_ha_vip.go
  25. 118 0
      services/vpc/create_i_pv6_translator.go
  26. 115 0
      services/vpc/create_i_pv6_translator_entry.go
  27. 6 6
      services/vpc/create_nat_gateway.go
  28. 4 4
      services/vpc/create_nqa.go
  29. 8 8
      services/vpc/create_physical_connection.go
  30. 10 10
      services/vpc/create_physical_connection_new.go
  31. 8 7
      services/vpc/create_route_entry.go
  32. 111 0
      services/vpc/create_route_table.go
  33. 19 14
      services/vpc/create_router_interface.go
  34. 4 4
      services/vpc/create_snat_entry.go
  35. 4 4
      services/vpc/create_ssl_vpn_client_cert.go
  36. 8 8
      services/vpc/create_ssl_vpn_server.go
  37. 6 6
      services/vpc/create_v_switch.go
  38. 10 10
      services/vpc/create_virtual_border_router.go
  39. 5 5
      services/vpc/create_vpc.go
  40. 9 9
      services/vpc/create_vpn_connection.go
  41. 118 0
      services/vpc/create_vpn_gateway.go
  42. 2 2
      services/vpc/deactivate_router_interface.go
  43. 108 0
      services/vpc/deactive_flow_log.go
  44. 3 3
      services/vpc/delete_bandwidth_package.go
  45. 3 3
      services/vpc/delete_bgp_group.go
  46. 4 4
      services/vpc/delete_bgp_network.go
  47. 3 3
      services/vpc/delete_bgp_peer.go
  48. 3 3
      services/vpc/delete_common_bandwidth_package.go
  49. 3 3
      services/vpc/delete_customer_gateway.go
  50. 108 0
      services/vpc/delete_flow_log.go
  51. 3 3
      services/vpc/delete_forward_entry.go
  52. 3 3
      services/vpc/delete_global_acceleration_instance.go
  53. 4 4
      services/vpc/delete_ha_vip.go
  54. 108 0
      services/vpc/delete_i_pv6_translator.go
  55. 109 0
      services/vpc/delete_i_pv6_translator_entry.go
  56. 3 3
      services/vpc/delete_nat_gateway.go
  57. 3 3
      services/vpc/delete_nqa.go
  58. 3 3
      services/vpc/delete_physical_connection.go
  59. 5 5
      services/vpc/delete_route_entry.go
  60. 107 0
      services/vpc/delete_route_table.go
  61. 3 3
      services/vpc/delete_router_interface.go
  62. 2 2
      services/vpc/delete_snat_entry.go
  63. 3 3
      services/vpc/delete_ssl_vpn_client_cert.go
  64. 4 4
      services/vpc/delete_ssl_vpn_server.go
  65. 3 3
      services/vpc/delete_v_switch.go
  66. 3 3
      services/vpc/delete_virtual_border_router.go
  67. 2 2
      services/vpc/delete_vpc.go
  68. 3 3
      services/vpc/delete_vpn_connection.go
  69. 3 3
      services/vpc/delete_vpn_gateway.go
  70. 6 6
      services/vpc/describe_access_points.go
  71. 5 5
      services/vpc/describe_bandwidth_package_public_ip_monitor_data.go
  72. 4 4
      services/vpc/describe_bandwidth_packages.go
  73. 4 4
      services/vpc/describe_bgp_groups.go
  74. 5 5
      services/vpc/describe_bgp_peers.go
  75. 9 8
      services/vpc/describe_common_bandwidth_packages.go
  76. 2 2
      services/vpc/describe_customer_gateway.go
  77. 3 3
      services/vpc/describe_customer_gateways.go
  78. 13 12
      services/vpc/describe_eip_addresses.go
  79. 5 5
      services/vpc/describe_eip_monitor_data.go
  80. 122 0
      services/vpc/describe_flow_logs.go
  81. 4 4
      services/vpc/describe_forward_table_entries.go
  82. 3 3
      services/vpc/describe_forward_tables.go
  83. 8 7
      services/vpc/describe_global_acceleration_instances.go
  84. 5 5
      services/vpc/describe_ha_vips.go
  85. 113 0
      services/vpc/describe_high_definition_monitor_log_attribute.go
  86. 121 0
      services/vpc/describe_i_pv6_translator_entries.go
  87. 120 0
      services/vpc/describe_i_pv6_translators.go
  88. 4 4
      services/vpc/describe_nat_gateways.go
  89. 110 0
      services/vpc/describe_network_quotas.go
  90. 5 5
      services/vpc/describe_new_project_eip_monitor_data.go
  91. 4 4
      services/vpc/describe_nqas.go
  92. 5 5
      services/vpc/describe_physical_connections.go
  93. 4 3
      services/vpc/describe_regions.go
  94. 7 7
      services/vpc/describe_route_table_list.go
  95. 7 7
      services/vpc/describe_route_tables.go
  96. 8 7
      services/vpc/describe_router_interfaces.go
  97. 4 4
      services/vpc/describe_router_interfaces_for_global.go
  98. 3 3
      services/vpc/describe_server_related_global_acceleration_instances.go
  99. 3 3
      services/vpc/describe_snat_table_entries.go
  100. 2 2
      services/vpc/describe_ssl_vpn_client_cert.go

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2018-08-23 Version: 1.27.0
+1, Add CreateVpnGateway API.
+2, Add product Ipv6Translator.
+
+
 2018-08-22 Version: 1.26.2
 1, upgrade mongodb sdk.
 

+ 2 - 2
services/vpc/activate_router_interface.go

@@ -76,9 +76,9 @@ func (client *Client) ActivateRouterInterfaceWithCallback(request *ActivateRoute
 // ActivateRouterInterfaceRequest is the request struct for api ActivateRouterInterface
 type ActivateRouterInterfaceRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	RouterInterfaceId    string           `position:"Query" name:"RouterInterfaceId"`
 }
 

+ 108 - 0
services/vpc/active_flow_log.go

@@ -0,0 +1,108 @@
+package vpc
+
+//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"
+)
+
+// ActiveFlowLog invokes the vpc.ActiveFlowLog API synchronously
+// api document: https://help.aliyun.com/api/vpc/activeflowlog.html
+func (client *Client) ActiveFlowLog(request *ActiveFlowLogRequest) (response *ActiveFlowLogResponse, err error) {
+	response = CreateActiveFlowLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ActiveFlowLogWithChan invokes the vpc.ActiveFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/activeflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ActiveFlowLogWithChan(request *ActiveFlowLogRequest) (<-chan *ActiveFlowLogResponse, <-chan error) {
+	responseChan := make(chan *ActiveFlowLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ActiveFlowLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ActiveFlowLogWithCallback invokes the vpc.ActiveFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/activeflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ActiveFlowLogWithCallback(request *ActiveFlowLogRequest, callback func(response *ActiveFlowLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ActiveFlowLogResponse
+		var err error
+		defer close(result)
+		response, err = client.ActiveFlowLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ActiveFlowLogRequest is the request struct for api ActiveFlowLog
+type ActiveFlowLogRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	FlowLogId            string           `position:"Query" name:"FlowLogId"`
+}
+
+// ActiveFlowLogResponse is the response struct for api ActiveFlowLog
+type ActiveFlowLogResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   string `json:"Success" xml:"Success"`
+}
+
+// CreateActiveFlowLogRequest creates a request to invoke ActiveFlowLog API
+func CreateActiveFlowLogRequest() (request *ActiveFlowLogRequest) {
+	request = &ActiveFlowLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "ActiveFlowLog", "vpc", "openAPI")
+	return
+}
+
+// CreateActiveFlowLogResponse creates a response to parse from ActiveFlowLog response
+func CreateActiveFlowLogResponse() (response *ActiveFlowLogResponse) {
+	response = &ActiveFlowLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 4 - 4
services/vpc/add_bandwidth_package_ips.go

@@ -76,13 +76,13 @@ func (client *Client) AddBandwidthPackageIpsWithCallback(request *AddBandwidthPa
 // AddBandwidthPackageIpsRequest is the request struct for api AddBandwidthPackageIps
 type AddBandwidthPackageIpsRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
-	IpCount              string           `position:"Query" name:"IpCount"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	IpCount              string           `position:"Query" name:"IpCount"`
 }
 
 // AddBandwidthPackageIpsResponse is the response struct for api AddBandwidthPackageIps

+ 5 - 5
services/vpc/add_bgp_network.go

@@ -76,14 +76,14 @@ func (client *Client) AddBgpNetworkWithCallback(request *AddBgpNetworkRequest, c
 // AddBgpNetworkRequest is the request struct for api AddBgpNetwork
 type AddBgpNetworkRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	DstCidrBlock         string           `position:"Query" name:"DstCidrBlock"`
-	VpcId                string           `position:"Query" name:"VpcId"`
-	RouterId             string           `position:"Query" name:"RouterId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	RouterId             string           `position:"Query" name:"RouterId"`
+	VpcId                string           `position:"Query" name:"VpcId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DstCidrBlock         string           `position:"Query" name:"DstCidrBlock"`
 }
 
 // AddBgpNetworkResponse is the response struct for api AddBgpNetwork

+ 3 - 3
services/vpc/add_common_bandwidth_package_ip.go

@@ -76,12 +76,12 @@ func (client *Client) AddCommonBandwidthPackageIpWithCallback(request *AddCommon
 // AddCommonBandwidthPackageIpRequest is the request struct for api AddCommonBandwidthPackageIp
 type AddCommonBandwidthPackageIpRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	IpInstanceId         string           `position:"Query" name:"IpInstanceId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // AddCommonBandwidthPackageIpResponse is the response struct for api AddCommonBandwidthPackageIp

+ 3 - 3
services/vpc/add_global_acceleration_instance_ip.go

@@ -76,12 +76,12 @@ func (client *Client) AddGlobalAccelerationInstanceIpWithCallback(request *AddGl
 // AddGlobalAccelerationInstanceIpRequest is the request struct for api AddGlobalAccelerationInstanceIp
 type AddGlobalAccelerationInstanceIpRequest struct {
 	*requests.RpcRequest
-	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId              requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
-	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 	IpInstanceId                 string           `position:"Query" name:"IpInstanceId"`
+	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
+	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 }
 
 // AddGlobalAccelerationInstanceIpResponse is the response struct for api AddGlobalAccelerationInstanceIp

+ 8 - 8
services/vpc/allocate_eip_address.go

@@ -76,20 +76,20 @@ func (client *Client) AllocateEipAddressWithCallback(request *AllocateEipAddress
 // AllocateEipAddressRequest is the request struct for api AllocateEipAddress
 type AllocateEipAddressRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	Bandwidth            string           `position:"Query" name:"Bandwidth"`
 	Period               requests.Integer `position:"Query" name:"Period"`
+	AutoPay              requests.Boolean `position:"Query" name:"AutoPay"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	Bandwidth            string           `position:"Query" name:"Bandwidth"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
 	ISP                  string           `position:"Query" name:"ISP"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceGroupId      string           `position:"Query" name:"ResourceGroupId"`
+	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
 	Netmode              string           `position:"Query" name:"Netmode"`
-	AutoPay              requests.Boolean `position:"Query" name:"AutoPay"`
 	PricingCycle         string           `position:"Query" name:"PricingCycle"`
 	InstanceChargeType   string           `position:"Query" name:"InstanceChargeType"`
-	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
-	ResourceGroupId      string           `position:"Query" name:"ResourceGroupId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
 }
 
 // AllocateEipAddressResponse is the response struct for api AllocateEipAddress

+ 4 - 4
services/vpc/associate_eip_address.go

@@ -76,14 +76,14 @@ func (client *Client) AssociateEipAddressWithCallback(request *AssociateEipAddre
 // AssociateEipAddressRequest is the request struct for api AssociateEipAddress
 type AssociateEipAddressRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	AllocationId         string           `position:"Query" name:"AllocationId"`
 	InstanceId           string           `position:"Query" name:"InstanceId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	InstanceRegionId     string           `position:"Query" name:"InstanceRegionId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	InstanceType         string           `position:"Query" name:"InstanceType"`
-	InstanceRegionId     string           `position:"Query" name:"InstanceRegionId"`
+	AllocationId         string           `position:"Query" name:"AllocationId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // AssociateEipAddressResponse is the response struct for api AssociateEipAddress

+ 4 - 4
services/vpc/associate_global_acceleration_instance.go

@@ -76,13 +76,13 @@ func (client *Client) AssociateGlobalAccelerationInstanceWithCallback(request *A
 // AssociateGlobalAccelerationInstanceRequest is the request struct for api AssociateGlobalAccelerationInstance
 type AssociateGlobalAccelerationInstanceRequest struct {
 	*requests.RpcRequest
-	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId              requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
+	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
 	BackendServerId              string           `position:"Query" name:"BackendServerId"`
+	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
+	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 	BackendServerRegionId        string           `position:"Query" name:"BackendServerRegionId"`
-	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
 	BackendServerType            string           `position:"Query" name:"BackendServerType"`
 }
 

+ 5 - 5
services/vpc/associate_ha_vip.go

@@ -76,13 +76,13 @@ func (client *Client) AssociateHaVipWithCallback(request *AssociateHaVipRequest,
 // AssociateHaVipRequest is the request struct for api AssociateHaVip
 type AssociateHaVipRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
 	HaVipId              string           `position:"Query" name:"HaVipId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	InstanceId           string           `position:"Query" name:"InstanceId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // AssociateHaVipResponse is the response struct for api AssociateHaVip

+ 8 - 8
services/vpc/associate_physical_connection_to_virtual_border_router.go

@@ -76,18 +76,18 @@ func (client *Client) AssociatePhysicalConnectionToVirtualBorderRouterWithCallba
 // AssociatePhysicalConnectionToVirtualBorderRouterRequest is the request struct for api AssociatePhysicalConnectionToVirtualBorderRouter
 type AssociatePhysicalConnectionToVirtualBorderRouterRequest struct {
 	*requests.RpcRequest
-	VbrId                string           `position:"Query" name:"VbrId"`
-	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
-	VlanId               string           `position:"Query" name:"VlanId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	CircuitCode          string           `position:"Query" name:"CircuitCode"`
-	LocalGatewayIp       string           `position:"Query" name:"LocalGatewayIp"`
-	PeerGatewayIp        string           `position:"Query" name:"PeerGatewayIp"`
-	PeeringSubnetMask    string           `position:"Query" name:"PeeringSubnetMask"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	VlanId               string           `position:"Query" name:"VlanId"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	VbrId                string           `position:"Query" name:"VbrId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PeerGatewayIp        string           `position:"Query" name:"PeerGatewayIp"`
+	PeeringSubnetMask    string           `position:"Query" name:"PeeringSubnetMask"`
+	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
+	LocalGatewayIp       string           `position:"Query" name:"LocalGatewayIp"`
 }
 
 // AssociatePhysicalConnectionToVirtualBorderRouterResponse is the response struct for api AssociatePhysicalConnectionToVirtualBorderRouter

+ 109 - 0
services/vpc/associate_route_table.go

@@ -0,0 +1,109 @@
+package vpc
+
+//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"
+)
+
+// AssociateRouteTable invokes the vpc.AssociateRouteTable API synchronously
+// api document: https://help.aliyun.com/api/vpc/associateroutetable.html
+func (client *Client) AssociateRouteTable(request *AssociateRouteTableRequest) (response *AssociateRouteTableResponse, err error) {
+	response = CreateAssociateRouteTableResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AssociateRouteTableWithChan invokes the vpc.AssociateRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/associateroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AssociateRouteTableWithChan(request *AssociateRouteTableRequest) (<-chan *AssociateRouteTableResponse, <-chan error) {
+	responseChan := make(chan *AssociateRouteTableResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AssociateRouteTable(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AssociateRouteTableWithCallback invokes the vpc.AssociateRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/associateroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AssociateRouteTableWithCallback(request *AssociateRouteTableRequest, callback func(response *AssociateRouteTableResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AssociateRouteTableResponse
+		var err error
+		defer close(result)
+		response, err = client.AssociateRouteTable(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AssociateRouteTableRequest is the request struct for api AssociateRouteTable
+type AssociateRouteTableRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	RouteTableId         string           `position:"Query" name:"RouteTableId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	VSwitchId            string           `position:"Query" name:"VSwitchId"`
+}
+
+// AssociateRouteTableResponse is the response struct for api AssociateRouteTable
+type AssociateRouteTableResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateAssociateRouteTableRequest creates a request to invoke AssociateRouteTable API
+func CreateAssociateRouteTableRequest() (request *AssociateRouteTableRequest) {
+	request = &AssociateRouteTableRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "AssociateRouteTable", "vpc", "openAPI")
+	return
+}
+
+// CreateAssociateRouteTableResponse creates a response to parse from AssociateRouteTable response
+func CreateAssociateRouteTableResponse() (response *AssociateRouteTableResponse) {
+	response = &AssociateRouteTableResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/vpc/cancel_physical_connection.go

@@ -76,12 +76,12 @@ func (client *Client) CancelPhysicalConnectionWithCallback(request *CancelPhysic
 // CancelPhysicalConnectionRequest is the request struct for api CancelPhysicalConnection
 type CancelPhysicalConnectionRequest struct {
 	*requests.RpcRequest
-	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CancelPhysicalConnectionResponse is the response struct for api CancelPhysicalConnection

+ 2 - 2
services/vpc/connect_router_interface.go

@@ -76,9 +76,9 @@ func (client *Client) ConnectRouterInterfaceWithCallback(request *ConnectRouterI
 // ConnectRouterInterfaceRequest is the request struct for api ConnectRouterInterface
 type ConnectRouterInterfaceRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	RouterInterfaceId    string           `position:"Query" name:"RouterInterfaceId"`
 }
 

+ 7 - 7
services/vpc/create_bandwidth_package.go

@@ -76,19 +76,19 @@ func (client *Client) CreateBandwidthPackageWithCallback(request *CreateBandwidt
 // CreateBandwidthPackageRequest is the request struct for api CreateBandwidthPackage
 type CreateBandwidthPackageRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
-	Name                 string           `position:"Query" name:"Name"`
-	Description          string           `position:"Query" name:"Description"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	IpCount              requests.Integer `position:"Query" name:"IpCount"`
 	Bandwidth            requests.Integer `position:"Query" name:"Bandwidth"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	ISP                  string           `position:"Query" name:"ISP"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	Zone                 string           `position:"Query" name:"Zone"`
 	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
+	Name                 string           `position:"Query" name:"Name"`
+	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
+	IpCount              requests.Integer `position:"Query" name:"IpCount"`
 }
 
 // CreateBandwidthPackageResponse is the response struct for api CreateBandwidthPackage

+ 7 - 7
services/vpc/create_bgp_group.go

@@ -76,17 +76,17 @@ func (client *Client) CreateBgpGroupWithCallback(request *CreateBgpGroupRequest,
 // CreateBgpGroupRequest is the request struct for api CreateBgpGroup
 type CreateBgpGroupRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	AuthKey              string           `position:"Query" name:"AuthKey"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	RouterId             string           `position:"Query" name:"RouterId"`
-	Name                 string           `position:"Query" name:"Name"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PeerAsn              requests.Integer `position:"Query" name:"PeerAsn"`
-	AuthKey              string           `position:"Query" name:"AuthKey"`
 	IsFakeAsn            requests.Boolean `position:"Query" name:"IsFakeAsn"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	RouterId             string           `position:"Query" name:"RouterId"`
+	Name                 string           `position:"Query" name:"Name"`
 }
 
 // CreateBgpGroupResponse is the response struct for api CreateBgpGroup

+ 4 - 4
services/vpc/create_bgp_peer.go

@@ -76,13 +76,13 @@ func (client *Client) CreateBgpPeerWithCallback(request *CreateBgpPeerRequest, c
 // CreateBgpPeerRequest is the request struct for api CreateBgpPeer
 type CreateBgpPeerRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
-	PeerIpAddress        string           `position:"Query" name:"PeerIpAddress"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PeerIpAddress        string           `position:"Query" name:"PeerIpAddress"`
 }
 
 // CreateBgpPeerResponse is the response struct for api CreateBgpPeer

+ 5 - 5
services/vpc/create_common_bandwidth_package.go

@@ -76,16 +76,16 @@ func (client *Client) CreateCommonBandwidthPackageWithCallback(request *CreateCo
 // CreateCommonBandwidthPackageRequest is the request struct for api CreateCommonBandwidthPackage
 type CreateCommonBandwidthPackageRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	Bandwidth            requests.Integer `position:"Query" name:"Bandwidth"`
+	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Name                 string           `position:"Query" name:"Name"`
 	Description          string           `position:"Query" name:"Description"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
-	Bandwidth            requests.Integer `position:"Query" name:"Bandwidth"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	Ratio                requests.Integer `position:"Query" name:"Ratio"`
-	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
 }
 
 // CreateCommonBandwidthPackageResponse is the response struct for api CreateCommonBandwidthPackage

+ 4 - 4
services/vpc/create_customer_gateway.go

@@ -76,14 +76,14 @@ func (client *Client) CreateCustomerGatewayWithCallback(request *CreateCustomerG
 // CreateCustomerGatewayRequest is the request struct for api CreateCustomerGateway
 type CreateCustomerGatewayRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	IpAddress            string           `position:"Query" name:"IpAddress"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	IpAddress            string           `position:"Query" name:"IpAddress"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Name                 string           `position:"Query" name:"Name"`
 	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateCustomerGatewayResponse is the response struct for api CreateCustomerGateway

+ 115 - 0
services/vpc/create_flow_log.go

@@ -0,0 +1,115 @@
+package vpc
+
+//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"
+)
+
+// CreateFlowLog invokes the vpc.CreateFlowLog API synchronously
+// api document: https://help.aliyun.com/api/vpc/createflowlog.html
+func (client *Client) CreateFlowLog(request *CreateFlowLogRequest) (response *CreateFlowLogResponse, err error) {
+	response = CreateCreateFlowLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateFlowLogWithChan invokes the vpc.CreateFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateFlowLogWithChan(request *CreateFlowLogRequest) (<-chan *CreateFlowLogResponse, <-chan error) {
+	responseChan := make(chan *CreateFlowLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateFlowLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateFlowLogWithCallback invokes the vpc.CreateFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateFlowLogWithCallback(request *CreateFlowLogRequest, callback func(response *CreateFlowLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateFlowLogResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateFlowLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateFlowLogRequest is the request struct for api CreateFlowLog
+type CreateFlowLogRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceId           string           `position:"Query" name:"ResourceId"`
+	ProjectName          string           `position:"Query" name:"ProjectName"`
+	LogStoreName         string           `position:"Query" name:"LogStoreName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceType         string           `position:"Query" name:"ResourceType"`
+	TrafficType          string           `position:"Query" name:"TrafficType"`
+	FlowLogName          string           `position:"Query" name:"FlowLogName"`
+}
+
+// CreateFlowLogResponse is the response struct for api CreateFlowLog
+type CreateFlowLogResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   string `json:"Success" xml:"Success"`
+	FlowLogId string `json:"FlowLogId" xml:"FlowLogId"`
+}
+
+// CreateCreateFlowLogRequest creates a request to invoke CreateFlowLog API
+func CreateCreateFlowLogRequest() (request *CreateFlowLogRequest) {
+	request = &CreateFlowLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "CreateFlowLog", "vpc", "openAPI")
+	return
+}
+
+// CreateCreateFlowLogResponse creates a response to parse from CreateFlowLog response
+func CreateCreateFlowLogResponse() (response *CreateFlowLogResponse) {
+	response = &CreateFlowLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 4 - 4
services/vpc/create_forward_entry.go

@@ -76,16 +76,16 @@ func (client *Client) CreateForwardEntryWithCallback(request *CreateForwardEntry
 // CreateForwardEntryRequest is the request struct for api CreateForwardEntry
 type CreateForwardEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	IpProtocol           string           `position:"Query" name:"IpProtocol"`
+	InternalPort         string           `position:"Query" name:"InternalPort"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	ForwardTableId       string           `position:"Query" name:"ForwardTableId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	ExternalIp           string           `position:"Query" name:"ExternalIp"`
 	ExternalPort         string           `position:"Query" name:"ExternalPort"`
 	InternalIp           string           `position:"Query" name:"InternalIp"`
-	InternalPort         string           `position:"Query" name:"InternalPort"`
-	IpProtocol           string           `position:"Query" name:"IpProtocol"`
 }
 
 // CreateForwardEntryResponse is the response struct for api CreateForwardEntry

+ 6 - 6
services/vpc/create_global_acceleration_instance.go

@@ -76,17 +76,17 @@ func (client *Client) CreateGlobalAccelerationInstanceWithCallback(request *Crea
 // CreateGlobalAccelerationInstanceRequest is the request struct for api CreateGlobalAccelerationInstance
 type CreateGlobalAccelerationInstanceRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	BandwidthType        string           `position:"Query" name:"BandwidthType"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ServiceLocation      string           `position:"Query" name:"ServiceLocation"`
 	Bandwidth            string           `position:"Query" name:"Bandwidth"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	InternetChargeType   string           `position:"Query" name:"InternetChargeType"`
-	BandwidthType        string           `position:"Query" name:"BandwidthType"`
 	Name                 string           `position:"Query" name:"Name"`
-	Description          string           `position:"Query" name:"Description"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
 }
 
 // CreateGlobalAccelerationInstanceResponse is the response struct for api CreateGlobalAccelerationInstance

+ 5 - 5
services/vpc/create_ha_vip.go

@@ -76,14 +76,14 @@ func (client *Client) CreateHaVipWithCallback(request *CreateHaVipRequest, callb
 // CreateHaVipRequest is the request struct for api CreateHaVip
 type CreateHaVipRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
 	VSwitchId            string           `position:"Query" name:"VSwitchId"`
 	IpAddress            string           `position:"Query" name:"IpAddress"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateHaVipResponse is the response struct for api CreateHaVip

+ 118 - 0
services/vpc/create_i_pv6_translator.go

@@ -0,0 +1,118 @@
+package vpc
+
+//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"
+)
+
+// CreateIPv6Translator invokes the vpc.CreateIPv6Translator API synchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translator.html
+func (client *Client) CreateIPv6Translator(request *CreateIPv6TranslatorRequest) (response *CreateIPv6TranslatorResponse, err error) {
+	response = CreateCreateIPv6TranslatorResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateIPv6TranslatorWithChan invokes the vpc.CreateIPv6Translator API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translator.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateIPv6TranslatorWithChan(request *CreateIPv6TranslatorRequest) (<-chan *CreateIPv6TranslatorResponse, <-chan error) {
+	responseChan := make(chan *CreateIPv6TranslatorResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateIPv6Translator(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateIPv6TranslatorWithCallback invokes the vpc.CreateIPv6Translator API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translator.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateIPv6TranslatorWithCallback(request *CreateIPv6TranslatorRequest, callback func(response *CreateIPv6TranslatorResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateIPv6TranslatorResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateIPv6Translator(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateIPv6TranslatorRequest is the request struct for api CreateIPv6Translator
+type CreateIPv6TranslatorRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	AutoPay              requests.Boolean `position:"Query" name:"AutoPay"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	Bandwidth            requests.Integer `position:"Query" name:"Bandwidth"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	Spec                 string           `position:"Query" name:"Spec"`
+	Duration             requests.Integer `position:"Query" name:"Duration"`
+	Name                 string           `position:"Query" name:"Name"`
+	PayType              string           `position:"Query" name:"PayType"`
+	PricingCycle         string           `position:"Query" name:"PricingCycle"`
+}
+
+// CreateIPv6TranslatorResponse is the response struct for api CreateIPv6Translator
+type CreateIPv6TranslatorResponse struct {
+	*responses.BaseResponse
+	RequestId        string `json:"RequestId" xml:"RequestId"`
+	Ipv6TranslatorId string `json:"Ipv6TranslatorId" xml:"Ipv6TranslatorId"`
+	Name             string `json:"Name" xml:"Name"`
+	Spec             string `json:"Spec" xml:"Spec"`
+	OrderId          int    `json:"OrderId" xml:"OrderId"`
+}
+
+// CreateCreateIPv6TranslatorRequest creates a request to invoke CreateIPv6Translator API
+func CreateCreateIPv6TranslatorRequest() (request *CreateIPv6TranslatorRequest) {
+	request = &CreateIPv6TranslatorRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "CreateIPv6Translator", "vpc", "openAPI")
+	return
+}
+
+// CreateCreateIPv6TranslatorResponse creates a response to parse from CreateIPv6Translator response
+func CreateCreateIPv6TranslatorResponse() (response *CreateIPv6TranslatorResponse) {
+	response = &CreateIPv6TranslatorResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/vpc/create_i_pv6_translator_entry.go

@@ -0,0 +1,115 @@
+package vpc
+
+//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"
+)
+
+// CreateIPv6TranslatorEntry invokes the vpc.CreateIPv6TranslatorEntry API synchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translatorentry.html
+func (client *Client) CreateIPv6TranslatorEntry(request *CreateIPv6TranslatorEntryRequest) (response *CreateIPv6TranslatorEntryResponse, err error) {
+	response = CreateCreateIPv6TranslatorEntryResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateIPv6TranslatorEntryWithChan invokes the vpc.CreateIPv6TranslatorEntry API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translatorentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateIPv6TranslatorEntryWithChan(request *CreateIPv6TranslatorEntryRequest) (<-chan *CreateIPv6TranslatorEntryResponse, <-chan error) {
+	responseChan := make(chan *CreateIPv6TranslatorEntryResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateIPv6TranslatorEntry(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateIPv6TranslatorEntryWithCallback invokes the vpc.CreateIPv6TranslatorEntry API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createipv6translatorentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateIPv6TranslatorEntryWithCallback(request *CreateIPv6TranslatorEntryRequest, callback func(response *CreateIPv6TranslatorEntryResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateIPv6TranslatorEntryResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateIPv6TranslatorEntry(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateIPv6TranslatorEntryRequest is the request struct for api CreateIPv6TranslatorEntry
+type CreateIPv6TranslatorEntryRequest struct {
+	*requests.RpcRequest
+	BackendIpv4Port      requests.Integer `position:"Query" name:"BackendIpv4Port"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	EntryName            string           `position:"Query" name:"EntryName"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	EntryBandwidth       requests.Integer `position:"Query" name:"EntryBandwidth"`
+	AllocateIpv6Port     requests.Integer `position:"Query" name:"AllocateIpv6Port"`
+	EntryDescription     string           `position:"Query" name:"EntryDescription"`
+	BackendIpv4Addr      string           `position:"Query" name:"BackendIpv4Addr"`
+	TransProtocol        string           `position:"Query" name:"TransProtocol"`
+	Ipv6TranslatorId     string           `position:"Query" name:"Ipv6TranslatorId"`
+}
+
+// CreateIPv6TranslatorEntryResponse is the response struct for api CreateIPv6TranslatorEntry
+type CreateIPv6TranslatorEntryResponse struct {
+	*responses.BaseResponse
+	RequestId             string `json:"RequestId" xml:"RequestId"`
+	Ipv6TranslatorEntryId string `json:"Ipv6TranslatorEntryId" xml:"Ipv6TranslatorEntryId"`
+}
+
+// CreateCreateIPv6TranslatorEntryRequest creates a request to invoke CreateIPv6TranslatorEntry API
+func CreateCreateIPv6TranslatorEntryRequest() (request *CreateIPv6TranslatorEntryRequest) {
+	request = &CreateIPv6TranslatorEntryRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "CreateIPv6TranslatorEntry", "vpc", "openAPI")
+	return
+}
+
+// CreateCreateIPv6TranslatorEntryResponse creates a response to parse from CreateIPv6TranslatorEntry response
+func CreateCreateIPv6TranslatorEntryResponse() (response *CreateIPv6TranslatorEntryResponse) {
+	response = &CreateIPv6TranslatorEntryResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 6 - 6
services/vpc/create_nat_gateway.go

@@ -76,25 +76,25 @@ func (client *Client) CreateNatGatewayWithCallback(request *CreateNatGatewayRequ
 // CreateNatGatewayRequest is the request struct for api CreateNatGateway
 type CreateNatGatewayRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer                    `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                              `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer                    `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string                              `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string                              `position:"Query" name:"ClientToken"`
 	OwnerAccount         string                              `position:"Query" name:"OwnerAccount"`
 	VpcId                string                              `position:"Query" name:"VpcId"`
 	Name                 string                              `position:"Query" name:"Name"`
 	Description          string                              `position:"Query" name:"Description"`
-	ClientToken          string                              `position:"Query" name:"ClientToken"`
-	Spec                 string                              `position:"Query" name:"Spec"`
+	OwnerId              requests.Integer                    `position:"Query" name:"OwnerId"`
 	BandwidthPackage     *[]CreateNatGatewayBandwidthPackage `position:"Query" name:"BandwidthPackage"  type:"Repeated"`
+	Spec                 string                              `position:"Query" name:"Spec"`
 }
 
 // CreateNatGatewayBandwidthPackage is a repeated param struct in CreateNatGatewayRequest
 type CreateNatGatewayBandwidthPackage struct {
-	IpCount            string `name:"IpCount"`
 	Bandwidth          string `name:"Bandwidth"`
 	Zone               string `name:"Zone"`
-	ISP                string `name:"ISP"`
 	InternetChargeType string `name:"InternetChargeType"`
+	ISP                string `name:"ISP"`
+	IpCount            string `name:"IpCount"`
 }
 
 // CreateNatGatewayResponse is the response struct for api CreateNatGateway

+ 4 - 4
services/vpc/create_nqa.go

@@ -76,13 +76,13 @@ func (client *Client) CreateNqaWithCallback(request *CreateNqaRequest, callback
 // CreateNqaRequest is the request struct for api CreateNqa
 type CreateNqaRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	DestinationIp        string           `position:"Query" name:"DestinationIp"`
-	RouterId             string           `position:"Query" name:"RouterId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	RouterId             string           `position:"Query" name:"RouterId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateNqaResponse is the response struct for api CreateNqa

+ 8 - 8
services/vpc/create_physical_connection.go

@@ -77,20 +77,20 @@ func (client *Client) CreatePhysicalConnectionWithCallback(request *CreatePhysic
 type CreatePhysicalConnectionRequest struct {
 	*requests.RpcRequest
 	AccessPointId                 string           `position:"Query" name:"AccessPointId"`
-	Type                          string           `position:"Query" name:"Type"`
-	LineOperator                  string           `position:"Query" name:"LineOperator"`
-	Bandwidth                     requests.Integer `position:"Query" name:"bandwidth"`
+	RedundantPhysicalConnectionId string           `position:"Query" name:"RedundantPhysicalConnectionId"`
 	PeerLocation                  string           `position:"Query" name:"PeerLocation"`
+	ResourceOwnerId               requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	PortType                      string           `position:"Query" name:"PortType"`
-	RedundantPhysicalConnectionId string           `position:"Query" name:"RedundantPhysicalConnectionId"`
-	Description                   string           `position:"Query" name:"Description"`
-	Name                          string           `position:"Query" name:"Name"`
 	CircuitCode                   string           `position:"Query" name:"CircuitCode"`
+	Bandwidth                     requests.Integer `position:"Query" name:"bandwidth"`
 	ClientToken                   string           `position:"Query" name:"ClientToken"`
-	OwnerId                       requests.Integer `position:"Query" name:"OwnerId"`
 	ResourceOwnerAccount          string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId               requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount                  string           `position:"Query" name:"OwnerAccount"`
+	Description                   string           `position:"Query" name:"Description"`
+	Type                          string           `position:"Query" name:"Type"`
+	OwnerId                       requests.Integer `position:"Query" name:"OwnerId"`
+	LineOperator                  string           `position:"Query" name:"LineOperator"`
+	Name                          string           `position:"Query" name:"Name"`
 }
 
 // CreatePhysicalConnectionResponse is the response struct for api CreatePhysicalConnection

+ 10 - 10
services/vpc/create_physical_connection_new.go

@@ -77,22 +77,22 @@ func (client *Client) CreatePhysicalConnectionNewWithCallback(request *CreatePhy
 type CreatePhysicalConnectionNewRequest struct {
 	*requests.RpcRequest
 	AccessPointId                 string           `position:"Query" name:"AccessPointId"`
-	Type                          string           `position:"Query" name:"Type"`
-	LineOperator                  string           `position:"Query" name:"LineOperator"`
-	Bandwidth                     requests.Integer `position:"Query" name:"bandwidth"`
+	RedundantPhysicalConnectionId string           `position:"Query" name:"RedundantPhysicalConnectionId"`
 	PeerLocation                  string           `position:"Query" name:"PeerLocation"`
+	ResourceOwnerId               requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	PortType                      string           `position:"Query" name:"PortType"`
-	RedundantPhysicalConnectionId string           `position:"Query" name:"RedundantPhysicalConnectionId"`
-	Description                   string           `position:"Query" name:"Description"`
-	Name                          string           `position:"Query" name:"Name"`
 	CircuitCode                   string           `position:"Query" name:"CircuitCode"`
+	Bandwidth                     requests.Integer `position:"Query" name:"bandwidth"`
 	ClientToken                   string           `position:"Query" name:"ClientToken"`
-	DeviceName                    string           `position:"Query" name:"DeviceName"`
-	InterfaceName                 string           `position:"Query" name:"InterfaceName"`
-	OwnerId                       requests.Integer `position:"Query" name:"OwnerId"`
 	ResourceOwnerAccount          string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId               requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount                  string           `position:"Query" name:"OwnerAccount"`
+	Description                   string           `position:"Query" name:"Description"`
+	InterfaceName                 string           `position:"Query" name:"InterfaceName"`
+	Type                          string           `position:"Query" name:"Type"`
+	OwnerId                       requests.Integer `position:"Query" name:"OwnerId"`
+	LineOperator                  string           `position:"Query" name:"LineOperator"`
+	Name                          string           `position:"Query" name:"Name"`
+	DeviceName                    string           `position:"Query" name:"DeviceName"`
 }
 
 // CreatePhysicalConnectionNewResponse is the response struct for api CreatePhysicalConnectionNew

+ 8 - 7
services/vpc/create_route_entry.go

@@ -76,23 +76,24 @@ func (client *Client) CreateRouteEntryWithCallback(request *CreateRouteEntryRequ
 // CreateRouteEntryRequest is the request struct for api CreateRouteEntry
 type CreateRouteEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer               `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                         `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer               `position:"Query" name:"ResourceOwnerId"`
-	RouteTableId         string                         `position:"Query" name:"RouteTableId"`
+	ResourceOwnerAccount string                         `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string                         `position:"Query" name:"ClientToken"`
 	DestinationCidrBlock string                         `position:"Query" name:"DestinationCidrBlock"`
+	OwnerAccount         string                         `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer               `position:"Query" name:"OwnerId"`
+	PrivateIpAddress     string                         `position:"Query" name:"PrivateIpAddress"`
 	NextHopId            string                         `position:"Query" name:"NextHopId"`
-	ClientToken          string                         `position:"Query" name:"ClientToken"`
 	NextHopType          string                         `position:"Query" name:"NextHopType"`
-	OwnerAccount         string                         `position:"Query" name:"OwnerAccount"`
 	NextHopList          *[]CreateRouteEntryNextHopList `position:"Query" name:"NextHopList"  type:"Repeated"`
+	RouteTableId         string                         `position:"Query" name:"RouteTableId"`
 }
 
 // CreateRouteEntryNextHopList is a repeated param struct in CreateRouteEntryRequest
 type CreateRouteEntryNextHopList struct {
-	NextHopType string `name:"NextHopType"`
-	NextHopId   string `name:"NextHopId"`
 	Weight      string `name:"Weight"`
+	NextHopId   string `name:"NextHopId"`
+	NextHopType string `name:"NextHopType"`
 }
 
 // CreateRouteEntryResponse is the response struct for api CreateRouteEntry

+ 111 - 0
services/vpc/create_route_table.go

@@ -0,0 +1,111 @@
+package vpc
+
+//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"
+)
+
+// CreateRouteTable invokes the vpc.CreateRouteTable API synchronously
+// api document: https://help.aliyun.com/api/vpc/createroutetable.html
+func (client *Client) CreateRouteTable(request *CreateRouteTableRequest) (response *CreateRouteTableResponse, err error) {
+	response = CreateCreateRouteTableResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateRouteTableWithChan invokes the vpc.CreateRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateRouteTableWithChan(request *CreateRouteTableRequest) (<-chan *CreateRouteTableResponse, <-chan error) {
+	responseChan := make(chan *CreateRouteTableResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateRouteTable(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateRouteTableWithCallback invokes the vpc.CreateRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateRouteTableWithCallback(request *CreateRouteTableRequest, callback func(response *CreateRouteTableResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateRouteTableResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateRouteTable(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateRouteTableRequest is the request struct for api CreateRouteTable
+type CreateRouteTableRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	Description          string           `position:"Query" name:"Description"`
+	RouteTableName       string           `position:"Query" name:"RouteTableName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	VpcId                string           `position:"Query" name:"VpcId"`
+}
+
+// CreateRouteTableResponse is the response struct for api CreateRouteTable
+type CreateRouteTableResponse struct {
+	*responses.BaseResponse
+	RequestId    string `json:"RequestId" xml:"RequestId"`
+	RouteTableId string `json:"RouteTableId" xml:"RouteTableId"`
+}
+
+// CreateCreateRouteTableRequest creates a request to invoke CreateRouteTable API
+func CreateCreateRouteTableRequest() (request *CreateRouteTableRequest) {
+	request = &CreateRouteTableRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "CreateRouteTable", "vpc", "openAPI")
+	return
+}
+
+// CreateCreateRouteTableResponse creates a response to parse from CreateRouteTable response
+func CreateCreateRouteTableResponse() (response *CreateRouteTableResponse) {
+	response = &CreateRouteTableResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 19 - 14
services/vpc/create_router_interface.go

@@ -76,26 +76,30 @@ func (client *Client) CreateRouterInterfaceWithCallback(request *CreateRouterInt
 // CreateRouterInterfaceRequest is the request struct for api CreateRouterInterface
 type CreateRouterInterfaceRequest struct {
 	*requests.RpcRequest
+	AccessPointId            string           `position:"Query" name:"AccessPointId"`
+	OppositeRouterId         string           `position:"Query" name:"OppositeRouterId"`
+	OppositeAccessPointId    string           `position:"Query" name:"OppositeAccessPointId"`
+	ResourceOwnerId          requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	Role                     string           `position:"Query" name:"Role"`
-	OppositeRegionId         string           `position:"Query" name:"OppositeRegionId"`
+	ClientToken              string           `position:"Query" name:"ClientToken"`
+	HealthCheckTargetIp      string           `position:"Query" name:"HealthCheckTargetIp"`
+	Description              string           `position:"Query" name:"Description"`
 	Spec                     string           `position:"Query" name:"Spec"`
-	RouterType               string           `position:"Query" name:"RouterType"`
-	RouterId                 string           `position:"Query" name:"RouterId"`
 	OppositeInterfaceId      string           `position:"Query" name:"OppositeInterfaceId"`
-	OppositeRouterId         string           `position:"Query" name:"OppositeRouterId"`
-	OppositeRouterType       string           `position:"Query" name:"OppositeRouterType"`
+	InstanceChargeType       string           `position:"Query" name:"InstanceChargeType"`
+	Period                   requests.Integer `position:"Query" name:"Period"`
+	AutoPay                  requests.Boolean `position:"Query" name:"AutoPay"`
+	ResourceOwnerAccount     string           `position:"Query" name:"ResourceOwnerAccount"`
+	OppositeRegionId         string           `position:"Query" name:"OppositeRegionId"`
+	OwnerAccount             string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                  requests.Integer `position:"Query" name:"OwnerId"`
 	OppositeInterfaceOwnerId string           `position:"Query" name:"OppositeInterfaceOwnerId"`
+	RouterType               string           `position:"Query" name:"RouterType"`
 	HealthCheckSourceIp      string           `position:"Query" name:"HealthCheckSourceIp"`
-	HealthCheckTargetIp      string           `position:"Query" name:"HealthCheckTargetIp"`
-	AccessPointId            string           `position:"Query" name:"AccessPointId"`
-	OppositeAccessPointId    string           `position:"Query" name:"OppositeAccessPointId"`
-	Description              string           `position:"Query" name:"Description"`
+	RouterId                 string           `position:"Query" name:"RouterId"`
+	OppositeRouterType       string           `position:"Query" name:"OppositeRouterType"`
 	Name                     string           `position:"Query" name:"Name"`
-	ClientToken              string           `position:"Query" name:"ClientToken"`
-	OwnerId                  requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount     string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId          requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount             string           `position:"Query" name:"OwnerAccount"`
+	PricingCycle             string           `position:"Query" name:"PricingCycle"`
 }
 
 // CreateRouterInterfaceResponse is the response struct for api CreateRouterInterface
@@ -103,6 +107,7 @@ type CreateRouterInterfaceResponse struct {
 	*responses.BaseResponse
 	RequestId         string `json:"RequestId" xml:"RequestId"`
 	RouterInterfaceId string `json:"RouterInterfaceId" xml:"RouterInterfaceId"`
+	OrderId           int    `json:"OrderId" xml:"OrderId"`
 }
 
 // CreateCreateRouterInterfaceRequest creates a request to invoke CreateRouterInterface API

+ 4 - 4
services/vpc/create_snat_entry.go

@@ -76,13 +76,13 @@ func (client *Client) CreateSnatEntryWithCallback(request *CreateSnatEntryReques
 // CreateSnatEntryRequest is the request struct for api CreateSnatEntry
 type CreateSnatEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	SnatTableId          string           `position:"Query" name:"SnatTableId"`
 	SourceVSwitchId      string           `position:"Query" name:"SourceVSwitchId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	SourceCIDR           string           `position:"Query" name:"SourceCIDR"`
+	SnatTableId          string           `position:"Query" name:"SnatTableId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	SnatIp               string           `position:"Query" name:"SnatIp"`
 }
 

+ 4 - 4
services/vpc/create_ssl_vpn_client_cert.go

@@ -76,13 +76,13 @@ func (client *Client) CreateSslVpnClientCertWithCallback(request *CreateSslVpnCl
 // CreateSslVpnClientCertRequest is the request struct for api CreateSslVpnClientCert
 type CreateSslVpnClientCertRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	SslVpnServerId       string           `position:"Query" name:"SslVpnServerId"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	SslVpnServerId       string           `position:"Query" name:"SslVpnServerId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Name                 string           `position:"Query" name:"Name"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateSslVpnClientCertResponse is the response struct for api CreateSslVpnClientCert

+ 8 - 8
services/vpc/create_ssl_vpn_server.go

@@ -76,19 +76,19 @@ func (client *Client) CreateSslVpnServerWithCallback(request *CreateSslVpnServer
 // CreateSslVpnServerRequest is the request struct for api CreateSslVpnServer
 type CreateSslVpnServerRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	Cipher               string           `position:"Query" name:"Cipher"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ClientIpPool         string           `position:"Query" name:"ClientIpPool"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	Compress             requests.Boolean `position:"Query" name:"Compress"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	VpnGatewayId         string           `position:"Query" name:"VpnGatewayId"`
-	Name                 string           `position:"Query" name:"Name"`
-	ClientIpPool         string           `position:"Query" name:"ClientIpPool"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	LocalSubnet          string           `position:"Query" name:"LocalSubnet"`
-	Proto                string           `position:"Query" name:"Proto"`
-	Cipher               string           `position:"Query" name:"Cipher"`
 	Port                 requests.Integer `position:"Query" name:"Port"`
-	Compress             requests.Boolean `position:"Query" name:"Compress"`
+	Proto                string           `position:"Query" name:"Proto"`
+	Name                 string           `position:"Query" name:"Name"`
 }
 
 // CreateSslVpnServerResponse is the response struct for api CreateSslVpnServer

+ 6 - 6
services/vpc/create_v_switch.go

@@ -76,16 +76,16 @@ func (client *Client) CreateVSwitchWithCallback(request *CreateVSwitchRequest, c
 // CreateVSwitchRequest is the request struct for api CreateVSwitch
 type CreateVSwitchRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	ZoneId               string           `position:"Query" name:"ZoneId"`
-	CidrBlock            string           `position:"Query" name:"CidrBlock"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
 	VpcId                string           `position:"Query" name:"VpcId"`
 	VSwitchName          string           `position:"Query" name:"VSwitchName"`
-	Description          string           `position:"Query" name:"Description"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	CidrBlock            string           `position:"Query" name:"CidrBlock"`
+	ZoneId               string           `position:"Query" name:"ZoneId"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateVSwitchResponse is the response struct for api CreateVSwitch

+ 10 - 10
services/vpc/create_virtual_border_router.go

@@ -76,20 +76,20 @@ func (client *Client) CreateVirtualBorderRouterWithCallback(request *CreateVirtu
 // CreateVirtualBorderRouterRequest is the request struct for api CreateVirtualBorderRouter
 type CreateVirtualBorderRouterRequest struct {
 	*requests.RpcRequest
-	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
-	VbrOwnerId           requests.Integer `position:"Query" name:"VbrOwnerId"`
-	VlanId               requests.Integer `position:"Query" name:"VlanId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	CircuitCode          string           `position:"Query" name:"CircuitCode"`
-	LocalGatewayIp       string           `position:"Query" name:"LocalGatewayIp"`
-	PeerGatewayIp        string           `position:"Query" name:"PeerGatewayIp"`
-	PeeringSubnetMask    string           `position:"Query" name:"PeeringSubnetMask"`
-	Description          string           `position:"Query" name:"Description"`
-	Name                 string           `position:"Query" name:"Name"`
+	VlanId               requests.Integer `position:"Query" name:"VlanId"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PeerGatewayIp        string           `position:"Query" name:"PeerGatewayIp"`
+	PeeringSubnetMask    string           `position:"Query" name:"PeeringSubnetMask"`
+	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
+	Name                 string           `position:"Query" name:"Name"`
+	LocalGatewayIp       string           `position:"Query" name:"LocalGatewayIp"`
+	VbrOwnerId           requests.Integer `position:"Query" name:"VbrOwnerId"`
 }
 
 // CreateVirtualBorderRouterResponse is the response struct for api CreateVirtualBorderRouter

+ 5 - 5
services/vpc/create_vpc.go

@@ -76,16 +76,16 @@ func (client *Client) CreateVpcWithCallback(request *CreateVpcRequest, callback
 // CreateVpcRequest is the request struct for api CreateVpc
 type CreateVpcRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	CidrBlock            string           `position:"Query" name:"CidrBlock"`
 	VpcName              string           `position:"Query" name:"VpcName"`
-	Description          string           `position:"Query" name:"Description"`
 	ResourceGroupId      string           `position:"Query" name:"ResourceGroupId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	CidrBlock            string           `position:"Query" name:"CidrBlock"`
+	Description          string           `position:"Query" name:"Description"`
 	UserCidr             string           `position:"Query" name:"UserCidr"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // CreateVpcResponse is the response struct for api CreateVpc

+ 9 - 9
services/vpc/create_vpn_connection.go

@@ -76,19 +76,19 @@ func (client *Client) CreateVpnConnectionWithCallback(request *CreateVpnConnecti
 // CreateVpnConnectionRequest is the request struct for api CreateVpnConnection
 type CreateVpnConnectionRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	IkeConfig            string           `position:"Query" name:"IkeConfig"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	ClientToken          string           `position:"Query" name:"ClientToken"`
-	CustomerGatewayId    string           `position:"Query" name:"CustomerGatewayId"`
-	VpnGatewayId         string           `position:"Query" name:"VpnGatewayId"`
-	Name                 string           `position:"Query" name:"Name"`
-	LocalSubnet          string           `position:"Query" name:"LocalSubnet"`
 	RemoteSubnet         string           `position:"Query" name:"RemoteSubnet"`
 	EffectImmediately    requests.Boolean `position:"Query" name:"EffectImmediately"`
-	IkeConfig            string           `position:"Query" name:"IkeConfig"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	IpsecConfig          string           `position:"Query" name:"IpsecConfig"`
+	VpnGatewayId         string           `position:"Query" name:"VpnGatewayId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	CustomerGatewayId    string           `position:"Query" name:"CustomerGatewayId"`
+	LocalSubnet          string           `position:"Query" name:"LocalSubnet"`
+	Name                 string           `position:"Query" name:"Name"`
 }
 
 // CreateVpnConnectionResponse is the response struct for api CreateVpnConnection

+ 118 - 0
services/vpc/create_vpn_gateway.go

@@ -0,0 +1,118 @@
+package vpc
+
+//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"
+)
+
+// CreateVpnGateway invokes the vpc.CreateVpnGateway API synchronously
+// api document: https://help.aliyun.com/api/vpc/createvpngateway.html
+func (client *Client) CreateVpnGateway(request *CreateVpnGatewayRequest) (response *CreateVpnGatewayResponse, err error) {
+	response = CreateCreateVpnGatewayResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateVpnGatewayWithChan invokes the vpc.CreateVpnGateway API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createvpngateway.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateVpnGatewayWithChan(request *CreateVpnGatewayRequest) (<-chan *CreateVpnGatewayResponse, <-chan error) {
+	responseChan := make(chan *CreateVpnGatewayResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateVpnGateway(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateVpnGatewayWithCallback invokes the vpc.CreateVpnGateway API asynchronously
+// api document: https://help.aliyun.com/api/vpc/createvpngateway.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateVpnGatewayWithCallback(request *CreateVpnGatewayRequest, callback func(response *CreateVpnGatewayResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateVpnGatewayResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateVpnGateway(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateVpnGatewayRequest is the request struct for api CreateVpnGateway
+type CreateVpnGatewayRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	Period               requests.Integer `position:"Query" name:"Period"`
+	AutoPay              requests.Boolean `position:"Query" name:"AutoPay"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	Bandwidth            requests.Integer `position:"Query" name:"Bandwidth"`
+	EnableIpsec          requests.Boolean `position:"Query" name:"EnableIpsec"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	EnableSsl            requests.Boolean `position:"Query" name:"EnableSsl"`
+	SslConnections       requests.Integer `position:"Query" name:"SslConnections"`
+	VpcId                string           `position:"Query" name:"VpcId"`
+	Name                 string           `position:"Query" name:"Name"`
+	InstanceChargeType   string           `position:"Query" name:"InstanceChargeType"`
+}
+
+// CreateVpnGatewayResponse is the response struct for api CreateVpnGateway
+type CreateVpnGatewayResponse struct {
+	*responses.BaseResponse
+	RequestId    string `json:"RequestId" xml:"RequestId"`
+	VpnGatewayId string `json:"VpnGatewayId" xml:"VpnGatewayId"`
+	Name         string `json:"Name" xml:"Name"`
+	OrderId      int    `json:"OrderId" xml:"OrderId"`
+}
+
+// CreateCreateVpnGatewayRequest creates a request to invoke CreateVpnGateway API
+func CreateCreateVpnGatewayRequest() (request *CreateVpnGatewayRequest) {
+	request = &CreateVpnGatewayRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "CreateVpnGateway", "vpc", "openAPI")
+	return
+}
+
+// CreateCreateVpnGatewayResponse creates a response to parse from CreateVpnGateway response
+func CreateCreateVpnGatewayResponse() (response *CreateVpnGatewayResponse) {
+	response = &CreateVpnGatewayResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 2 - 2
services/vpc/deactivate_router_interface.go

@@ -76,9 +76,9 @@ func (client *Client) DeactivateRouterInterfaceWithCallback(request *DeactivateR
 // DeactivateRouterInterfaceRequest is the request struct for api DeactivateRouterInterface
 type DeactivateRouterInterfaceRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	RouterInterfaceId    string           `position:"Query" name:"RouterInterfaceId"`
 }
 

+ 108 - 0
services/vpc/deactive_flow_log.go

@@ -0,0 +1,108 @@
+package vpc
+
+//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"
+)
+
+// DeactiveFlowLog invokes the vpc.DeactiveFlowLog API synchronously
+// api document: https://help.aliyun.com/api/vpc/deactiveflowlog.html
+func (client *Client) DeactiveFlowLog(request *DeactiveFlowLogRequest) (response *DeactiveFlowLogResponse, err error) {
+	response = CreateDeactiveFlowLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeactiveFlowLogWithChan invokes the vpc.DeactiveFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deactiveflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeactiveFlowLogWithChan(request *DeactiveFlowLogRequest) (<-chan *DeactiveFlowLogResponse, <-chan error) {
+	responseChan := make(chan *DeactiveFlowLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeactiveFlowLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeactiveFlowLogWithCallback invokes the vpc.DeactiveFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deactiveflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeactiveFlowLogWithCallback(request *DeactiveFlowLogRequest, callback func(response *DeactiveFlowLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeactiveFlowLogResponse
+		var err error
+		defer close(result)
+		response, err = client.DeactiveFlowLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeactiveFlowLogRequest is the request struct for api DeactiveFlowLog
+type DeactiveFlowLogRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	FlowLogId            string           `position:"Query" name:"FlowLogId"`
+}
+
+// DeactiveFlowLogResponse is the response struct for api DeactiveFlowLog
+type DeactiveFlowLogResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   string `json:"Success" xml:"Success"`
+}
+
+// CreateDeactiveFlowLogRequest creates a request to invoke DeactiveFlowLog API
+func CreateDeactiveFlowLogRequest() (request *DeactiveFlowLogRequest) {
+	request = &DeactiveFlowLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DeactiveFlowLog", "vpc", "openAPI")
+	return
+}
+
+// CreateDeactiveFlowLogResponse creates a response to parse from DeactiveFlowLog response
+func CreateDeactiveFlowLogResponse() (response *DeactiveFlowLogResponse) {
+	response = &DeactiveFlowLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/vpc/delete_bandwidth_package.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteBandwidthPackageWithCallback(request *DeleteBandwidt
 // DeleteBandwidthPackageRequest is the request struct for api DeleteBandwidthPackage
 type DeleteBandwidthPackageRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Force                requests.Boolean `position:"Query" name:"Force"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteBandwidthPackageResponse is the response struct for api DeleteBandwidthPackage

+ 3 - 3
services/vpc/delete_bgp_group.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteBgpGroupWithCallback(request *DeleteBgpGroupRequest,
 // DeleteBgpGroupRequest is the request struct for api DeleteBgpGroup
 type DeleteBgpGroupRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteBgpGroupResponse is the response struct for api DeleteBgpGroup

+ 4 - 4
services/vpc/delete_bgp_network.go

@@ -76,13 +76,13 @@ func (client *Client) DeleteBgpNetworkWithCallback(request *DeleteBgpNetworkRequ
 // DeleteBgpNetworkRequest is the request struct for api DeleteBgpNetwork
 type DeleteBgpNetworkRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	DstCidrBlock         string           `position:"Query" name:"DstCidrBlock"`
-	RouterId             string           `position:"Query" name:"RouterId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	RouterId             string           `position:"Query" name:"RouterId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	DstCidrBlock         string           `position:"Query" name:"DstCidrBlock"`
 }
 
 // DeleteBgpNetworkResponse is the response struct for api DeleteBgpNetwork

+ 3 - 3
services/vpc/delete_bgp_peer.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteBgpPeerWithCallback(request *DeleteBgpPeerRequest, c
 // DeleteBgpPeerRequest is the request struct for api DeleteBgpPeer
 type DeleteBgpPeerRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	BgpPeerId            string           `position:"Query" name:"BgpPeerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	BgpPeerId            string           `position:"Query" name:"BgpPeerId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteBgpPeerResponse is the response struct for api DeleteBgpPeer

+ 3 - 3
services/vpc/delete_common_bandwidth_package.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteCommonBandwidthPackageWithCallback(request *DeleteCo
 // DeleteCommonBandwidthPackageRequest is the request struct for api DeleteCommonBandwidthPackage
 type DeleteCommonBandwidthPackageRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	Force                string           `position:"Query" name:"Force"`
-	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteCommonBandwidthPackageResponse is the response struct for api DeleteCommonBandwidthPackage

+ 3 - 3
services/vpc/delete_customer_gateway.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteCustomerGatewayWithCallback(request *DeleteCustomerG
 // DeleteCustomerGatewayRequest is the request struct for api DeleteCustomerGateway
 type DeleteCustomerGatewayRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	CustomerGatewayId    string           `position:"Query" name:"CustomerGatewayId"`
 }
 

+ 108 - 0
services/vpc/delete_flow_log.go

@@ -0,0 +1,108 @@
+package vpc
+
+//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"
+)
+
+// DeleteFlowLog invokes the vpc.DeleteFlowLog API synchronously
+// api document: https://help.aliyun.com/api/vpc/deleteflowlog.html
+func (client *Client) DeleteFlowLog(request *DeleteFlowLogRequest) (response *DeleteFlowLogResponse, err error) {
+	response = CreateDeleteFlowLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteFlowLogWithChan invokes the vpc.DeleteFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteFlowLogWithChan(request *DeleteFlowLogRequest) (<-chan *DeleteFlowLogResponse, <-chan error) {
+	responseChan := make(chan *DeleteFlowLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteFlowLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteFlowLogWithCallback invokes the vpc.DeleteFlowLog API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteflowlog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteFlowLogWithCallback(request *DeleteFlowLogRequest, callback func(response *DeleteFlowLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteFlowLogResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteFlowLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteFlowLogRequest is the request struct for api DeleteFlowLog
+type DeleteFlowLogRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	FlowLogId            string           `position:"Query" name:"FlowLogId"`
+}
+
+// DeleteFlowLogResponse is the response struct for api DeleteFlowLog
+type DeleteFlowLogResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   string `json:"Success" xml:"Success"`
+}
+
+// CreateDeleteFlowLogRequest creates a request to invoke DeleteFlowLog API
+func CreateDeleteFlowLogRequest() (request *DeleteFlowLogRequest) {
+	request = &DeleteFlowLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DeleteFlowLog", "vpc", "openAPI")
+	return
+}
+
+// CreateDeleteFlowLogResponse creates a response to parse from DeleteFlowLog response
+func CreateDeleteFlowLogResponse() (response *DeleteFlowLogResponse) {
+	response = &DeleteFlowLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/vpc/delete_forward_entry.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteForwardEntryWithCallback(request *DeleteForwardEntry
 // DeleteForwardEntryRequest is the request struct for api DeleteForwardEntry
 type DeleteForwardEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ForwardEntryId       string           `position:"Query" name:"ForwardEntryId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	ForwardTableId       string           `position:"Query" name:"ForwardTableId"`
-	ForwardEntryId       string           `position:"Query" name:"ForwardEntryId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteForwardEntryResponse is the response struct for api DeleteForwardEntry

+ 3 - 3
services/vpc/delete_global_acceleration_instance.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteGlobalAccelerationInstanceWithCallback(request *Dele
 // DeleteGlobalAccelerationInstanceRequest is the request struct for api DeleteGlobalAccelerationInstance
 type DeleteGlobalAccelerationInstanceRequest struct {
 	*requests.RpcRequest
-	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId              requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
+	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
+	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 }
 
 // DeleteGlobalAccelerationInstanceResponse is the response struct for api DeleteGlobalAccelerationInstance

+ 4 - 4
services/vpc/delete_ha_vip.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteHaVipWithCallback(request *DeleteHaVipRequest, callb
 // DeleteHaVipRequest is the request struct for api DeleteHaVip
 type DeleteHaVipRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	HaVipId              string           `position:"Query" name:"HaVipId"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	HaVipId              string           `position:"Query" name:"HaVipId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteHaVipResponse is the response struct for api DeleteHaVip

+ 108 - 0
services/vpc/delete_i_pv6_translator.go

@@ -0,0 +1,108 @@
+package vpc
+
+//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"
+)
+
+// DeleteIPv6Translator invokes the vpc.DeleteIPv6Translator API synchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translator.html
+func (client *Client) DeleteIPv6Translator(request *DeleteIPv6TranslatorRequest) (response *DeleteIPv6TranslatorResponse, err error) {
+	response = CreateDeleteIPv6TranslatorResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteIPv6TranslatorWithChan invokes the vpc.DeleteIPv6Translator API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translator.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteIPv6TranslatorWithChan(request *DeleteIPv6TranslatorRequest) (<-chan *DeleteIPv6TranslatorResponse, <-chan error) {
+	responseChan := make(chan *DeleteIPv6TranslatorResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteIPv6Translator(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteIPv6TranslatorWithCallback invokes the vpc.DeleteIPv6Translator API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translator.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteIPv6TranslatorWithCallback(request *DeleteIPv6TranslatorRequest, callback func(response *DeleteIPv6TranslatorResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteIPv6TranslatorResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteIPv6Translator(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteIPv6TranslatorRequest is the request struct for api DeleteIPv6Translator
+type DeleteIPv6TranslatorRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Ipv6TranslatorId     string           `position:"Query" name:"Ipv6TranslatorId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteIPv6TranslatorResponse is the response struct for api DeleteIPv6Translator
+type DeleteIPv6TranslatorResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteIPv6TranslatorRequest creates a request to invoke DeleteIPv6Translator API
+func CreateDeleteIPv6TranslatorRequest() (request *DeleteIPv6TranslatorRequest) {
+	request = &DeleteIPv6TranslatorRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DeleteIPv6Translator", "vpc", "openAPI")
+	return
+}
+
+// CreateDeleteIPv6TranslatorResponse creates a response to parse from DeleteIPv6Translator response
+func CreateDeleteIPv6TranslatorResponse() (response *DeleteIPv6TranslatorResponse) {
+	response = &DeleteIPv6TranslatorResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/vpc/delete_i_pv6_translator_entry.go

@@ -0,0 +1,109 @@
+package vpc
+
+//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"
+)
+
+// DeleteIPv6TranslatorEntry invokes the vpc.DeleteIPv6TranslatorEntry API synchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translatorentry.html
+func (client *Client) DeleteIPv6TranslatorEntry(request *DeleteIPv6TranslatorEntryRequest) (response *DeleteIPv6TranslatorEntryResponse, err error) {
+	response = CreateDeleteIPv6TranslatorEntryResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteIPv6TranslatorEntryWithChan invokes the vpc.DeleteIPv6TranslatorEntry API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translatorentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteIPv6TranslatorEntryWithChan(request *DeleteIPv6TranslatorEntryRequest) (<-chan *DeleteIPv6TranslatorEntryResponse, <-chan error) {
+	responseChan := make(chan *DeleteIPv6TranslatorEntryResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteIPv6TranslatorEntry(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteIPv6TranslatorEntryWithCallback invokes the vpc.DeleteIPv6TranslatorEntry API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteipv6translatorentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteIPv6TranslatorEntryWithCallback(request *DeleteIPv6TranslatorEntryRequest, callback func(response *DeleteIPv6TranslatorEntryResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteIPv6TranslatorEntryResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteIPv6TranslatorEntry(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteIPv6TranslatorEntryRequest is the request struct for api DeleteIPv6TranslatorEntry
+type DeleteIPv6TranslatorEntryRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId       requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	Ipv6TranslatorEntryId string           `position:"Query" name:"Ipv6TranslatorEntryId"`
+	ResourceOwnerAccount  string           `position:"Query" name:"ResourceOwnerAccount"`
+	ClientToken           string           `position:"Query" name:"ClientToken"`
+	OwnerAccount          string           `position:"Query" name:"OwnerAccount"`
+	Ipv6TranslatorId      string           `position:"Query" name:"Ipv6TranslatorId"`
+	OwnerId               requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteIPv6TranslatorEntryResponse is the response struct for api DeleteIPv6TranslatorEntry
+type DeleteIPv6TranslatorEntryResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteIPv6TranslatorEntryRequest creates a request to invoke DeleteIPv6TranslatorEntry API
+func CreateDeleteIPv6TranslatorEntryRequest() (request *DeleteIPv6TranslatorEntryRequest) {
+	request = &DeleteIPv6TranslatorEntryRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DeleteIPv6TranslatorEntry", "vpc", "openAPI")
+	return
+}
+
+// CreateDeleteIPv6TranslatorEntryResponse creates a response to parse from DeleteIPv6TranslatorEntry response
+func CreateDeleteIPv6TranslatorEntryResponse() (response *DeleteIPv6TranslatorEntryResponse) {
+	response = &DeleteIPv6TranslatorEntryResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/vpc/delete_nat_gateway.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteNatGatewayWithCallback(request *DeleteNatGatewayRequ
 // DeleteNatGatewayRequest is the request struct for api DeleteNatGateway
 type DeleteNatGatewayRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
 	Force                requests.Boolean `position:"Query" name:"Force"`
+	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteNatGatewayResponse is the response struct for api DeleteNatGateway

+ 3 - 3
services/vpc/delete_nqa.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteNqaWithCallback(request *DeleteNqaRequest, callback
 // DeleteNqaRequest is the request struct for api DeleteNqa
 type DeleteNqaRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	NqaId                string           `position:"Query" name:"NqaId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	NqaId                string           `position:"Query" name:"NqaId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteNqaResponse is the response struct for api DeleteNqa

+ 3 - 3
services/vpc/delete_physical_connection.go

@@ -76,13 +76,13 @@ func (client *Client) DeletePhysicalConnectionWithCallback(request *DeletePhysic
 // DeletePhysicalConnectionRequest is the request struct for api DeletePhysicalConnection
 type DeletePhysicalConnectionRequest struct {
 	*requests.RpcRequest
-	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	PhysicalConnectionId string           `position:"Query" name:"PhysicalConnectionId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	UserCidr             string           `position:"Query" name:"UserCidr"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeletePhysicalConnectionResponse is the response struct for api DeletePhysicalConnection

+ 5 - 5
services/vpc/delete_route_entry.go

@@ -76,20 +76,20 @@ func (client *Client) DeleteRouteEntryWithCallback(request *DeleteRouteEntryRequ
 // DeleteRouteEntryRequest is the request struct for api DeleteRouteEntry
 type DeleteRouteEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer               `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                         `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer               `position:"Query" name:"ResourceOwnerId"`
-	RouteTableId         string                         `position:"Query" name:"RouteTableId"`
+	ResourceOwnerAccount string                         `position:"Query" name:"ResourceOwnerAccount"`
 	DestinationCidrBlock string                         `position:"Query" name:"DestinationCidrBlock"`
-	NextHopId            string                         `position:"Query" name:"NextHopId"`
 	OwnerAccount         string                         `position:"Query" name:"OwnerAccount"`
+	NextHopId            string                         `position:"Query" name:"NextHopId"`
+	OwnerId              requests.Integer               `position:"Query" name:"OwnerId"`
 	NextHopList          *[]DeleteRouteEntryNextHopList `position:"Query" name:"NextHopList"  type:"Repeated"`
+	RouteTableId         string                         `position:"Query" name:"RouteTableId"`
 }
 
 // DeleteRouteEntryNextHopList is a repeated param struct in DeleteRouteEntryRequest
 type DeleteRouteEntryNextHopList struct {
-	NextHopType string `name:"NextHopType"`
 	NextHopId   string `name:"NextHopId"`
+	NextHopType string `name:"NextHopType"`
 }
 
 // DeleteRouteEntryResponse is the response struct for api DeleteRouteEntry

+ 107 - 0
services/vpc/delete_route_table.go

@@ -0,0 +1,107 @@
+package vpc
+
+//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"
+)
+
+// DeleteRouteTable invokes the vpc.DeleteRouteTable API synchronously
+// api document: https://help.aliyun.com/api/vpc/deleteroutetable.html
+func (client *Client) DeleteRouteTable(request *DeleteRouteTableRequest) (response *DeleteRouteTableResponse, err error) {
+	response = CreateDeleteRouteTableResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteRouteTableWithChan invokes the vpc.DeleteRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteRouteTableWithChan(request *DeleteRouteTableRequest) (<-chan *DeleteRouteTableResponse, <-chan error) {
+	responseChan := make(chan *DeleteRouteTableResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteRouteTable(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteRouteTableWithCallback invokes the vpc.DeleteRouteTable API asynchronously
+// api document: https://help.aliyun.com/api/vpc/deleteroutetable.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteRouteTableWithCallback(request *DeleteRouteTableRequest, callback func(response *DeleteRouteTableResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteRouteTableResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteRouteTable(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteRouteTableRequest is the request struct for api DeleteRouteTable
+type DeleteRouteTableRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	RouteTableId         string           `position:"Query" name:"RouteTableId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteRouteTableResponse is the response struct for api DeleteRouteTable
+type DeleteRouteTableResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteRouteTableRequest creates a request to invoke DeleteRouteTable API
+func CreateDeleteRouteTableRequest() (request *DeleteRouteTableRequest) {
+	request = &DeleteRouteTableRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DeleteRouteTable", "vpc", "openAPI")
+	return
+}
+
+// CreateDeleteRouteTableResponse creates a response to parse from DeleteRouteTable response
+func CreateDeleteRouteTableResponse() (response *DeleteRouteTableResponse) {
+	response = &DeleteRouteTableResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 3
services/vpc/delete_router_interface.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteRouterInterfaceWithCallback(request *DeleteRouterInt
 // DeleteRouterInterfaceRequest is the request struct for api DeleteRouterInterface
 type DeleteRouterInterfaceRequest struct {
 	*requests.RpcRequest
-	RouterInterfaceId    string           `position:"Query" name:"RouterInterfaceId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	RouterInterfaceId    string           `position:"Query" name:"RouterInterfaceId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteRouterInterfaceResponse is the response struct for api DeleteRouterInterface

+ 2 - 2
services/vpc/delete_snat_entry.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteSnatEntryWithCallback(request *DeleteSnatEntryReques
 // DeleteSnatEntryRequest is the request struct for api DeleteSnatEntry
 type DeleteSnatEntryRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	SnatTableId          string           `position:"Query" name:"SnatTableId"`
 	SnatEntryId          string           `position:"Query" name:"SnatEntryId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteSnatEntryResponse is the response struct for api DeleteSnatEntry

+ 3 - 3
services/vpc/delete_ssl_vpn_client_cert.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteSslVpnClientCertWithCallback(request *DeleteSslVpnCl
 // DeleteSslVpnClientCertRequest is the request struct for api DeleteSslVpnClientCert
 type DeleteSslVpnClientCertRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	SslVpnClientCertId   string           `position:"Query" name:"SslVpnClientCertId"`
 }
 

+ 4 - 4
services/vpc/delete_ssl_vpn_server.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteSslVpnServerWithCallback(request *DeleteSslVpnServer
 // DeleteSslVpnServerRequest is the request struct for api DeleteSslVpnServer
 type DeleteSslVpnServerRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	SslVpnServerId       string           `position:"Query" name:"SslVpnServerId"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
-	SslVpnServerId       string           `position:"Query" name:"SslVpnServerId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteSslVpnServerResponse is the response struct for api DeleteSslVpnServer

+ 3 - 3
services/vpc/delete_v_switch.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteVSwitchWithCallback(request *DeleteVSwitchRequest, c
 // DeleteVSwitchRequest is the request struct for api DeleteVSwitch
 type DeleteVSwitchRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	VSwitchId            string           `position:"Query" name:"VSwitchId"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteVSwitchResponse is the response struct for api DeleteVSwitch

+ 3 - 3
services/vpc/delete_virtual_border_router.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteVirtualBorderRouterWithCallback(request *DeleteVirtu
 // DeleteVirtualBorderRouterRequest is the request struct for api DeleteVirtualBorderRouter
 type DeleteVirtualBorderRouterRequest struct {
 	*requests.RpcRequest
-	VbrId                string           `position:"Query" name:"VbrId"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	VbrId                string           `position:"Query" name:"VbrId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteVirtualBorderRouterResponse is the response struct for api DeleteVirtualBorderRouter

+ 2 - 2
services/vpc/delete_vpc.go

@@ -76,11 +76,11 @@ func (client *Client) DeleteVpcWithCallback(request *DeleteVpcRequest, callback
 // DeleteVpcRequest is the request struct for api DeleteVpc
 type DeleteVpcRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	VpcId                string           `position:"Query" name:"VpcId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteVpcResponse is the response struct for api DeleteVpc

+ 3 - 3
services/vpc/delete_vpn_connection.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteVpnConnectionWithCallback(request *DeleteVpnConnecti
 // DeleteVpnConnectionRequest is the request struct for api DeleteVpnConnection
 type DeleteVpnConnectionRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
 	VpnConnectionId      string           `position:"Query" name:"VpnConnectionId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteVpnConnectionResponse is the response struct for api DeleteVpnConnection

+ 3 - 3
services/vpc/delete_vpn_gateway.go

@@ -76,12 +76,12 @@ func (client *Client) DeleteVpnGatewayWithCallback(request *DeleteVpnGatewayRequ
 // DeleteVpnGatewayRequest is the request struct for api DeleteVpnGateway
 type DeleteVpnGatewayRequest struct {
 	*requests.RpcRequest
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string           `position:"Query" name:"ClientToken"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	VpnGatewayId         string           `position:"Query" name:"VpnGatewayId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DeleteVpnGatewayResponse is the response struct for api DeleteVpnGateway

+ 6 - 6
services/vpc/describe_access_points.go

@@ -77,20 +77,20 @@ func (client *Client) DescribeAccessPointsWithCallback(request *DescribeAccessPo
 type DescribeAccessPointsRequest struct {
 	*requests.RpcRequest
 	Filter               *[]DescribeAccessPointsFilter `position:"Query" name:"Filter"  type:"Repeated"`
-	OwnerId              requests.Integer              `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                        `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer              `position:"Query" name:"ResourceOwnerId"`
-	Type                 string                        `position:"Query" name:"Type"`
-	Name                 string                        `position:"Query" name:"Name"`
 	HostOperator         string                        `position:"Query" name:"HostOperator"`
-	PageNumber           requests.Integer              `position:"Query" name:"PageNumber"`
+	ResourceOwnerAccount string                        `position:"Query" name:"ResourceOwnerAccount"`
+	Name                 string                        `position:"Query" name:"Name"`
 	PageSize             requests.Integer              `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer              `position:"Query" name:"OwnerId"`
+	Type                 string                        `position:"Query" name:"Type"`
+	PageNumber           requests.Integer              `position:"Query" name:"PageNumber"`
 }
 
 // DescribeAccessPointsFilter is a repeated param struct in DescribeAccessPointsRequest
 type DescribeAccessPointsFilter struct {
-	Key   string    `name:"Key"`
 	Value *[]string `name:"Value" type:"Repeated"`
+	Key   string    `name:"Key"`
 }
 
 // DescribeAccessPointsResponse is the response struct for api DescribeAccessPoints

+ 5 - 5
services/vpc/describe_bandwidth_package_public_ip_monitor_data.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeBandwidthPackagePublicIpMonitorDataWithCallback(re
 // DescribeBandwidthPackagePublicIpMonitorDataRequest is the request struct for api DescribeBandwidthPackagePublicIpMonitorData
 type DescribeBandwidthPackagePublicIpMonitorDataRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	AllocationId         string           `position:"Query" name:"AllocationId"`
-	StartTime            string           `position:"Query" name:"StartTime"`
-	EndTime              string           `position:"Query" name:"EndTime"`
 	Period               requests.Integer `position:"Query" name:"Period"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	AllocationId         string           `position:"Query" name:"AllocationId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DescribeBandwidthPackagePublicIpMonitorDataResponse is the response struct for api DescribeBandwidthPackagePublicIpMonitorData

+ 4 - 4
services/vpc/describe_bandwidth_packages.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeBandwidthPackagesWithCallback(request *DescribeBan
 // DescribeBandwidthPackagesRequest is the request struct for api DescribeBandwidthPackages
 type DescribeBandwidthPackagesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // DescribeBandwidthPackagesResponse is the response struct for api DescribeBandwidthPackages

+ 4 - 4
services/vpc/describe_bgp_groups.go

@@ -76,15 +76,15 @@ func (client *Client) DescribeBgpGroupsWithCallback(request *DescribeBgpGroupsRe
 // DescribeBgpGroupsRequest is the request struct for api DescribeBgpGroups
 type DescribeBgpGroupsRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	RouterId             string           `position:"Query" name:"RouterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
 	IsDefault            requests.Boolean `position:"Query" name:"IsDefault"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 }
 
 // DescribeBgpGroupsResponse is the response struct for api DescribeBgpGroups

+ 5 - 5
services/vpc/describe_bgp_peers.go

@@ -76,16 +76,16 @@ func (client *Client) DescribeBgpPeersWithCallback(request *DescribeBgpPeersRequ
 // DescribeBgpPeersRequest is the request struct for api DescribeBgpPeers
 type DescribeBgpPeersRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	RouterId             string           `position:"Query" name:"RouterId"`
-	BgpPeerId            string           `position:"Query" name:"BgpPeerId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	BgpGroupId           string           `position:"Query" name:"BgpGroupId"`
+	BgpPeerId            string           `position:"Query" name:"BgpPeerId"`
 	IsDefault            requests.Boolean `position:"Query" name:"IsDefault"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 }
 
 // DescribeBgpPeersResponse is the response struct for api DescribeBgpPeers

+ 9 - 8
services/vpc/describe_common_bandwidth_packages.go

@@ -76,14 +76,15 @@ func (client *Client) DescribeCommonBandwidthPackagesWithCallback(request *Descr
 // DescribeCommonBandwidthPackagesRequest is the request struct for api DescribeCommonBandwidthPackages
 type DescribeCommonBandwidthPackagesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	BandwidthPackageId   string           `position:"Query" name:"BandwidthPackageId"`
-	Name                 string           `position:"Query" name:"Name"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	ResourceOwnerId        requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	BandwidthPackageId     string           `position:"Query" name:"BandwidthPackageId"`
+	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
+	Name                   string           `position:"Query" name:"Name"`
+	PageSize               requests.Integer `position:"Query" name:"PageSize"`
+	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+	IncludeReservationData requests.Boolean `position:"Query" name:"IncludeReservationData"`
+	PageNumber             requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // DescribeCommonBandwidthPackagesResponse is the response struct for api DescribeCommonBandwidthPackages

+ 2 - 2
services/vpc/describe_customer_gateway.go

@@ -76,10 +76,10 @@ func (client *Client) DescribeCustomerGatewayWithCallback(request *DescribeCusto
 // DescribeCustomerGatewayRequest is the request struct for api DescribeCustomerGateway
 type DescribeCustomerGatewayRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	CustomerGatewayId    string           `position:"Query" name:"CustomerGatewayId"`
 }
 

+ 3 - 3
services/vpc/describe_customer_gateways.go

@@ -76,13 +76,13 @@ func (client *Client) DescribeCustomerGatewaysWithCallback(request *DescribeCust
 // DescribeCustomerGatewaysRequest is the request struct for api DescribeCustomerGateways
 type DescribeCustomerGatewaysRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	CustomerGatewayId    string           `position:"Query" name:"CustomerGatewayId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // DescribeCustomerGatewaysResponse is the response struct for api DescribeCustomerGateways

+ 13 - 12
services/vpc/describe_eip_addresses.go

@@ -76,24 +76,25 @@ func (client *Client) DescribeEipAddressesWithCallback(request *DescribeEipAddre
 // DescribeEipAddressesRequest is the request struct for api DescribeEipAddresses
 type DescribeEipAddressesRequest struct {
 	*requests.RpcRequest
-	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId        requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	Status                 string           `position:"Query" name:"Status"`
-	EipAddress             string           `position:"Query" name:"EipAddress"`
-	AllocationId           string           `position:"Query" name:"AllocationId"`
-	ResourceGroupId        string           `position:"Query" name:"ResourceGroupId"`
-	PageNumber             requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize               requests.Integer `position:"Query" name:"PageSize"`
+	ResourceOwnerAccount   string           `position:"Query" name:"ResourceOwnerAccount"`
+	Filter2Value           string           `position:"Query" name:"Filter.2.Value"`
 	OwnerAccount           string           `position:"Query" name:"OwnerAccount"`
-	Filter1Key             string           `position:"Query" name:"Filter.1.Key"`
-	Filter2Key             string           `position:"Query" name:"Filter.2.Key"`
+	AllocationId           string           `position:"Query" name:"AllocationId"`
 	Filter1Value           string           `position:"Query" name:"Filter.1.Value"`
-	Filter2Value           string           `position:"Query" name:"Filter.2.Value"`
+	Filter2Key             string           `position:"Query" name:"Filter.2.Key"`
+	OwnerId                requests.Integer `position:"Query" name:"OwnerId"`
+	IncludeReservationData requests.Boolean `position:"Query" name:"IncludeReservationData"`
+	EipAddress             string           `position:"Query" name:"EipAddress"`
+	PageNumber             requests.Integer `position:"Query" name:"PageNumber"`
+	ResourceGroupId        string           `position:"Query" name:"ResourceGroupId"`
 	LockReason             string           `position:"Query" name:"LockReason"`
+	Filter1Key             string           `position:"Query" name:"Filter.1.Key"`
 	AssociatedInstanceType string           `position:"Query" name:"AssociatedInstanceType"`
-	AssociatedInstanceId   string           `position:"Query" name:"AssociatedInstanceId"`
+	PageSize               requests.Integer `position:"Query" name:"PageSize"`
 	ChargeType             string           `position:"Query" name:"ChargeType"`
+	AssociatedInstanceId   string           `position:"Query" name:"AssociatedInstanceId"`
+	Status                 string           `position:"Query" name:"Status"`
 }
 
 // DescribeEipAddressesResponse is the response struct for api DescribeEipAddresses

+ 5 - 5
services/vpc/describe_eip_monitor_data.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeEipMonitorDataWithCallback(request *DescribeEipMon
 // DescribeEipMonitorDataRequest is the request struct for api DescribeEipMonitorData
 type DescribeEipMonitorDataRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	AllocationId         string           `position:"Query" name:"AllocationId"`
-	StartTime            string           `position:"Query" name:"StartTime"`
-	EndTime              string           `position:"Query" name:"EndTime"`
 	Period               requests.Integer `position:"Query" name:"Period"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	AllocationId         string           `position:"Query" name:"AllocationId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DescribeEipMonitorDataResponse is the response struct for api DescribeEipMonitorData

+ 122 - 0
services/vpc/describe_flow_logs.go

@@ -0,0 +1,122 @@
+package vpc
+
+//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"
+)
+
+// DescribeFlowLogs invokes the vpc.DescribeFlowLogs API synchronously
+// api document: https://help.aliyun.com/api/vpc/describeflowlogs.html
+func (client *Client) DescribeFlowLogs(request *DescribeFlowLogsRequest) (response *DescribeFlowLogsResponse, err error) {
+	response = CreateDescribeFlowLogsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeFlowLogsWithChan invokes the vpc.DescribeFlowLogs API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeflowlogs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeFlowLogsWithChan(request *DescribeFlowLogsRequest) (<-chan *DescribeFlowLogsResponse, <-chan error) {
+	responseChan := make(chan *DescribeFlowLogsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeFlowLogs(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeFlowLogsWithCallback invokes the vpc.DescribeFlowLogs API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeflowlogs.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeFlowLogsWithCallback(request *DescribeFlowLogsRequest, callback func(response *DescribeFlowLogsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeFlowLogsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeFlowLogs(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeFlowLogsRequest is the request struct for api DescribeFlowLogs
+type DescribeFlowLogsRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceId           string           `position:"Query" name:"ResourceId"`
+	ProjectName          string           `position:"Query" name:"ProjectName"`
+	LogStoreName         string           `position:"Query" name:"LogStoreName"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ResourceType         string           `position:"Query" name:"ResourceType"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	TrafficType          string           `position:"Query" name:"TrafficType"`
+	FlowLogId            string           `position:"Query" name:"FlowLogId"`
+	FlowLogName          string           `position:"Query" name:"FlowLogName"`
+	Status               string           `position:"Query" name:"Status"`
+}
+
+// DescribeFlowLogsResponse is the response struct for api DescribeFlowLogs
+type DescribeFlowLogsResponse struct {
+	*responses.BaseResponse
+	RequestId  string   `json:"RequestId" xml:"RequestId"`
+	Success    string   `json:"Success" xml:"Success"`
+	TotalCount string   `json:"TotalCount" xml:"TotalCount"`
+	PageNumber string   `json:"PageNumber" xml:"PageNumber"`
+	PageSize   string   `json:"PageSize" xml:"PageSize"`
+	FlowLogs   FlowLogs `json:"FlowLogs" xml:"FlowLogs"`
+}
+
+// CreateDescribeFlowLogsRequest creates a request to invoke DescribeFlowLogs API
+func CreateDescribeFlowLogsRequest() (request *DescribeFlowLogsRequest) {
+	request = &DescribeFlowLogsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DescribeFlowLogs", "vpc", "openAPI")
+	return
+}
+
+// CreateDescribeFlowLogsResponse creates a response to parse from DescribeFlowLogs response
+func CreateDescribeFlowLogsResponse() (response *DescribeFlowLogsResponse) {
+	response = &DescribeFlowLogsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 4 - 4
services/vpc/describe_forward_table_entries.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeForwardTableEntriesWithCallback(request *DescribeF
 // DescribeForwardTableEntriesRequest is the request struct for api DescribeForwardTableEntries
 type DescribeForwardTableEntriesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	ForwardEntryId       string           `position:"Query" name:"ForwardEntryId"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	ForwardTableId       string           `position:"Query" name:"ForwardTableId"`
-	ForwardEntryId       string           `position:"Query" name:"ForwardEntryId"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // DescribeForwardTableEntriesResponse is the response struct for api DescribeForwardTableEntries

+ 3 - 3
services/vpc/describe_forward_tables.go

@@ -76,13 +76,13 @@ func (client *Client) DescribeForwardTablesWithCallback(request *DescribeForward
 // DescribeForwardTablesRequest is the request struct for api DescribeForwardTables
 type DescribeForwardTablesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	ForwardTableId       string           `position:"Query" name:"ForwardTableId"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // DescribeForwardTablesResponse is the response struct for api DescribeForwardTables

+ 8 - 7
services/vpc/describe_global_acceleration_instances.go

@@ -76,19 +76,20 @@ func (client *Client) DescribeGlobalAccelerationInstancesWithCallback(request *D
 // DescribeGlobalAccelerationInstancesRequest is the request struct for api DescribeGlobalAccelerationInstances
 type DescribeGlobalAccelerationInstancesRequest struct {
 	*requests.RpcRequest
-	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId              requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 	IpAddress                    string           `position:"Query" name:"IpAddress"`
-	Name                         string           `position:"Query" name:"Name"`
-	Status                       string           `position:"Query" name:"Status"`
+	ResourceOwnerId              requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	BandwidthType                string           `position:"Query" name:"BandwidthType"`
+	ResourceOwnerAccount         string           `position:"Query" name:"ResourceOwnerAccount"`
 	ServiceLocation              string           `position:"Query" name:"ServiceLocation"`
+	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
+	OwnerId                      requests.Integer `position:"Query" name:"OwnerId"`
+	IncludeReservationData       requests.Boolean `position:"Query" name:"IncludeReservationData"`
+	GlobalAccelerationInstanceId string           `position:"Query" name:"GlobalAccelerationInstanceId"`
 	ServerId                     string           `position:"Query" name:"ServerId"`
 	PageNumber                   requests.Integer `position:"Query" name:"PageNumber"`
+	Name                         string           `position:"Query" name:"Name"`
 	PageSize                     requests.Integer `position:"Query" name:"PageSize"`
-	OwnerAccount                 string           `position:"Query" name:"OwnerAccount"`
+	Status                       string           `position:"Query" name:"Status"`
 }
 
 // DescribeGlobalAccelerationInstancesResponse is the response struct for api DescribeGlobalAccelerationInstances

+ 5 - 5
services/vpc/describe_ha_vips.go

@@ -76,19 +76,19 @@ func (client *Client) DescribeHaVipsWithCallback(request *DescribeHaVipsRequest,
 // DescribeHaVipsRequest is the request struct for api DescribeHaVips
 type DescribeHaVipsRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
+	Filter               *[]DescribeHaVipsFilter `position:"Query" name:"Filter"  type:"Repeated"`
 	ResourceOwnerId      requests.Integer        `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string                  `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string                  `position:"Query" name:"OwnerAccount"`
-	PageNumber           requests.Integer        `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer        `position:"Query" name:"PageSize"`
-	Filter               *[]DescribeHaVipsFilter `position:"Query" name:"Filter"  type:"Repeated"`
+	OwnerId              requests.Integer        `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer        `position:"Query" name:"PageNumber"`
 }
 
 // DescribeHaVipsFilter is a repeated param struct in DescribeHaVipsRequest
 type DescribeHaVipsFilter struct {
-	Key   string    `name:"Key"`
 	Value *[]string `name:"Value" type:"Repeated"`
+	Key   string    `name:"Key"`
 }
 
 // DescribeHaVipsResponse is the response struct for api DescribeHaVips

+ 113 - 0
services/vpc/describe_high_definition_monitor_log_attribute.go

@@ -0,0 +1,113 @@
+package vpc
+
+//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"
+)
+
+// DescribeHighDefinitionMonitorLogAttribute invokes the vpc.DescribeHighDefinitionMonitorLogAttribute API synchronously
+// api document: https://help.aliyun.com/api/vpc/describehighdefinitionmonitorlogattribute.html
+func (client *Client) DescribeHighDefinitionMonitorLogAttribute(request *DescribeHighDefinitionMonitorLogAttributeRequest) (response *DescribeHighDefinitionMonitorLogAttributeResponse, err error) {
+	response = CreateDescribeHighDefinitionMonitorLogAttributeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeHighDefinitionMonitorLogAttributeWithChan invokes the vpc.DescribeHighDefinitionMonitorLogAttribute API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describehighdefinitionmonitorlogattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeHighDefinitionMonitorLogAttributeWithChan(request *DescribeHighDefinitionMonitorLogAttributeRequest) (<-chan *DescribeHighDefinitionMonitorLogAttributeResponse, <-chan error) {
+	responseChan := make(chan *DescribeHighDefinitionMonitorLogAttributeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeHighDefinitionMonitorLogAttribute(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeHighDefinitionMonitorLogAttributeWithCallback invokes the vpc.DescribeHighDefinitionMonitorLogAttribute API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describehighdefinitionmonitorlogattribute.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeHighDefinitionMonitorLogAttributeWithCallback(request *DescribeHighDefinitionMonitorLogAttributeRequest, callback func(response *DescribeHighDefinitionMonitorLogAttributeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeHighDefinitionMonitorLogAttributeResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeHighDefinitionMonitorLogAttribute(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeHighDefinitionMonitorLogAttributeRequest is the request struct for api DescribeHighDefinitionMonitorLogAttribute
+type DescribeHighDefinitionMonitorLogAttributeRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	InstanceId           string           `position:"Query" name:"InstanceId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	InstanceType         string           `position:"Query" name:"InstanceType"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeHighDefinitionMonitorLogAttributeResponse is the response struct for api DescribeHighDefinitionMonitorLogAttribute
+type DescribeHighDefinitionMonitorLogAttributeResponse struct {
+	*responses.BaseResponse
+	RequestId    string `json:"RequestId" xml:"RequestId"`
+	Success      string `json:"Success" xml:"Success"`
+	InstanceId   string `json:"InstanceId" xml:"InstanceId"`
+	InstanceType string `json:"InstanceType" xml:"InstanceType"`
+	LogProject   string `json:"LogProject" xml:"LogProject"`
+	LogStore     string `json:"LogStore" xml:"LogStore"`
+}
+
+// CreateDescribeHighDefinitionMonitorLogAttributeRequest creates a request to invoke DescribeHighDefinitionMonitorLogAttribute API
+func CreateDescribeHighDefinitionMonitorLogAttributeRequest() (request *DescribeHighDefinitionMonitorLogAttributeRequest) {
+	request = &DescribeHighDefinitionMonitorLogAttributeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DescribeHighDefinitionMonitorLogAttribute", "vpc", "openAPI")
+	return
+}
+
+// CreateDescribeHighDefinitionMonitorLogAttributeResponse creates a response to parse from DescribeHighDefinitionMonitorLogAttribute response
+func CreateDescribeHighDefinitionMonitorLogAttributeResponse() (response *DescribeHighDefinitionMonitorLogAttributeResponse) {
+	response = &DescribeHighDefinitionMonitorLogAttributeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 121 - 0
services/vpc/describe_i_pv6_translator_entries.go

@@ -0,0 +1,121 @@
+package vpc
+
+//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"
+)
+
+// DescribeIPv6TranslatorEntries invokes the vpc.DescribeIPv6TranslatorEntries API synchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translatorentries.html
+func (client *Client) DescribeIPv6TranslatorEntries(request *DescribeIPv6TranslatorEntriesRequest) (response *DescribeIPv6TranslatorEntriesResponse, err error) {
+	response = CreateDescribeIPv6TranslatorEntriesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeIPv6TranslatorEntriesWithChan invokes the vpc.DescribeIPv6TranslatorEntries API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translatorentries.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeIPv6TranslatorEntriesWithChan(request *DescribeIPv6TranslatorEntriesRequest) (<-chan *DescribeIPv6TranslatorEntriesResponse, <-chan error) {
+	responseChan := make(chan *DescribeIPv6TranslatorEntriesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeIPv6TranslatorEntries(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeIPv6TranslatorEntriesWithCallback invokes the vpc.DescribeIPv6TranslatorEntries API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translatorentries.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeIPv6TranslatorEntriesWithCallback(request *DescribeIPv6TranslatorEntriesRequest, callback func(response *DescribeIPv6TranslatorEntriesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeIPv6TranslatorEntriesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeIPv6TranslatorEntries(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeIPv6TranslatorEntriesRequest is the request struct for api DescribeIPv6TranslatorEntries
+type DescribeIPv6TranslatorEntriesRequest struct {
+	*requests.RpcRequest
+	BackendIpv4Port       requests.Integer `position:"Query" name:"BackendIpv4Port"`
+	ResourceOwnerId       requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	Ipv6TranslatorEntryId string           `position:"Query" name:"Ipv6TranslatorEntryId"`
+	ResourceOwnerAccount  string           `position:"Query" name:"ResourceOwnerAccount"`
+	EntryName             string           `position:"Query" name:"EntryName"`
+	AllocateIpv6Addr      string           `position:"Query" name:"AllocateIpv6Addr"`
+	ClientToken           string           `position:"Query" name:"ClientToken"`
+	OwnerAccount          string           `position:"Query" name:"OwnerAccount"`
+	OwnerId               requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber            requests.Integer `position:"Query" name:"PageNumber"`
+	AllocateIpv6Port      requests.Integer `position:"Query" name:"AllocateIpv6Port"`
+	PageSize              requests.Integer `position:"Query" name:"PageSize"`
+	BackendIpv4Addr       string           `position:"Query" name:"BackendIpv4Addr"`
+	TransProtocol         string           `position:"Query" name:"TransProtocol"`
+	Ipv6TranslatorId      string           `position:"Query" name:"Ipv6TranslatorId"`
+}
+
+// DescribeIPv6TranslatorEntriesResponse is the response struct for api DescribeIPv6TranslatorEntries
+type DescribeIPv6TranslatorEntriesResponse struct {
+	*responses.BaseResponse
+	RequestId             string                `json:"RequestId" xml:"RequestId"`
+	TotalCount            int                   `json:"TotalCount" xml:"TotalCount"`
+	PageNumber            int                   `json:"PageNumber" xml:"PageNumber"`
+	PageSize              int                   `json:"PageSize" xml:"PageSize"`
+	Ipv6TranslatorEntries Ipv6TranslatorEntries `json:"Ipv6TranslatorEntries" xml:"Ipv6TranslatorEntries"`
+}
+
+// CreateDescribeIPv6TranslatorEntriesRequest creates a request to invoke DescribeIPv6TranslatorEntries API
+func CreateDescribeIPv6TranslatorEntriesRequest() (request *DescribeIPv6TranslatorEntriesRequest) {
+	request = &DescribeIPv6TranslatorEntriesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DescribeIPv6TranslatorEntries", "vpc", "openAPI")
+	return
+}
+
+// CreateDescribeIPv6TranslatorEntriesResponse creates a response to parse from DescribeIPv6TranslatorEntries response
+func CreateDescribeIPv6TranslatorEntriesResponse() (response *DescribeIPv6TranslatorEntriesResponse) {
+	response = &DescribeIPv6TranslatorEntriesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 120 - 0
services/vpc/describe_i_pv6_translators.go

@@ -0,0 +1,120 @@
+package vpc
+
+//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"
+)
+
+// DescribeIPv6Translators invokes the vpc.DescribeIPv6Translators API synchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translators.html
+func (client *Client) DescribeIPv6Translators(request *DescribeIPv6TranslatorsRequest) (response *DescribeIPv6TranslatorsResponse, err error) {
+	response = CreateDescribeIPv6TranslatorsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeIPv6TranslatorsWithChan invokes the vpc.DescribeIPv6Translators API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translators.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeIPv6TranslatorsWithChan(request *DescribeIPv6TranslatorsRequest) (<-chan *DescribeIPv6TranslatorsResponse, <-chan error) {
+	responseChan := make(chan *DescribeIPv6TranslatorsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeIPv6Translators(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeIPv6TranslatorsWithCallback invokes the vpc.DescribeIPv6Translators API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describeipv6translators.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeIPv6TranslatorsWithCallback(request *DescribeIPv6TranslatorsRequest, callback func(response *DescribeIPv6TranslatorsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeIPv6TranslatorsResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeIPv6Translators(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeIPv6TranslatorsRequest is the request struct for api DescribeIPv6Translators
+type DescribeIPv6TranslatorsRequest struct {
+	*requests.RpcRequest
+	BusinessStatus       string           `position:"Query" name:"BusinessStatus"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	AllocateIpv6Addr     string           `position:"Query" name:"AllocateIpv6Addr"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	AllocateIpv4Addr     string           `position:"Query" name:"AllocateIpv4Addr"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	Spec                 string           `position:"Query" name:"Spec"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	Name                 string           `position:"Query" name:"Name"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	Ipv6TranslatorId     string           `position:"Query" name:"Ipv6TranslatorId"`
+	PayType              string           `position:"Query" name:"PayType"`
+	Status               string           `position:"Query" name:"Status"`
+}
+
+// DescribeIPv6TranslatorsResponse is the response struct for api DescribeIPv6Translators
+type DescribeIPv6TranslatorsResponse struct {
+	*responses.BaseResponse
+	RequestId       string          `json:"RequestId" xml:"RequestId"`
+	TotalCount      int             `json:"TotalCount" xml:"TotalCount"`
+	PageNumber      int             `json:"PageNumber" xml:"PageNumber"`
+	PageSize        int             `json:"PageSize" xml:"PageSize"`
+	Ipv6Translators Ipv6Translators `json:"Ipv6Translators" xml:"Ipv6Translators"`
+}
+
+// CreateDescribeIPv6TranslatorsRequest creates a request to invoke DescribeIPv6Translators API
+func CreateDescribeIPv6TranslatorsRequest() (request *DescribeIPv6TranslatorsRequest) {
+	request = &DescribeIPv6TranslatorsRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DescribeIPv6Translators", "vpc", "openAPI")
+	return
+}
+
+// CreateDescribeIPv6TranslatorsResponse creates a response to parse from DescribeIPv6Translators response
+func CreateDescribeIPv6TranslatorsResponse() (response *DescribeIPv6TranslatorsResponse) {
+	response = &DescribeIPv6TranslatorsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 4 - 4
services/vpc/describe_nat_gateways.go

@@ -76,15 +76,15 @@ func (client *Client) DescribeNatGatewaysWithCallback(request *DescribeNatGatewa
 // DescribeNatGatewaysRequest is the request struct for api DescribeNatGateways
 type DescribeNatGatewaysRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
 	VpcId                string           `position:"Query" name:"VpcId"`
 	Name                 string           `position:"Query" name:"Name"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	NatGatewayId         string           `position:"Query" name:"NatGatewayId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 }
 
 // DescribeNatGatewaysResponse is the response struct for api DescribeNatGateways

+ 110 - 0
services/vpc/describe_network_quotas.go

@@ -0,0 +1,110 @@
+package vpc
+
+//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"
+)
+
+// DescribeNetworkQuotas invokes the vpc.DescribeNetworkQuotas API synchronously
+// api document: https://help.aliyun.com/api/vpc/describenetworkquotas.html
+func (client *Client) DescribeNetworkQuotas(request *DescribeNetworkQuotasRequest) (response *DescribeNetworkQuotasResponse, err error) {
+	response = CreateDescribeNetworkQuotasResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeNetworkQuotasWithChan invokes the vpc.DescribeNetworkQuotas API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describenetworkquotas.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeNetworkQuotasWithChan(request *DescribeNetworkQuotasRequest) (<-chan *DescribeNetworkQuotasResponse, <-chan error) {
+	responseChan := make(chan *DescribeNetworkQuotasResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeNetworkQuotas(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeNetworkQuotasWithCallback invokes the vpc.DescribeNetworkQuotas API asynchronously
+// api document: https://help.aliyun.com/api/vpc/describenetworkquotas.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeNetworkQuotasWithCallback(request *DescribeNetworkQuotasRequest, callback func(response *DescribeNetworkQuotasResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeNetworkQuotasResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeNetworkQuotas(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeNetworkQuotasRequest is the request struct for api DescribeNetworkQuotas
+type DescribeNetworkQuotasRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ClientToken          string           `position:"Query" name:"ClientToken"`
+	Product              string           `position:"Query" name:"Product"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeNetworkQuotasResponse is the response struct for api DescribeNetworkQuotas
+type DescribeNetworkQuotasResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Product   string `json:"Product" xml:"Product"`
+	RegionId  string `json:"RegionId" xml:"RegionId"`
+	Quota     string `json:"Quota" xml:"Quota"`
+}
+
+// CreateDescribeNetworkQuotasRequest creates a request to invoke DescribeNetworkQuotas API
+func CreateDescribeNetworkQuotasRequest() (request *DescribeNetworkQuotasRequest) {
+	request = &DescribeNetworkQuotasRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Vpc", "2016-04-28", "DescribeNetworkQuotas", "vpc", "openAPI")
+	return
+}
+
+// CreateDescribeNetworkQuotasResponse creates a response to parse from DescribeNetworkQuotas response
+func CreateDescribeNetworkQuotasResponse() (response *DescribeNetworkQuotasResponse) {
+	response = &DescribeNetworkQuotasResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 5 - 5
services/vpc/describe_new_project_eip_monitor_data.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeNewProjectEipMonitorDataWithCallback(request *Desc
 // DescribeNewProjectEipMonitorDataRequest is the request struct for api DescribeNewProjectEipMonitorData
 type DescribeNewProjectEipMonitorDataRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	AllocationId         string           `position:"Query" name:"AllocationId"`
-	StartTime            string           `position:"Query" name:"StartTime"`
-	EndTime              string           `position:"Query" name:"EndTime"`
 	Period               requests.Integer `position:"Query" name:"Period"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	EndTime              string           `position:"Query" name:"EndTime"`
+	AllocationId         string           `position:"Query" name:"AllocationId"`
+	StartTime            string           `position:"Query" name:"StartTime"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 }
 
 // DescribeNewProjectEipMonitorDataResponse is the response struct for api DescribeNewProjectEipMonitorData

+ 4 - 4
services/vpc/describe_nqas.go

@@ -76,15 +76,15 @@ func (client *Client) DescribeNqasWithCallback(request *DescribeNqasRequest, cal
 // DescribeNqasRequest is the request struct for api DescribeNqas
 type DescribeNqasRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	RouterId             string           `position:"Query" name:"RouterId"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	NqaId                string           `position:"Query" name:"NqaId"`
 	IsDefault            requests.Boolean `position:"Query" name:"IsDefault"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 }
 
 // DescribeNqasResponse is the response struct for api DescribeNqas

+ 5 - 5
services/vpc/describe_physical_connections.go

@@ -76,20 +76,20 @@ func (client *Client) DescribePhysicalConnectionsWithCallback(request *DescribeP
 // DescribePhysicalConnectionsRequest is the request struct for api DescribePhysicalConnections
 type DescribePhysicalConnectionsRequest struct {
 	*requests.RpcRequest
-	PageNumber           requests.Integer                     `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer                     `position:"Query" name:"PageSize"`
 	Filter               *[]DescribePhysicalConnectionsFilter `position:"Query" name:"Filter"  type:"Repeated"`
-	OwnerId              requests.Integer                     `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                               `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer                     `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string                               `position:"Query" name:"ResourceOwnerAccount"`
 	ClientToken          string                               `position:"Query" name:"ClientToken"`
 	OwnerAccount         string                               `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer                     `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer                     `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer                     `position:"Query" name:"PageNumber"`
 }
 
 // DescribePhysicalConnectionsFilter is a repeated param struct in DescribePhysicalConnectionsRequest
 type DescribePhysicalConnectionsFilter struct {
-	Key   string    `name:"Key"`
 	Value *[]string `name:"Value" type:"Repeated"`
+	Key   string    `name:"Key"`
 }
 
 // DescribePhysicalConnectionsResponse is the response struct for api DescribePhysicalConnections

+ 4 - 3
services/vpc/describe_regions.go

@@ -76,11 +76,12 @@ func (client *Client) DescribeRegionsWithCallback(request *DescribeRegionsReques
 // DescribeRegionsRequest is the request struct for api DescribeRegions
 type DescribeRegionsRequest struct {
 	*requests.RpcRequest
-	ProductType          string           `position:"Query" name:"ProductType"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	AcceptLanguage       string           `position:"Query" name:"AcceptLanguage"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ProductType          string           `position:"Query" name:"ProductType"`
 }
 
 // DescribeRegionsResponse is the response struct for api DescribeRegions

+ 7 - 7
services/vpc/describe_route_table_list.go

@@ -76,17 +76,17 @@ func (client *Client) DescribeRouteTableListWithCallback(request *DescribeRouteT
 // DescribeRouteTableListRequest is the request struct for api DescribeRouteTableList
 type DescribeRouteTableListRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	RouterType           string           `position:"Query" name:"RouterType"`
+	RouteTableName       string           `position:"Query" name:"RouteTableName"`
 	RouterId             string           `position:"Query" name:"RouterId"`
 	VpcId                string           `position:"Query" name:"VpcId"`
-	RouteTableId         string           `position:"Query" name:"RouteTableId"`
-	RouteTableName       string           `position:"Query" name:"RouteTableName"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	RouteTableId         string           `position:"Query" name:"RouteTableId"`
 }
 
 // DescribeRouteTableListResponse is the response struct for api DescribeRouteTableList

+ 7 - 7
services/vpc/describe_route_tables.go

@@ -76,18 +76,18 @@ func (client *Client) DescribeRouteTablesWithCallback(request *DescribeRouteTabl
 // DescribeRouteTablesRequest is the request struct for api DescribeRouteTables
 type DescribeRouteTablesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	VRouterId            string           `position:"Query" name:"VRouterId"`
-	RouteTableId         string           `position:"Query" name:"RouteTableId"`
-	RouterType           string           `position:"Query" name:"RouterType"`
-	RouterId             string           `position:"Query" name:"RouterId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	Type                 string           `position:"Query" name:"Type"`
-	RouteTableName       string           `position:"Query" name:"RouteTableName"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	RouterType           string           `position:"Query" name:"RouterType"`
+	RouteTableName       string           `position:"Query" name:"RouteTableName"`
+	RouterId             string           `position:"Query" name:"RouterId"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
-	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	RouteTableId         string           `position:"Query" name:"RouteTableId"`
 }
 
 // DescribeRouteTablesResponse is the response struct for api DescribeRouteTables

+ 8 - 7
services/vpc/describe_router_interfaces.go

@@ -76,18 +76,19 @@ func (client *Client) DescribeRouterInterfacesWithCallback(request *DescribeRout
 // DescribeRouterInterfacesRequest is the request struct for api DescribeRouterInterfaces
 type DescribeRouterInterfacesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer                  `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string                            `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer                  `position:"Query" name:"ResourceOwnerId"`
-	PageNumber           requests.Integer                  `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer                  `position:"Query" name:"PageSize"`
-	Filter               *[]DescribeRouterInterfacesFilter `position:"Query" name:"Filter"  type:"Repeated"`
+	Filter                 *[]DescribeRouterInterfacesFilter `position:"Query" name:"Filter"  type:"Repeated"`
+	ResourceOwnerId        requests.Integer                  `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount   string                            `position:"Query" name:"ResourceOwnerAccount"`
+	PageSize               requests.Integer                  `position:"Query" name:"PageSize"`
+	OwnerId                requests.Integer                  `position:"Query" name:"OwnerId"`
+	IncludeReservationData requests.Boolean                  `position:"Query" name:"IncludeReservationData"`
+	PageNumber             requests.Integer                  `position:"Query" name:"PageNumber"`
 }
 
 // DescribeRouterInterfacesFilter is a repeated param struct in DescribeRouterInterfacesRequest
 type DescribeRouterInterfacesFilter struct {
-	Key   string    `name:"Key"`
 	Value *[]string `name:"Value" type:"Repeated"`
+	Key   string    `name:"Key"`
 }
 
 // DescribeRouterInterfacesResponse is the response struct for api DescribeRouterInterfaces

+ 4 - 4
services/vpc/describe_router_interfaces_for_global.go

@@ -76,13 +76,13 @@ func (client *Client) DescribeRouterInterfacesForGlobalWithCallback(request *Des
 // DescribeRouterInterfacesForGlobalRequest is the request struct for api DescribeRouterInterfacesForGlobal
 type DescribeRouterInterfacesForGlobalRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
-	Status               string           `position:"Query" name:"Status"`
-	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
 	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+	Status               string           `position:"Query" name:"Status"`
 }
 
 // DescribeRouterInterfacesForGlobalResponse is the response struct for api DescribeRouterInterfacesForGlobal

+ 3 - 3
services/vpc/describe_server_related_global_acceleration_instances.go

@@ -76,12 +76,12 @@ func (client *Client) DescribeServerRelatedGlobalAccelerationInstancesWithCallba
 // DescribeServerRelatedGlobalAccelerationInstancesRequest is the request struct for api DescribeServerRelatedGlobalAccelerationInstances
 type DescribeServerRelatedGlobalAccelerationInstancesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
-	ServerId             string           `position:"Query" name:"ServerId"`
 	ServerType           string           `position:"Query" name:"ServerType"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	ServerId             string           `position:"Query" name:"ServerId"`
 }
 
 // DescribeServerRelatedGlobalAccelerationInstancesResponse is the response struct for api DescribeServerRelatedGlobalAccelerationInstances

+ 3 - 3
services/vpc/describe_snat_table_entries.go

@@ -76,14 +76,14 @@ func (client *Client) DescribeSnatTableEntriesWithCallback(request *DescribeSnat
 // DescribeSnatTableEntriesRequest is the request struct for api DescribeSnatTableEntries
 type DescribeSnatTableEntriesRequest struct {
 	*requests.RpcRequest
-	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 	SnatTableId          string           `position:"Query" name:"SnatTableId"`
 	SnatEntryId          string           `position:"Query" name:"SnatEntryId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
 	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
-	PageSize             requests.Integer `position:"Query" name:"PageSize"`
 }
 
 // DescribeSnatTableEntriesResponse is the response struct for api DescribeSnatTableEntries

+ 2 - 2
services/vpc/describe_ssl_vpn_client_cert.go

@@ -76,10 +76,10 @@ func (client *Client) DescribeSslVpnClientCertWithCallback(request *DescribeSslV
 // DescribeSslVpnClientCertRequest is the request struct for api DescribeSslVpnClientCert
 type DescribeSslVpnClientCertRequest struct {
 	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
 	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
 	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
-	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
-	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
 	SslVpnClientCertId   string           `position:"Query" name:"SslVpnClientCertId"`
 }
 

部分文件因为文件数量过多而无法显示