Browse Source

GREEN SDK Auto Released By liuhai.lh,Version:1.28.3

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy 7 năm trước cách đây
mục cha
commit
f3d9bd3e46

+ 4 - 0
ChangeLog.txt

@@ -1,3 +1,7 @@
+2018-09-03 Version: 1.28.3
+1, voice identify interface
+2, client upload credentials interface
+
 2018-09-03 Version: 1.28.2
 1, Add new service API:FindServiceStatisticalData, which can support query service statistical data.
 

+ 103 - 0
services/green/add_video_dna.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// AddVideoDna invokes the green.AddVideoDna API synchronously
+// api document: https://help.aliyun.com/api/green/addvideodna.html
+func (client *Client) AddVideoDna(request *AddVideoDnaRequest) (response *AddVideoDnaResponse, err error) {
+	response = CreateAddVideoDnaResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddVideoDnaWithChan invokes the green.AddVideoDna API asynchronously
+// api document: https://help.aliyun.com/api/green/addvideodna.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddVideoDnaWithChan(request *AddVideoDnaRequest) (<-chan *AddVideoDnaResponse, <-chan error) {
+	responseChan := make(chan *AddVideoDnaResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddVideoDna(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddVideoDnaWithCallback invokes the green.AddVideoDna API asynchronously
+// api document: https://help.aliyun.com/api/green/addvideodna.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddVideoDnaWithCallback(request *AddVideoDnaRequest, callback func(response *AddVideoDnaResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddVideoDnaResponse
+		var err error
+		defer close(result)
+		response, err = client.AddVideoDna(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddVideoDnaRequest is the request struct for api AddVideoDna
+type AddVideoDnaRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// AddVideoDnaResponse is the response struct for api AddVideoDna
+type AddVideoDnaResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateAddVideoDnaRequest creates a request to invoke AddVideoDna API
+func CreateAddVideoDnaRequest() (request *AddVideoDnaRequest) {
+	request = &AddVideoDnaRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "AddVideoDna", "/green/video/dna/add", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateAddVideoDnaResponse creates a response to parse from AddVideoDna response
+func CreateAddVideoDnaResponse() (response *AddVideoDnaResponse) {
+	response = &AddVideoDnaResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/add_video_dna_group.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// AddVideoDnaGroup invokes the green.AddVideoDnaGroup API synchronously
+// api document: https://help.aliyun.com/api/green/addvideodnagroup.html
+func (client *Client) AddVideoDnaGroup(request *AddVideoDnaGroupRequest) (response *AddVideoDnaGroupResponse, err error) {
+	response = CreateAddVideoDnaGroupResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddVideoDnaGroupWithChan invokes the green.AddVideoDnaGroup API asynchronously
+// api document: https://help.aliyun.com/api/green/addvideodnagroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddVideoDnaGroupWithChan(request *AddVideoDnaGroupRequest) (<-chan *AddVideoDnaGroupResponse, <-chan error) {
+	responseChan := make(chan *AddVideoDnaGroupResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddVideoDnaGroup(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddVideoDnaGroupWithCallback invokes the green.AddVideoDnaGroup API asynchronously
+// api document: https://help.aliyun.com/api/green/addvideodnagroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddVideoDnaGroupWithCallback(request *AddVideoDnaGroupRequest, callback func(response *AddVideoDnaGroupResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddVideoDnaGroupResponse
+		var err error
+		defer close(result)
+		response, err = client.AddVideoDnaGroup(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddVideoDnaGroupRequest is the request struct for api AddVideoDnaGroup
+type AddVideoDnaGroupRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// AddVideoDnaGroupResponse is the response struct for api AddVideoDnaGroup
+type AddVideoDnaGroupResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateAddVideoDnaGroupRequest creates a request to invoke AddVideoDnaGroup API
+func CreateAddVideoDnaGroupRequest() (request *AddVideoDnaGroupRequest) {
+	request = &AddVideoDnaGroupRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "AddVideoDnaGroup", "/green/video/dna/group/add", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateAddVideoDnaGroupResponse creates a response to parse from AddVideoDnaGroup response
+func CreateAddVideoDnaGroupResponse() (response *AddVideoDnaGroupResponse) {
+	response = &AddVideoDnaGroupResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/delete_video_dna.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// DeleteVideoDna invokes the green.DeleteVideoDna API synchronously
+// api document: https://help.aliyun.com/api/green/deletevideodna.html
+func (client *Client) DeleteVideoDna(request *DeleteVideoDnaRequest) (response *DeleteVideoDnaResponse, err error) {
+	response = CreateDeleteVideoDnaResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteVideoDnaWithChan invokes the green.DeleteVideoDna API asynchronously
+// api document: https://help.aliyun.com/api/green/deletevideodna.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteVideoDnaWithChan(request *DeleteVideoDnaRequest) (<-chan *DeleteVideoDnaResponse, <-chan error) {
+	responseChan := make(chan *DeleteVideoDnaResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteVideoDna(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteVideoDnaWithCallback invokes the green.DeleteVideoDna API asynchronously
+// api document: https://help.aliyun.com/api/green/deletevideodna.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteVideoDnaWithCallback(request *DeleteVideoDnaRequest, callback func(response *DeleteVideoDnaResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteVideoDnaResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteVideoDna(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteVideoDnaRequest is the request struct for api DeleteVideoDna
+type DeleteVideoDnaRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// DeleteVideoDnaResponse is the response struct for api DeleteVideoDna
+type DeleteVideoDnaResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteVideoDnaRequest creates a request to invoke DeleteVideoDna API
+func CreateDeleteVideoDnaRequest() (request *DeleteVideoDnaRequest) {
+	request = &DeleteVideoDnaRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "DeleteVideoDna", "/green/video/dna/delete", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateDeleteVideoDnaResponse creates a response to parse from DeleteVideoDna response
+func CreateDeleteVideoDnaResponse() (response *DeleteVideoDnaResponse) {
+	response = &DeleteVideoDnaResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/delete_video_dna_group.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// DeleteVideoDnaGroup invokes the green.DeleteVideoDnaGroup API synchronously
+// api document: https://help.aliyun.com/api/green/deletevideodnagroup.html
+func (client *Client) DeleteVideoDnaGroup(request *DeleteVideoDnaGroupRequest) (response *DeleteVideoDnaGroupResponse, err error) {
+	response = CreateDeleteVideoDnaGroupResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeleteVideoDnaGroupWithChan invokes the green.DeleteVideoDnaGroup API asynchronously
+// api document: https://help.aliyun.com/api/green/deletevideodnagroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteVideoDnaGroupWithChan(request *DeleteVideoDnaGroupRequest) (<-chan *DeleteVideoDnaGroupResponse, <-chan error) {
+	responseChan := make(chan *DeleteVideoDnaGroupResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeleteVideoDnaGroup(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeleteVideoDnaGroupWithCallback invokes the green.DeleteVideoDnaGroup API asynchronously
+// api document: https://help.aliyun.com/api/green/deletevideodnagroup.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeleteVideoDnaGroupWithCallback(request *DeleteVideoDnaGroupRequest, callback func(response *DeleteVideoDnaGroupResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeleteVideoDnaGroupResponse
+		var err error
+		defer close(result)
+		response, err = client.DeleteVideoDnaGroup(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeleteVideoDnaGroupRequest is the request struct for api DeleteVideoDnaGroup
+type DeleteVideoDnaGroupRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// DeleteVideoDnaGroupResponse is the response struct for api DeleteVideoDnaGroup
+type DeleteVideoDnaGroupResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateDeleteVideoDnaGroupRequest creates a request to invoke DeleteVideoDnaGroup API
+func CreateDeleteVideoDnaGroupRequest() (request *DeleteVideoDnaGroupRequest) {
+	request = &DeleteVideoDnaGroupRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "DeleteVideoDnaGroup", "/green/video/dna/group/delete", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateDeleteVideoDnaGroupResponse creates a response to parse from DeleteVideoDnaGroup response
+func CreateDeleteVideoDnaGroupResponse() (response *DeleteVideoDnaGroupResponse) {
+	response = &DeleteVideoDnaGroupResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/get_add_video_dna_results.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// GetAddVideoDnaResults invokes the green.GetAddVideoDnaResults API synchronously
+// api document: https://help.aliyun.com/api/green/getaddvideodnaresults.html
+func (client *Client) GetAddVideoDnaResults(request *GetAddVideoDnaResultsRequest) (response *GetAddVideoDnaResultsResponse, err error) {
+	response = CreateGetAddVideoDnaResultsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetAddVideoDnaResultsWithChan invokes the green.GetAddVideoDnaResults API asynchronously
+// api document: https://help.aliyun.com/api/green/getaddvideodnaresults.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetAddVideoDnaResultsWithChan(request *GetAddVideoDnaResultsRequest) (<-chan *GetAddVideoDnaResultsResponse, <-chan error) {
+	responseChan := make(chan *GetAddVideoDnaResultsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetAddVideoDnaResults(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetAddVideoDnaResultsWithCallback invokes the green.GetAddVideoDnaResults API asynchronously
+// api document: https://help.aliyun.com/api/green/getaddvideodnaresults.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetAddVideoDnaResultsWithCallback(request *GetAddVideoDnaResultsRequest, callback func(response *GetAddVideoDnaResultsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetAddVideoDnaResultsResponse
+		var err error
+		defer close(result)
+		response, err = client.GetAddVideoDnaResults(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetAddVideoDnaResultsRequest is the request struct for api GetAddVideoDnaResults
+type GetAddVideoDnaResultsRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// GetAddVideoDnaResultsResponse is the response struct for api GetAddVideoDnaResults
+type GetAddVideoDnaResultsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateGetAddVideoDnaResultsRequest creates a request to invoke GetAddVideoDnaResults API
+func CreateGetAddVideoDnaResultsRequest() (request *GetAddVideoDnaResultsRequest) {
+	request = &GetAddVideoDnaResultsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "GetAddVideoDnaResults", "/green/video/dna/add/results", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateGetAddVideoDnaResultsResponse creates a response to parse from GetAddVideoDnaResults response
+func CreateGetAddVideoDnaResultsResponse() (response *GetAddVideoDnaResultsResponse) {
+	response = &GetAddVideoDnaResultsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/upload_credentials.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// UploadCredentials invokes the green.UploadCredentials API synchronously
+// api document: https://help.aliyun.com/api/green/uploadcredentials.html
+func (client *Client) UploadCredentials(request *UploadCredentialsRequest) (response *UploadCredentialsResponse, err error) {
+	response = CreateUploadCredentialsResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UploadCredentialsWithChan invokes the green.UploadCredentials API asynchronously
+// api document: https://help.aliyun.com/api/green/uploadcredentials.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UploadCredentialsWithChan(request *UploadCredentialsRequest) (<-chan *UploadCredentialsResponse, <-chan error) {
+	responseChan := make(chan *UploadCredentialsResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UploadCredentials(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UploadCredentialsWithCallback invokes the green.UploadCredentials API asynchronously
+// api document: https://help.aliyun.com/api/green/uploadcredentials.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UploadCredentialsWithCallback(request *UploadCredentialsRequest, callback func(response *UploadCredentialsResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UploadCredentialsResponse
+		var err error
+		defer close(result)
+		response, err = client.UploadCredentials(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UploadCredentialsRequest is the request struct for api UploadCredentials
+type UploadCredentialsRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// UploadCredentialsResponse is the response struct for api UploadCredentials
+type UploadCredentialsResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateUploadCredentialsRequest creates a request to invoke UploadCredentials API
+func CreateUploadCredentialsRequest() (request *UploadCredentialsRequest) {
+	request = &UploadCredentialsRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "UploadCredentials", "/green/credentials/uploadcredentials", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateUploadCredentialsResponse creates a response to parse from UploadCredentials response
+func CreateUploadCredentialsResponse() (response *UploadCredentialsResponse) {
+	response = &UploadCredentialsResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_cancel_scan.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceCancelScan invokes the green.VoiceCancelScan API synchronously
+// api document: https://help.aliyun.com/api/green/voicecancelscan.html
+func (client *Client) VoiceCancelScan(request *VoiceCancelScanRequest) (response *VoiceCancelScanResponse, err error) {
+	response = CreateVoiceCancelScanResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceCancelScanWithChan invokes the green.VoiceCancelScan API asynchronously
+// api document: https://help.aliyun.com/api/green/voicecancelscan.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceCancelScanWithChan(request *VoiceCancelScanRequest) (<-chan *VoiceCancelScanResponse, <-chan error) {
+	responseChan := make(chan *VoiceCancelScanResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceCancelScan(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceCancelScanWithCallback invokes the green.VoiceCancelScan API asynchronously
+// api document: https://help.aliyun.com/api/green/voicecancelscan.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceCancelScanWithCallback(request *VoiceCancelScanRequest, callback func(response *VoiceCancelScanResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceCancelScanResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceCancelScan(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceCancelScanRequest is the request struct for api VoiceCancelScan
+type VoiceCancelScanRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceCancelScanResponse is the response struct for api VoiceCancelScan
+type VoiceCancelScanResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceCancelScanRequest creates a request to invoke VoiceCancelScan API
+func CreateVoiceCancelScanRequest() (request *VoiceCancelScanRequest) {
+	request = &VoiceCancelScanRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceCancelScan", "/green/voice/cancelscan", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceCancelScanResponse creates a response to parse from VoiceCancelScan response
+func CreateVoiceCancelScanResponse() (response *VoiceCancelScanResponse) {
+	response = &VoiceCancelScanResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_identity_check.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceIdentityCheck invokes the green.VoiceIdentityCheck API synchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitycheck.html
+func (client *Client) VoiceIdentityCheck(request *VoiceIdentityCheckRequest) (response *VoiceIdentityCheckResponse, err error) {
+	response = CreateVoiceIdentityCheckResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceIdentityCheckWithChan invokes the green.VoiceIdentityCheck API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitycheck.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityCheckWithChan(request *VoiceIdentityCheckRequest) (<-chan *VoiceIdentityCheckResponse, <-chan error) {
+	responseChan := make(chan *VoiceIdentityCheckResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceIdentityCheck(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceIdentityCheckWithCallback invokes the green.VoiceIdentityCheck API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitycheck.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityCheckWithCallback(request *VoiceIdentityCheckRequest, callback func(response *VoiceIdentityCheckResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceIdentityCheckResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceIdentityCheck(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceIdentityCheckRequest is the request struct for api VoiceIdentityCheck
+type VoiceIdentityCheckRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceIdentityCheckResponse is the response struct for api VoiceIdentityCheck
+type VoiceIdentityCheckResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceIdentityCheckRequest creates a request to invoke VoiceIdentityCheck API
+func CreateVoiceIdentityCheckRequest() (request *VoiceIdentityCheckRequest) {
+	request = &VoiceIdentityCheckRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceIdentityCheck", "/green/voice/auth/check", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceIdentityCheckResponse creates a response to parse from VoiceIdentityCheck response
+func CreateVoiceIdentityCheckResponse() (response *VoiceIdentityCheckResponse) {
+	response = &VoiceIdentityCheckResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_identity_register.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceIdentityRegister invokes the green.VoiceIdentityRegister API synchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityregister.html
+func (client *Client) VoiceIdentityRegister(request *VoiceIdentityRegisterRequest) (response *VoiceIdentityRegisterResponse, err error) {
+	response = CreateVoiceIdentityRegisterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceIdentityRegisterWithChan invokes the green.VoiceIdentityRegister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityRegisterWithChan(request *VoiceIdentityRegisterRequest) (<-chan *VoiceIdentityRegisterResponse, <-chan error) {
+	responseChan := make(chan *VoiceIdentityRegisterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceIdentityRegister(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceIdentityRegisterWithCallback invokes the green.VoiceIdentityRegister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityRegisterWithCallback(request *VoiceIdentityRegisterRequest, callback func(response *VoiceIdentityRegisterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceIdentityRegisterResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceIdentityRegister(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceIdentityRegisterRequest is the request struct for api VoiceIdentityRegister
+type VoiceIdentityRegisterRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceIdentityRegisterResponse is the response struct for api VoiceIdentityRegister
+type VoiceIdentityRegisterResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceIdentityRegisterRequest creates a request to invoke VoiceIdentityRegister API
+func CreateVoiceIdentityRegisterRequest() (request *VoiceIdentityRegisterRequest) {
+	request = &VoiceIdentityRegisterRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceIdentityRegister", "/green/voice/auth/register", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceIdentityRegisterResponse creates a response to parse from VoiceIdentityRegister response
+func CreateVoiceIdentityRegisterResponse() (response *VoiceIdentityRegisterResponse) {
+	response = &VoiceIdentityRegisterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_identity_start_check.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceIdentityStartCheck invokes the green.VoiceIdentityStartCheck API synchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartcheck.html
+func (client *Client) VoiceIdentityStartCheck(request *VoiceIdentityStartCheckRequest) (response *VoiceIdentityStartCheckResponse, err error) {
+	response = CreateVoiceIdentityStartCheckResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceIdentityStartCheckWithChan invokes the green.VoiceIdentityStartCheck API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartcheck.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityStartCheckWithChan(request *VoiceIdentityStartCheckRequest) (<-chan *VoiceIdentityStartCheckResponse, <-chan error) {
+	responseChan := make(chan *VoiceIdentityStartCheckResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceIdentityStartCheck(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceIdentityStartCheckWithCallback invokes the green.VoiceIdentityStartCheck API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartcheck.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityStartCheckWithCallback(request *VoiceIdentityStartCheckRequest, callback func(response *VoiceIdentityStartCheckResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceIdentityStartCheckResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceIdentityStartCheck(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceIdentityStartCheckRequest is the request struct for api VoiceIdentityStartCheck
+type VoiceIdentityStartCheckRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceIdentityStartCheckResponse is the response struct for api VoiceIdentityStartCheck
+type VoiceIdentityStartCheckResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceIdentityStartCheckRequest creates a request to invoke VoiceIdentityStartCheck API
+func CreateVoiceIdentityStartCheckRequest() (request *VoiceIdentityStartCheckRequest) {
+	request = &VoiceIdentityStartCheckRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceIdentityStartCheck", "/green/voice/auth/start/check", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceIdentityStartCheckResponse creates a response to parse from VoiceIdentityStartCheck response
+func CreateVoiceIdentityStartCheckResponse() (response *VoiceIdentityStartCheckResponse) {
+	response = &VoiceIdentityStartCheckResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_identity_start_register.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceIdentityStartRegister invokes the green.VoiceIdentityStartRegister API synchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartregister.html
+func (client *Client) VoiceIdentityStartRegister(request *VoiceIdentityStartRegisterRequest) (response *VoiceIdentityStartRegisterResponse, err error) {
+	response = CreateVoiceIdentityStartRegisterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceIdentityStartRegisterWithChan invokes the green.VoiceIdentityStartRegister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityStartRegisterWithChan(request *VoiceIdentityStartRegisterRequest) (<-chan *VoiceIdentityStartRegisterResponse, <-chan error) {
+	responseChan := make(chan *VoiceIdentityStartRegisterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceIdentityStartRegister(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceIdentityStartRegisterWithCallback invokes the green.VoiceIdentityStartRegister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentitystartregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityStartRegisterWithCallback(request *VoiceIdentityStartRegisterRequest, callback func(response *VoiceIdentityStartRegisterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceIdentityStartRegisterResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceIdentityStartRegister(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceIdentityStartRegisterRequest is the request struct for api VoiceIdentityStartRegister
+type VoiceIdentityStartRegisterRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceIdentityStartRegisterResponse is the response struct for api VoiceIdentityStartRegister
+type VoiceIdentityStartRegisterResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceIdentityStartRegisterRequest creates a request to invoke VoiceIdentityStartRegister API
+func CreateVoiceIdentityStartRegisterRequest() (request *VoiceIdentityStartRegisterRequest) {
+	request = &VoiceIdentityStartRegisterRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceIdentityStartRegister", "/green/voice/auth/start/register", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceIdentityStartRegisterResponse creates a response to parse from VoiceIdentityStartRegister response
+func CreateVoiceIdentityStartRegisterResponse() (response *VoiceIdentityStartRegisterResponse) {
+	response = &VoiceIdentityStartRegisterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 103 - 0
services/green/voice_identity_unregister.go

@@ -0,0 +1,103 @@
+package green
+
+//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"
+)
+
+// VoiceIdentityUnregister invokes the green.VoiceIdentityUnregister API synchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityunregister.html
+func (client *Client) VoiceIdentityUnregister(request *VoiceIdentityUnregisterRequest) (response *VoiceIdentityUnregisterResponse, err error) {
+	response = CreateVoiceIdentityUnregisterResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// VoiceIdentityUnregisterWithChan invokes the green.VoiceIdentityUnregister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityunregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityUnregisterWithChan(request *VoiceIdentityUnregisterRequest) (<-chan *VoiceIdentityUnregisterResponse, <-chan error) {
+	responseChan := make(chan *VoiceIdentityUnregisterResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.VoiceIdentityUnregister(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// VoiceIdentityUnregisterWithCallback invokes the green.VoiceIdentityUnregister API asynchronously
+// api document: https://help.aliyun.com/api/green/voiceidentityunregister.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) VoiceIdentityUnregisterWithCallback(request *VoiceIdentityUnregisterRequest, callback func(response *VoiceIdentityUnregisterResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *VoiceIdentityUnregisterResponse
+		var err error
+		defer close(result)
+		response, err = client.VoiceIdentityUnregister(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// VoiceIdentityUnregisterRequest is the request struct for api VoiceIdentityUnregister
+type VoiceIdentityUnregisterRequest struct {
+	*requests.RoaRequest
+	ClientInfo string `position:"Query" name:"ClientInfo"`
+}
+
+// VoiceIdentityUnregisterResponse is the response struct for api VoiceIdentityUnregister
+type VoiceIdentityUnregisterResponse struct {
+	*responses.BaseResponse
+}
+
+// CreateVoiceIdentityUnregisterRequest creates a request to invoke VoiceIdentityUnregister API
+func CreateVoiceIdentityUnregisterRequest() (request *VoiceIdentityUnregisterRequest) {
+	request = &VoiceIdentityUnregisterRequest{
+		RoaRequest: &requests.RoaRequest{},
+	}
+	request.InitWithApiInfo("Green", "2018-05-09", "VoiceIdentityUnregister", "/green/voice/auth/unregister", "green", "openAPI")
+	request.Method = requests.POST
+	return
+}
+
+// CreateVoiceIdentityUnregisterResponse creates a response to parse from VoiceIdentityUnregister response
+func CreateVoiceIdentityUnregisterResponse() (response *VoiceIdentityUnregisterResponse) {
+	response = &VoiceIdentityUnregisterResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}