Browse Source

UIS SDK Auto Released By xiaoyan.yan,Version:1.53.87

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 6 years ago
parent
commit
3fdcffb1f5

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2019-04-03 Version: 1.53.87
+1, Support DNAT/ENI/Online user count features.
+
+
 2019-04-03 Version: 1.53.86
 1, Add interfaces related to vulnerability whitelist
 2, Add interfaces related to vulnerability auto-del configuration

+ 114 - 0
services/uis/create_dnat_entry.go

@@ -0,0 +1,114 @@
+package uis
+
+//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"
+)
+
+// CreateDnatEntry invokes the uis.CreateDnatEntry API synchronously
+// api document: https://help.aliyun.com/api/uis/creatednatentry.html
+func (client *Client) CreateDnatEntry(request *CreateDnatEntryRequest) (response *CreateDnatEntryResponse, err error) {
+	response = CreateCreateDnatEntryResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateDnatEntryWithChan invokes the uis.CreateDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/creatednatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDnatEntryWithChan(request *CreateDnatEntryRequest) (<-chan *CreateDnatEntryResponse, <-chan error) {
+	responseChan := make(chan *CreateDnatEntryResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateDnatEntry(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateDnatEntryWithCallback invokes the uis.CreateDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/creatednatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateDnatEntryWithCallback(request *CreateDnatEntryRequest, callback func(response *CreateDnatEntryResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateDnatEntryResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateDnatEntry(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateDnatEntryRequest is the request struct for api CreateDnatEntry
+type CreateDnatEntryRequest struct {
+	*requests.RpcRequest
+	DestinationIp        string           `position:"Query" name:"DestinationIp"`
+	DestinationPort      requests.Integer `position:"Query" name:"DestinationPort"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	IpProtocol           string           `position:"Query" name:"IpProtocol"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Name                 string           `position:"Query" name:"Name"`
+	OriginalPort         requests.Integer `position:"Query" name:"OriginalPort"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	OriginalIp           string           `position:"Query" name:"OriginalIp"`
+}
+
+// CreateDnatEntryResponse is the response struct for api CreateDnatEntry
+type CreateDnatEntryResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	UisDnatId string `json:"UisDnatId" xml:"UisDnatId"`
+}
+
+// CreateCreateDnatEntryRequest creates a request to invoke CreateDnatEntry API
+func CreateCreateDnatEntryRequest() (request *CreateDnatEntryRequest) {
+	request = &CreateDnatEntryRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "CreateDnatEntry", "uis", "openAPI")
+	return
+}
+
+// CreateCreateDnatEntryResponse creates a response to parse from CreateDnatEntry response
+func CreateCreateDnatEntryResponse() (response *CreateDnatEntryResponse) {
+	response = &CreateDnatEntryResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 113 - 0
services/uis/create_uis_network_interface.go

@@ -0,0 +1,113 @@
+package uis
+
+//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"
+)
+
+// CreateUisNetworkInterface invokes the uis.CreateUisNetworkInterface API synchronously
+// api document: https://help.aliyun.com/api/uis/createuisnetworkinterface.html
+func (client *Client) CreateUisNetworkInterface(request *CreateUisNetworkInterfaceRequest) (response *CreateUisNetworkInterfaceResponse, err error) {
+	response = CreateCreateUisNetworkInterfaceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateUisNetworkInterfaceWithChan invokes the uis.CreateUisNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/uis/createuisnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUisNetworkInterfaceWithChan(request *CreateUisNetworkInterfaceRequest) (<-chan *CreateUisNetworkInterfaceResponse, <-chan error) {
+	responseChan := make(chan *CreateUisNetworkInterfaceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateUisNetworkInterface(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateUisNetworkInterfaceWithCallback invokes the uis.CreateUisNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/uis/createuisnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateUisNetworkInterfaceWithCallback(request *CreateUisNetworkInterfaceRequest, callback func(response *CreateUisNetworkInterfaceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateUisNetworkInterfaceResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateUisNetworkInterface(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateUisNetworkInterfaceRequest is the request struct for api CreateUisNetworkInterface
+type CreateUisNetworkInterfaceRequest struct {
+	*requests.RpcRequest
+	VswitchId            string           `position:"Query" name:"VswitchId"`
+	IpAddress            string           `position:"Query" name:"IpAddress"`
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	SecurityGroupId      string           `position:"Query" name:"SecurityGroupId"`
+	Name                 string           `position:"Query" name:"Name"`
+	Description          string           `position:"Query" name:"Description"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// CreateUisNetworkInterfaceResponse is the response struct for api CreateUisNetworkInterface
+type CreateUisNetworkInterfaceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	UisEniId  string `json:"UisEniId" xml:"UisEniId"`
+}
+
+// CreateCreateUisNetworkInterfaceRequest creates a request to invoke CreateUisNetworkInterface API
+func CreateCreateUisNetworkInterfaceRequest() (request *CreateUisNetworkInterfaceRequest) {
+	request = &CreateUisNetworkInterfaceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "CreateUisNetworkInterface", "uis", "openAPI")
+	return
+}
+
+// CreateCreateUisNetworkInterfaceResponse creates a response to parse from CreateUisNetworkInterface response
+func CreateCreateUisNetworkInterfaceResponse() (response *CreateUisNetworkInterfaceResponse) {
+	response = &CreateUisNetworkInterfaceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/uis/delete_dnat_entry.go

@@ -0,0 +1,108 @@
+package uis
+
+//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"
+)
+
+// DeleteDnatEntry invokes the uis.DeleteDnatEntry API synchronously
+// api document: https://help.aliyun.com/api/uis/deletednatentry.html
+func (client *Client) DeleteDnatEntry(request *DeleteDnatEntryRequest) (response *DeleteDnatEntryResponse, err error) {
+	response = CreateDeleteDnatEntryResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteDnatEntryWithChan invokes the uis.DeleteDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/deletednatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDnatEntryWithChan(request *DeleteDnatEntryRequest) (<-chan *DeleteDnatEntryResponse, <-chan error) {
+	responseChan := make(chan *DeleteDnatEntryResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteDnatEntry(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteDnatEntryWithCallback invokes the uis.DeleteDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/deletednatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteDnatEntryWithCallback(request *DeleteDnatEntryRequest, callback func(response *DeleteDnatEntryResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteDnatEntryResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteDnatEntry(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteDnatEntryRequest is the request struct for api DeleteDnatEntry
+type DeleteDnatEntryRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	UisDnatId            string           `position:"Query" name:"UisDnatId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteDnatEntryResponse is the response struct for api DeleteDnatEntry
+type DeleteDnatEntryResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteDnatEntryRequest creates a request to invoke DeleteDnatEntry API
+func CreateDeleteDnatEntryRequest() (request *DeleteDnatEntryRequest) {
+	request = &DeleteDnatEntryRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DeleteDnatEntry", "uis", "openAPI")
+	return
+}
+
+// CreateDeleteDnatEntryResponse creates a response to parse from DeleteDnatEntry response
+func CreateDeleteDnatEntryResponse() (response *DeleteDnatEntryResponse) {
+	response = &DeleteDnatEntryResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/uis/delete_uis_network_interface.go

@@ -0,0 +1,108 @@
+package uis
+
+//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"
+)
+
+// DeleteUisNetworkInterface invokes the uis.DeleteUisNetworkInterface API synchronously
+// api document: https://help.aliyun.com/api/uis/deleteuisnetworkinterface.html
+func (client *Client) DeleteUisNetworkInterface(request *DeleteUisNetworkInterfaceRequest) (response *DeleteUisNetworkInterfaceResponse, err error) {
+	response = CreateDeleteUisNetworkInterfaceResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteUisNetworkInterfaceWithChan invokes the uis.DeleteUisNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/uis/deleteuisnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteUisNetworkInterfaceWithChan(request *DeleteUisNetworkInterfaceRequest) (<-chan *DeleteUisNetworkInterfaceResponse, <-chan error) {
+	responseChan := make(chan *DeleteUisNetworkInterfaceResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteUisNetworkInterface(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteUisNetworkInterfaceWithCallback invokes the uis.DeleteUisNetworkInterface API asynchronously
+// api document: https://help.aliyun.com/api/uis/deleteuisnetworkinterface.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteUisNetworkInterfaceWithCallback(request *DeleteUisNetworkInterfaceRequest, callback func(response *DeleteUisNetworkInterfaceResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteUisNetworkInterfaceResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteUisNetworkInterface(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteUisNetworkInterfaceRequest is the request struct for api DeleteUisNetworkInterface
+type DeleteUisNetworkInterfaceRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	UisEniId             string           `position:"Query" name:"UisEniId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DeleteUisNetworkInterfaceResponse is the response struct for api DeleteUisNetworkInterface
+type DeleteUisNetworkInterfaceResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateDeleteUisNetworkInterfaceRequest creates a request to invoke DeleteUisNetworkInterface API
+func CreateDeleteUisNetworkInterfaceRequest() (request *DeleteUisNetworkInterfaceRequest) {
+	request = &DeleteUisNetworkInterfaceRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DeleteUisNetworkInterface", "uis", "openAPI")
+	return
+}
+
+// CreateDeleteUisNetworkInterfaceResponse creates a response to parse from DeleteUisNetworkInterface response
+func CreateDeleteUisNetworkInterfaceResponse() (response *DeleteUisNetworkInterfaceResponse) {
+	response = &DeleteUisNetworkInterfaceResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/uis/describe_areas.go

@@ -0,0 +1,107 @@
+package uis
+
+//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"
+)
+
+// DescribeAreas invokes the uis.DescribeAreas API synchronously
+// api document: https://help.aliyun.com/api/uis/describeareas.html
+func (client *Client) DescribeAreas(request *DescribeAreasRequest) (response *DescribeAreasResponse, err error) {
+	response = CreateDescribeAreasResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeAreasWithChan invokes the uis.DescribeAreas API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeareas.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAreasWithChan(request *DescribeAreasRequest) (<-chan *DescribeAreasResponse, <-chan error) {
+	responseChan := make(chan *DescribeAreasResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeAreas(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeAreasWithCallback invokes the uis.DescribeAreas API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeareas.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeAreasWithCallback(request *DescribeAreasRequest, callback func(response *DescribeAreasResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeAreasResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeAreas(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeAreasRequest is the request struct for api DescribeAreas
+type DescribeAreasRequest 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"`
+}
+
+// DescribeAreasResponse is the response struct for api DescribeAreas
+type DescribeAreasResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Areas     Areas  `json:"Areas" xml:"Areas"`
+}
+
+// CreateDescribeAreasRequest creates a request to invoke DescribeAreas API
+func CreateDescribeAreasRequest() (request *DescribeAreasRequest) {
+	request = &DescribeAreasRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DescribeAreas", "uis", "openAPI")
+	return
+}
+
+// CreateDescribeAreasResponse creates a response to parse from DescribeAreas response
+func CreateDescribeAreasResponse() (response *DescribeAreasResponse) {
+	response = &DescribeAreasResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/uis/describe_dnat_entries.go

@@ -0,0 +1,114 @@
+package uis
+
+//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"
+)
+
+// DescribeDnatEntries invokes the uis.DescribeDnatEntries API synchronously
+// api document: https://help.aliyun.com/api/uis/describednatentries.html
+func (client *Client) DescribeDnatEntries(request *DescribeDnatEntriesRequest) (response *DescribeDnatEntriesResponse, err error) {
+	response = CreateDescribeDnatEntriesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeDnatEntriesWithChan invokes the uis.DescribeDnatEntries API asynchronously
+// api document: https://help.aliyun.com/api/uis/describednatentries.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDnatEntriesWithChan(request *DescribeDnatEntriesRequest) (<-chan *DescribeDnatEntriesResponse, <-chan error) {
+	responseChan := make(chan *DescribeDnatEntriesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeDnatEntries(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeDnatEntriesWithCallback invokes the uis.DescribeDnatEntries API asynchronously
+// api document: https://help.aliyun.com/api/uis/describednatentries.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeDnatEntriesWithCallback(request *DescribeDnatEntriesRequest, callback func(response *DescribeDnatEntriesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeDnatEntriesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeDnatEntries(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeDnatEntriesRequest is the request struct for api DescribeDnatEntries
+type DescribeDnatEntriesRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	UisDnatId            string           `position:"Query" name:"UisDnatId"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// DescribeDnatEntriesResponse is the response struct for api DescribeDnatEntries
+type DescribeDnatEntriesResponse 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"`
+	UisDnatEntries UisDnatEntries `json:"UisDnatEntries" xml:"UisDnatEntries"`
+}
+
+// CreateDescribeDnatEntriesRequest creates a request to invoke DescribeDnatEntries API
+func CreateDescribeDnatEntriesRequest() (request *DescribeDnatEntriesRequest) {
+	request = &DescribeDnatEntriesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DescribeDnatEntries", "uis", "openAPI")
+	return
+}
+
+// CreateDescribeDnatEntriesResponse creates a response to parse from DescribeDnatEntries response
+func CreateDescribeDnatEntriesResponse() (response *DescribeDnatEntriesResponse) {
+	response = &DescribeDnatEntriesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/uis/describe_uis_network_interfaces.go

@@ -0,0 +1,114 @@
+package uis
+
+//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"
+)
+
+// DescribeUisNetworkInterfaces invokes the uis.DescribeUisNetworkInterfaces API synchronously
+// api document: https://help.aliyun.com/api/uis/describeuisnetworkinterfaces.html
+func (client *Client) DescribeUisNetworkInterfaces(request *DescribeUisNetworkInterfacesRequest) (response *DescribeUisNetworkInterfacesResponse, err error) {
+	response = CreateDescribeUisNetworkInterfacesResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeUisNetworkInterfacesWithChan invokes the uis.DescribeUisNetworkInterfaces API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeuisnetworkinterfaces.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUisNetworkInterfacesWithChan(request *DescribeUisNetworkInterfacesRequest) (<-chan *DescribeUisNetworkInterfacesResponse, <-chan error) {
+	responseChan := make(chan *DescribeUisNetworkInterfacesResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeUisNetworkInterfaces(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeUisNetworkInterfacesWithCallback invokes the uis.DescribeUisNetworkInterfaces API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeuisnetworkinterfaces.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUisNetworkInterfacesWithCallback(request *DescribeUisNetworkInterfacesRequest, callback func(response *DescribeUisNetworkInterfacesResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeUisNetworkInterfacesResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeUisNetworkInterfaces(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeUisNetworkInterfacesRequest is the request struct for api DescribeUisNetworkInterfaces
+type DescribeUisNetworkInterfacesRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	PageSize             requests.Integer `position:"Query" name:"PageSize"`
+	UisEniId             string           `position:"Query" name:"UisEniId"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	PageNumber           requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// DescribeUisNetworkInterfacesResponse is the response struct for api DescribeUisNetworkInterfaces
+type DescribeUisNetworkInterfacesResponse 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"`
+	NetworkInterfaces NetworkInterfaces `json:"NetworkInterfaces" xml:"NetworkInterfaces"`
+}
+
+// CreateDescribeUisNetworkInterfacesRequest creates a request to invoke DescribeUisNetworkInterfaces API
+func CreateDescribeUisNetworkInterfacesRequest() (request *DescribeUisNetworkInterfacesRequest) {
+	request = &DescribeUisNetworkInterfacesRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DescribeUisNetworkInterfaces", "uis", "openAPI")
+	return
+}
+
+// CreateDescribeUisNetworkInterfacesResponse creates a response to parse from DescribeUisNetworkInterfaces response
+func CreateDescribeUisNetworkInterfacesResponse() (response *DescribeUisNetworkInterfacesResponse) {
+	response = &DescribeUisNetworkInterfacesResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/uis/describe_uise_node_status.go

@@ -0,0 +1,109 @@
+package uis
+
+//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"
+)
+
+// DescribeUiseNodeStatus invokes the uis.DescribeUiseNodeStatus API synchronously
+// api document: https://help.aliyun.com/api/uis/describeuisenodestatus.html
+func (client *Client) DescribeUiseNodeStatus(request *DescribeUiseNodeStatusRequest) (response *DescribeUiseNodeStatusResponse, err error) {
+	response = CreateDescribeUiseNodeStatusResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DescribeUiseNodeStatusWithChan invokes the uis.DescribeUiseNodeStatus API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeuisenodestatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUiseNodeStatusWithChan(request *DescribeUiseNodeStatusRequest) (<-chan *DescribeUiseNodeStatusResponse, <-chan error) {
+	responseChan := make(chan *DescribeUiseNodeStatusResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DescribeUiseNodeStatus(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DescribeUiseNodeStatusWithCallback invokes the uis.DescribeUiseNodeStatus API asynchronously
+// api document: https://help.aliyun.com/api/uis/describeuisenodestatus.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DescribeUiseNodeStatusWithCallback(request *DescribeUiseNodeStatusRequest, callback func(response *DescribeUiseNodeStatusResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DescribeUiseNodeStatusResponse
+		var err error
+		defer close(result)
+		response, err = client.DescribeUiseNodeStatus(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DescribeUiseNodeStatusRequest is the request struct for api DescribeUiseNodeStatus
+type DescribeUiseNodeStatusRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	Ip                   string           `position:"Query" name:"Ip"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// DescribeUiseNodeStatusResponse is the response struct for api DescribeUiseNodeStatus
+type DescribeUiseNodeStatusResponse struct {
+	*responses.BaseResponse
+	RequestId    string       `json:"RequestId" xml:"RequestId"`
+	IpStatusList IpStatusList `json:"IpStatusList" xml:"IpStatusList"`
+}
+
+// CreateDescribeUiseNodeStatusRequest creates a request to invoke DescribeUiseNodeStatus API
+func CreateDescribeUiseNodeStatusRequest() (request *DescribeUiseNodeStatusRequest) {
+	request = &DescribeUiseNodeStatusRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "DescribeUiseNodeStatus", "uis", "openAPI")
+	return
+}
+
+// CreateDescribeUiseNodeStatusResponse creates a response to parse from DescribeUiseNodeStatus response
+func CreateDescribeUiseNodeStatusResponse() (response *DescribeUiseNodeStatusResponse) {
+	response = &DescribeUiseNodeStatusResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/uis/get_dropped_ip_list.go

@@ -0,0 +1,109 @@
+package uis
+
+//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"
+)
+
+// GetDroppedIpList invokes the uis.GetDroppedIpList API synchronously
+// api document: https://help.aliyun.com/api/uis/getdroppediplist.html
+func (client *Client) GetDroppedIpList(request *GetDroppedIpListRequest) (response *GetDroppedIpListResponse, err error) {
+	response = CreateGetDroppedIpListResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetDroppedIpListWithChan invokes the uis.GetDroppedIpList API asynchronously
+// api document: https://help.aliyun.com/api/uis/getdroppediplist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetDroppedIpListWithChan(request *GetDroppedIpListRequest) (<-chan *GetDroppedIpListResponse, <-chan error) {
+	responseChan := make(chan *GetDroppedIpListResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetDroppedIpList(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetDroppedIpListWithCallback invokes the uis.GetDroppedIpList API asynchronously
+// api document: https://help.aliyun.com/api/uis/getdroppediplist.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetDroppedIpListWithCallback(request *GetDroppedIpListRequest, callback func(response *GetDroppedIpListResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetDroppedIpListResponse
+		var err error
+		defer close(result)
+		response, err = client.GetDroppedIpList(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetDroppedIpListRequest is the request struct for api GetDroppedIpList
+type GetDroppedIpListRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	UisId                string           `position:"Query" name:"UisId"`
+	ChartDate            string           `position:"Query" name:"ChartDate"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+}
+
+// GetDroppedIpListResponse is the response struct for api GetDroppedIpList
+type GetDroppedIpListResponse struct {
+	*responses.BaseResponse
+	RequestId        string `json:"RequestId" xml:"RequestId"`
+	DroppedIpListUrl string `json:"DroppedIpListUrl" xml:"DroppedIpListUrl"`
+}
+
+// CreateGetDroppedIpListRequest creates a request to invoke GetDroppedIpList API
+func CreateGetDroppedIpListRequest() (request *GetDroppedIpListRequest) {
+	request = &GetDroppedIpListRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "GetDroppedIpList", "uis", "openAPI")
+	return
+}
+
+// CreateGetDroppedIpListResponse creates a response to parse from GetDroppedIpList response
+func CreateGetDroppedIpListResponse() (response *GetDroppedIpListResponse) {
+	response = &GetDroppedIpListResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 114 - 0
services/uis/modify_dnat_entry.go

@@ -0,0 +1,114 @@
+package uis
+
+//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"
+)
+
+// ModifyDnatEntry invokes the uis.ModifyDnatEntry API synchronously
+// api document: https://help.aliyun.com/api/uis/modifydnatentry.html
+func (client *Client) ModifyDnatEntry(request *ModifyDnatEntryRequest) (response *ModifyDnatEntryResponse, err error) {
+	response = CreateModifyDnatEntryResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ModifyDnatEntryWithChan invokes the uis.ModifyDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/modifydnatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDnatEntryWithChan(request *ModifyDnatEntryRequest) (<-chan *ModifyDnatEntryResponse, <-chan error) {
+	responseChan := make(chan *ModifyDnatEntryResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ModifyDnatEntry(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ModifyDnatEntryWithCallback invokes the uis.ModifyDnatEntry API asynchronously
+// api document: https://help.aliyun.com/api/uis/modifydnatentry.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ModifyDnatEntryWithCallback(request *ModifyDnatEntryRequest, callback func(response *ModifyDnatEntryResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ModifyDnatEntryResponse
+		var err error
+		defer close(result)
+		response, err = client.ModifyDnatEntry(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ModifyDnatEntryRequest is the request struct for api ModifyDnatEntry
+type ModifyDnatEntryRequest struct {
+	*requests.RpcRequest
+	ResourceOwnerId      requests.Integer `position:"Query" name:"ResourceOwnerId"`
+	ResourceOwnerAccount string           `position:"Query" name:"ResourceOwnerAccount"`
+	IpProtocol           string           `position:"Query" name:"IpProtocol"`
+	OwnerAccount         string           `position:"Query" name:"OwnerAccount"`
+	OriginalPort         requests.Integer `position:"Query" name:"OriginalPort"`
+	OwnerId              requests.Integer `position:"Query" name:"OwnerId"`
+	OriginalIp           string           `position:"Query" name:"OriginalIp"`
+	DestinationIp        string           `position:"Query" name:"DestinationIp"`
+	DestinationPort      requests.Integer `position:"Query" name:"DestinationPort"`
+	UisNodeId            string           `position:"Query" name:"UisNodeId"`
+	UisDnatId            string           `position:"Query" name:"UisDnatId"`
+	Name                 string           `position:"Query" name:"Name"`
+}
+
+// ModifyDnatEntryResponse is the response struct for api ModifyDnatEntry
+type ModifyDnatEntryResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+}
+
+// CreateModifyDnatEntryRequest creates a request to invoke ModifyDnatEntry API
+func CreateModifyDnatEntryRequest() (request *ModifyDnatEntryRequest) {
+	request = &ModifyDnatEntryRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Uis", "2018-08-21", "ModifyDnatEntry", "uis", "openAPI")
+	return
+}
+
+// CreateModifyDnatEntryResponse creates a response to parse from ModifyDnatEntry response
+func CreateModifyDnatEntryResponse() (response *ModifyDnatEntryResponse) {
+	response = &ModifyDnatEntryResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 22 - 0
services/uis/struct_area.go

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

+ 21 - 0
services/uis/struct_areas.go

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

+ 26 - 0
services/uis/struct_ip_status.go

@@ -0,0 +1,26 @@
+package uis
+
+//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.
+
+// IpStatus is a nested struct in uis response
+type IpStatus struct {
+	Ip                 string `json:"Ip" xml:"Ip"`
+	MaxConnections     int    `json:"MaxConnections" xml:"MaxConnections"`
+	CurrentConnections int    `json:"CurrentConnections" xml:"CurrentConnections"`
+	CpuStatus          string `json:"CpuStatus" xml:"CpuStatus"`
+	MemStatus          string `json:"MemStatus" xml:"MemStatus"`
+	BandwidthStatus    string `json:"BandwidthStatus" xml:"BandwidthStatus"`
+}

+ 21 - 0
services/uis/struct_ip_status_list.go

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

+ 30 - 0
services/uis/struct_network_interface.go

@@ -0,0 +1,30 @@
+package uis
+
+//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.
+
+// NetworkInterface is a nested struct in uis response
+type NetworkInterface struct {
+	UisNodeId          string `json:"UisNodeId" xml:"UisNodeId"`
+	UisEniId           string `json:"UisEniId" xml:"UisEniId"`
+	NetworkInterfaceId string `json:"NetworkInterfaceId" xml:"NetworkInterfaceId"`
+	VswitchId          string `json:"VswitchId" xml:"VswitchId"`
+	SecurityGroupID    string `json:"SecurityGroupID" xml:"SecurityGroupID"`
+	IpAddress          string `json:"IpAddress" xml:"IpAddress"`
+	State              string `json:"State" xml:"State"`
+	Log                string `json:"Log" xml:"Log"`
+	Name               string `json:"Name" xml:"Name"`
+	Description        string `json:"Description" xml:"Description"`
+}

+ 21 - 0
services/uis/struct_network_interfaces.go

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

+ 21 - 0
services/uis/struct_uis_dnat_entries.go

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

+ 26 - 0
services/uis/struct_uis_dnat_entry.go

@@ -0,0 +1,26 @@
+package uis
+
+//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.
+
+// UisDnatEntry is a nested struct in uis response
+type UisDnatEntry struct {
+	UisDnatId       string `json:"UisDnatId" xml:"UisDnatId"`
+	DestinationIp   string `json:"DestinationIp" xml:"DestinationIp"`
+	DestinationPort int    `json:"DestinationPort" xml:"DestinationPort"`
+	OriginalIp      string `json:"OriginalIp" xml:"OriginalIp"`
+	OriginalPort    int    `json:"OriginalPort" xml:"OriginalPort"`
+	IpProtocol      string `json:"IpProtocol" xml:"IpProtocol"`
+}

+ 1 - 0
services/uis/struct_uis_node.go

@@ -28,4 +28,5 @@ type UisNode struct {
 	UisNodeIps       string `json:"UisNodeIps" xml:"UisNodeIps"`
 	UisNodeActiveIp  string `json:"UisNodeActiveIp" xml:"UisNodeActiveIp"`
 	CreateTime       int    `json:"CreateTime" xml:"CreateTime"`
+	UisEniIps        string `json:"UisEniIps" xml:"UisEniIps"`
 }