Browse Source

Generated 2018-08-21 for Rdc.

sdk-team 6 years ago
parent
commit
4790b7c666
47 changed files with 3141 additions and 0 deletions
  1. 3 0
      ChangeLog.txt
  2. 109 0
      services/rdc/add_enterprise_member.go
  3. 108 0
      services/rdc/add_ram_member.go
  4. 108 0
      services/rdc/approve_join_company.go
  5. 129 0
      services/rdc/client.go
  6. 111 0
      services/rdc/create_enterprise.go
  7. 120 0
      services/rdc/create_workitem.go
  8. 20 0
      services/rdc/endpoint.go
  9. 106 0
      services/rdc/get_binded_user_by_ding_id.go
  10. 108 0
      services/rdc/get_change_log.go
  11. 108 0
      services/rdc/get_custom_fields_by_template_id.go
  12. 107 0
      services/rdc/get_issue_by_id.go
  13. 107 0
      services/rdc/get_join_code.go
  14. 109 0
      services/rdc/get_project_members.go
  15. 106 0
      services/rdc/get_user_by_aliyun_pk.go
  16. 107 0
      services/rdc/get_workitem_by_id.go
  17. 107 0
      services/rdc/join_company.go
  18. 111 0
      services/rdc/search_projects_by_region.go
  19. 115 0
      services/rdc/search_test_case.go
  20. 115 0
      services/rdc/search_workitem.go
  21. 115 0
      services/rdc/search_workitem_with_total_count.go
  22. 29 0
      services/rdc/struct_aliyun_user.go
  23. 21 0
      services/rdc/struct_cfs_list_in_get_issue_by_id.go
  24. 21 0
      services/rdc/struct_cfs_list_in_get_workitem_by_id.go
  25. 24 0
      services/rdc/struct_cfs_list_item.go
  26. 21 0
      services/rdc/struct_custom_field_map.go
  27. 34 0
      services/rdc/struct_data.go
  28. 21 0
      services/rdc/struct_data_in_add_ram_member.go
  29. 21 0
      services/rdc/struct_data_in_approve_join_company.go
  30. 29 0
      services/rdc/struct_data_in_get_binded_user_by_ding_id.go
  31. 21 0
      services/rdc/struct_data_in_get_change_log.go
  32. 21 0
      services/rdc/struct_data_in_get_custom_fields_by_template_id.go
  33. 80 0
      services/rdc/struct_data_in_get_issue_by_id.go
  34. 21 0
      services/rdc/struct_data_in_get_project_members.go
  35. 29 0
      services/rdc/struct_data_in_get_user_by_aliyun_pk.go
  36. 80 0
      services/rdc/struct_data_in_get_workitem_by_id.go
  37. 21 0
      services/rdc/struct_data_in_search_projects_by_region.go
  38. 21 0
      services/rdc/struct_data_in_search_workitem.go
  39. 21 0
      services/rdc/struct_data_in_search_workitem_with_total_count.go
  40. 123 0
      services/rdc/struct_data_item.go
  41. 26 0
      services/rdc/struct_dingtalk_user.go
  42. 21 0
      services/rdc/struct_icons.go
  43. 29 0
      services/rdc/struct_user_profile_dto.go
  44. 21 0
      services/rdc/struct_users.go
  45. 26 0
      services/rdc/struct_users_item.go
  46. 107 0
      services/rdc/sync_user_to_rdc.go
  47. 123 0
      services/rdc/update_workitem.go

+ 3 - 0
ChangeLog.txt

@@ -1,3 +1,6 @@
+2019-11-12 Version: 1.60.230
+- Generated 2018-08-21 for `Rdc`.
+
 2019-11-08 Version: 1.60.229
 - Add DescribeJobErrorCode.
 

+ 109 - 0
services/rdc/add_enterprise_member.go

@@ -0,0 +1,109 @@
+package rdc
+
+//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"
+)
+
+// AddEnterpriseMember invokes the rdc.AddEnterpriseMember API synchronously
+// api document: https://help.aliyun.com/api/rdc/addenterprisemember.html
+func (client *Client) AddEnterpriseMember(request *AddEnterpriseMemberRequest) (response *AddEnterpriseMemberResponse, err error) {
+	response = CreateAddEnterpriseMemberResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddEnterpriseMemberWithChan invokes the rdc.AddEnterpriseMember API asynchronously
+// api document: https://help.aliyun.com/api/rdc/addenterprisemember.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddEnterpriseMemberWithChan(request *AddEnterpriseMemberRequest) (<-chan *AddEnterpriseMemberResponse, <-chan error) {
+	responseChan := make(chan *AddEnterpriseMemberResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddEnterpriseMember(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddEnterpriseMemberWithCallback invokes the rdc.AddEnterpriseMember API asynchronously
+// api document: https://help.aliyun.com/api/rdc/addenterprisemember.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddEnterpriseMemberWithCallback(request *AddEnterpriseMemberRequest, callback func(response *AddEnterpriseMemberResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddEnterpriseMemberResponse
+		var err error
+		defer close(result)
+		response, err = client.AddEnterpriseMember(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddEnterpriseMemberRequest is the request struct for api AddEnterpriseMember
+type AddEnterpriseMemberRequest struct {
+	*requests.RpcRequest
+	InstanceId string `position:"Query" name:"InstanceId"`
+	StaffId    string `position:"Query" name:"StaffId"`
+	Operator   string `position:"Query" name:"Operator"`
+}
+
+// AddEnterpriseMemberResponse is the response struct for api AddEnterpriseMember
+type AddEnterpriseMemberResponse struct {
+	*responses.BaseResponse
+	Success   bool   `json:"Success" xml:"Success"`
+	Message   string `json:"Message" xml:"Message"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	Data      bool   `json:"Data" xml:"Data"`
+}
+
+// CreateAddEnterpriseMemberRequest creates a request to invoke AddEnterpriseMember API
+func CreateAddEnterpriseMemberRequest() (request *AddEnterpriseMemberRequest) {
+	request = &AddEnterpriseMemberRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "AddEnterpriseMember", "rdc", "openAPI")
+	return
+}
+
+// CreateAddEnterpriseMemberResponse creates a response to parse from AddEnterpriseMember response
+func CreateAddEnterpriseMemberResponse() (response *AddEnterpriseMemberResponse) {
+	response = &AddEnterpriseMemberResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/rdc/add_ram_member.go

@@ -0,0 +1,108 @@
+package rdc
+
+//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"
+)
+
+// AddRamMember invokes the rdc.AddRamMember API synchronously
+// api document: https://help.aliyun.com/api/rdc/addrammember.html
+func (client *Client) AddRamMember(request *AddRamMemberRequest) (response *AddRamMemberResponse, err error) {
+	response = CreateAddRamMemberResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// AddRamMemberWithChan invokes the rdc.AddRamMember API asynchronously
+// api document: https://help.aliyun.com/api/rdc/addrammember.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddRamMemberWithChan(request *AddRamMemberRequest) (<-chan *AddRamMemberResponse, <-chan error) {
+	responseChan := make(chan *AddRamMemberResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.AddRamMember(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// AddRamMemberWithCallback invokes the rdc.AddRamMember API asynchronously
+// api document: https://help.aliyun.com/api/rdc/addrammember.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) AddRamMemberWithCallback(request *AddRamMemberRequest, callback func(response *AddRamMemberResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *AddRamMemberResponse
+		var err error
+		defer close(result)
+		response, err = client.AddRamMember(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// AddRamMemberRequest is the request struct for api AddRamMember
+type AddRamMemberRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier  string `position:"Body" name:"CorpIdentifier"`
+	StaffIdentifier string `position:"Body" name:"StaffIdentifier"`
+}
+
+// AddRamMemberResponse is the response struct for api AddRamMember
+type AddRamMemberResponse struct {
+	*responses.BaseResponse
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	Success   bool     `json:"Success" xml:"Success"`
+	Code      int      `json:"Code" xml:"Code"`
+	Message   string   `json:"Message" xml:"Message"`
+	Data      []string `json:"Data" xml:"Data"`
+}
+
+// CreateAddRamMemberRequest creates a request to invoke AddRamMember API
+func CreateAddRamMemberRequest() (request *AddRamMemberRequest) {
+	request = &AddRamMemberRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "AddRamMember", "rdc", "openAPI")
+	return
+}
+
+// CreateAddRamMemberResponse creates a response to parse from AddRamMember response
+func CreateAddRamMemberResponse() (response *AddRamMemberResponse) {
+	response = &AddRamMemberResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/rdc/approve_join_company.go

@@ -0,0 +1,108 @@
+package rdc
+
+//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"
+)
+
+// ApproveJoinCompany invokes the rdc.ApproveJoinCompany API synchronously
+// api document: https://help.aliyun.com/api/rdc/approvejoincompany.html
+func (client *Client) ApproveJoinCompany(request *ApproveJoinCompanyRequest) (response *ApproveJoinCompanyResponse, err error) {
+	response = CreateApproveJoinCompanyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ApproveJoinCompanyWithChan invokes the rdc.ApproveJoinCompany API asynchronously
+// api document: https://help.aliyun.com/api/rdc/approvejoincompany.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ApproveJoinCompanyWithChan(request *ApproveJoinCompanyRequest) (<-chan *ApproveJoinCompanyResponse, <-chan error) {
+	responseChan := make(chan *ApproveJoinCompanyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ApproveJoinCompany(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ApproveJoinCompanyWithCallback invokes the rdc.ApproveJoinCompany API asynchronously
+// api document: https://help.aliyun.com/api/rdc/approvejoincompany.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ApproveJoinCompanyWithCallback(request *ApproveJoinCompanyRequest, callback func(response *ApproveJoinCompanyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ApproveJoinCompanyResponse
+		var err error
+		defer close(result)
+		response, err = client.ApproveJoinCompany(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ApproveJoinCompanyRequest is the request struct for api ApproveJoinCompany
+type ApproveJoinCompanyRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string `position:"Query" name:"CorpIdentifier"`
+	ApplicationIds string `position:"Body" name:"ApplicationIds"`
+}
+
+// ApproveJoinCompanyResponse is the response struct for api ApproveJoinCompany
+type ApproveJoinCompanyResponse struct {
+	*responses.BaseResponse
+	RequestId string   `json:"RequestId" xml:"RequestId"`
+	Success   bool     `json:"Success" xml:"Success"`
+	Code      int      `json:"Code" xml:"Code"`
+	Message   string   `json:"Message" xml:"Message"`
+	Data      []string `json:"Data" xml:"Data"`
+}
+
+// CreateApproveJoinCompanyRequest creates a request to invoke ApproveJoinCompany API
+func CreateApproveJoinCompanyRequest() (request *ApproveJoinCompanyRequest) {
+	request = &ApproveJoinCompanyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "ApproveJoinCompany", "rdc", "openAPI")
+	return
+}
+
+// CreateApproveJoinCompanyResponse creates a response to parse from ApproveJoinCompany response
+func CreateApproveJoinCompanyResponse() (response *ApproveJoinCompanyResponse) {
+	response = &ApproveJoinCompanyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 129 - 0
services/rdc/client.go

@@ -0,0 +1,129 @@
+package rdc
+
+//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 (
+	"reflect"
+
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
+)
+
+// Client is the sdk client struct, each func corresponds to an OpenAPI
+type Client struct {
+	sdk.Client
+}
+
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
+// NewClient creates a sdk client with environment variables
+func NewClient() (client *Client, err error) {
+	client = &Client{}
+	err = client.Init()
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithProvider creates a sdk client with providers
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
+	client = &Client{}
+	var pc provider.Provider
+	if len(providers) == 0 {
+		pc = provider.DefaultChain
+	} else {
+		pc = provider.NewProviderChain(providers)
+	}
+	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
+// this is the common api to create a sdk client
+func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithStsToken is a shortcut to create sdk client with sts token
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
+	return
+}
+
+// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
+// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
+func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
+	client = &Client{}
+	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
+	return
+}

+ 111 - 0
services/rdc/create_enterprise.go

@@ -0,0 +1,111 @@
+package rdc
+
+//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"
+)
+
+// CreateEnterprise invokes the rdc.CreateEnterprise API synchronously
+// api document: https://help.aliyun.com/api/rdc/createenterprise.html
+func (client *Client) CreateEnterprise(request *CreateEnterpriseRequest) (response *CreateEnterpriseResponse, err error) {
+	response = CreateCreateEnterpriseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateEnterpriseWithChan invokes the rdc.CreateEnterprise API asynchronously
+// api document: https://help.aliyun.com/api/rdc/createenterprise.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateEnterpriseWithChan(request *CreateEnterpriseRequest) (<-chan *CreateEnterpriseResponse, <-chan error) {
+	responseChan := make(chan *CreateEnterpriseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateEnterprise(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateEnterpriseWithCallback invokes the rdc.CreateEnterprise API asynchronously
+// api document: https://help.aliyun.com/api/rdc/createenterprise.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateEnterpriseWithCallback(request *CreateEnterpriseRequest, callback func(response *CreateEnterpriseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateEnterpriseResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateEnterprise(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateEnterpriseRequest is the request struct for api CreateEnterprise
+type CreateEnterpriseRequest struct {
+	*requests.RpcRequest
+	Emails         string `position:"Query" name:"Emails"`
+	CreatorStaffId string `position:"Query" name:"CreatorStaffId"`
+	Domain         string `position:"Query" name:"Domain"`
+	Name           string `position:"Query" name:"Name"`
+	Description    string `position:"Query" name:"Description"`
+}
+
+// CreateEnterpriseResponse is the response struct for api CreateEnterprise
+type CreateEnterpriseResponse struct {
+	*responses.BaseResponse
+	Success   bool   `json:"Success" xml:"Success"`
+	Message   string `json:"Message" xml:"Message"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateCreateEnterpriseRequest creates a request to invoke CreateEnterprise API
+func CreateCreateEnterpriseRequest() (request *CreateEnterpriseRequest) {
+	request = &CreateEnterpriseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "CreateEnterprise", "rdc", "openAPI")
+	return
+}
+
+// CreateCreateEnterpriseResponse creates a response to parse from CreateEnterprise response
+func CreateCreateEnterpriseResponse() (response *CreateEnterpriseResponse) {
+	response = &CreateEnterpriseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 120 - 0
services/rdc/create_workitem.go

@@ -0,0 +1,120 @@
+package rdc
+
+//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"
+)
+
+// CreateWorkitem invokes the rdc.CreateWorkitem API synchronously
+// api document: https://help.aliyun.com/api/rdc/createworkitem.html
+func (client *Client) CreateWorkitem(request *CreateWorkitemRequest) (response *CreateWorkitemResponse, err error) {
+	response = CreateCreateWorkitemResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreateWorkitemWithChan invokes the rdc.CreateWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/createworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateWorkitemWithChan(request *CreateWorkitemRequest) (<-chan *CreateWorkitemResponse, <-chan error) {
+	responseChan := make(chan *CreateWorkitemResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreateWorkitem(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreateWorkitemWithCallback invokes the rdc.CreateWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/createworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreateWorkitemWithCallback(request *CreateWorkitemRequest, callback func(response *CreateWorkitemResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreateWorkitemResponse
+		var err error
+		defer close(result)
+		response, err = client.CreateWorkitem(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreateWorkitemRequest is the request struct for api CreateWorkitem
+type CreateWorkitemRequest struct {
+	*requests.RpcRequest
+	Author         string           `position:"Body" name:"Author"`
+	Subject        string           `position:"Body" name:"Subject"`
+	Description    string           `position:"Body" name:"Description"`
+	Stamp          string           `position:"Body" name:"Stamp"`
+	AKProjectId    requests.Integer `position:"Body" name:"AKProjectId"`
+	TemplateId     requests.Integer `position:"Body" name:"TemplateId"`
+	AssignedTo     string           `position:"Body" name:"AssignedTo"`
+	PriorityId     requests.Integer `position:"Body" name:"PriorityId"`
+	SeriousLevelId requests.Integer `position:"Body" name:"SeriousLevelId"`
+	ModuleIds      string           `position:"Body" name:"ModuleIds"`
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	WatcherUsers   string           `position:"Body" name:"WatcherUsers"`
+	Verifier       string           `position:"Body" name:"Verifier"`
+	CfList         string           `position:"Body" name:"CfList"`
+}
+
+// CreateWorkitemResponse is the response struct for api CreateWorkitem
+type CreateWorkitemResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	Data      int    `json:"Data" xml:"Data"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Message   string `json:"Message" xml:"Message"`
+}
+
+// CreateCreateWorkitemRequest creates a request to invoke CreateWorkitem API
+func CreateCreateWorkitemRequest() (request *CreateWorkitemRequest) {
+	request = &CreateWorkitemRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "CreateWorkitem", "rdc", "openAPI")
+	return
+}
+
+// CreateCreateWorkitemResponse creates a response to parse from CreateWorkitem response
+func CreateCreateWorkitemResponse() (response *CreateWorkitemResponse) {
+	response = &CreateWorkitemResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 20 - 0
services/rdc/endpoint.go

@@ -0,0 +1,20 @@
+package rdc
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 106 - 0
services/rdc/get_binded_user_by_ding_id.go

@@ -0,0 +1,106 @@
+package rdc
+
+//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"
+)
+
+// GetBindedUserByDingId invokes the rdc.GetBindedUserByDingId API synchronously
+// api document: https://help.aliyun.com/api/rdc/getbindeduserbydingid.html
+func (client *Client) GetBindedUserByDingId(request *GetBindedUserByDingIdRequest) (response *GetBindedUserByDingIdResponse, err error) {
+	response = CreateGetBindedUserByDingIdResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetBindedUserByDingIdWithChan invokes the rdc.GetBindedUserByDingId API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getbindeduserbydingid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetBindedUserByDingIdWithChan(request *GetBindedUserByDingIdRequest) (<-chan *GetBindedUserByDingIdResponse, <-chan error) {
+	responseChan := make(chan *GetBindedUserByDingIdResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetBindedUserByDingId(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetBindedUserByDingIdWithCallback invokes the rdc.GetBindedUserByDingId API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getbindeduserbydingid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetBindedUserByDingIdWithCallback(request *GetBindedUserByDingIdRequest, callback func(response *GetBindedUserByDingIdResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetBindedUserByDingIdResponse
+		var err error
+		defer close(result)
+		response, err = client.GetBindedUserByDingId(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetBindedUserByDingIdRequest is the request struct for api GetBindedUserByDingId
+type GetBindedUserByDingIdRequest struct {
+	*requests.RpcRequest
+	DingId string `position:"Query" name:"DingId"`
+}
+
+// GetBindedUserByDingIdResponse is the response struct for api GetBindedUserByDingId
+type GetBindedUserByDingIdResponse struct {
+	*responses.BaseResponse
+	Code      int                         `json:"Code" xml:"Code"`
+	Success   bool                        `json:"Success" xml:"Success"`
+	RequestId string                      `json:"RequestId" xml:"RequestId"`
+	Data      DataInGetBindedUserByDingId `json:"Data" xml:"Data"`
+}
+
+// CreateGetBindedUserByDingIdRequest creates a request to invoke GetBindedUserByDingId API
+func CreateGetBindedUserByDingIdRequest() (request *GetBindedUserByDingIdRequest) {
+	request = &GetBindedUserByDingIdRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetBindedUserByDingId", "rdc", "openAPI")
+	return
+}
+
+// CreateGetBindedUserByDingIdResponse creates a response to parse from GetBindedUserByDingId response
+func CreateGetBindedUserByDingIdResponse() (response *GetBindedUserByDingIdResponse) {
+	response = &GetBindedUserByDingIdResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/rdc/get_change_log.go

@@ -0,0 +1,108 @@
+package rdc
+
+//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"
+)
+
+// GetChangeLog invokes the rdc.GetChangeLog API synchronously
+// api document: https://help.aliyun.com/api/rdc/getchangelog.html
+func (client *Client) GetChangeLog(request *GetChangeLogRequest) (response *GetChangeLogResponse, err error) {
+	response = CreateGetChangeLogResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetChangeLogWithChan invokes the rdc.GetChangeLog API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getchangelog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetChangeLogWithChan(request *GetChangeLogRequest) (<-chan *GetChangeLogResponse, <-chan error) {
+	responseChan := make(chan *GetChangeLogResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetChangeLog(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetChangeLogWithCallback invokes the rdc.GetChangeLog API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getchangelog.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetChangeLogWithCallback(request *GetChangeLogRequest, callback func(response *GetChangeLogResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetChangeLogResponse
+		var err error
+		defer close(result)
+		response, err = client.GetChangeLog(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetChangeLogRequest is the request struct for api GetChangeLog
+type GetChangeLogRequest struct {
+	*requests.RpcRequest
+	TargetType     string `position:"Body" name:"TargetType"`
+	TargetIds      string `position:"Body" name:"TargetIds"`
+	CorpIdentifier string `position:"Query" name:"CorpIdentifier"`
+}
+
+// GetChangeLogResponse is the response struct for api GetChangeLog
+type GetChangeLogResponse struct {
+	*responses.BaseResponse
+	Code      int        `json:"Code" xml:"Code"`
+	Success   bool       `json:"Success" xml:"Success"`
+	RequestId string     `json:"RequestId" xml:"RequestId"`
+	Data      []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateGetChangeLogRequest creates a request to invoke GetChangeLog API
+func CreateGetChangeLogRequest() (request *GetChangeLogRequest) {
+	request = &GetChangeLogRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetChangeLog", "rdc", "openAPI")
+	return
+}
+
+// CreateGetChangeLogResponse creates a response to parse from GetChangeLog response
+func CreateGetChangeLogResponse() (response *GetChangeLogResponse) {
+	response = &GetChangeLogResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/rdc/get_custom_fields_by_template_id.go

@@ -0,0 +1,108 @@
+package rdc
+
+//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"
+)
+
+// GetCustomFieldsByTemplateId invokes the rdc.GetCustomFieldsByTemplateId API synchronously
+// api document: https://help.aliyun.com/api/rdc/getcustomfieldsbytemplateid.html
+func (client *Client) GetCustomFieldsByTemplateId(request *GetCustomFieldsByTemplateIdRequest) (response *GetCustomFieldsByTemplateIdResponse, err error) {
+	response = CreateGetCustomFieldsByTemplateIdResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetCustomFieldsByTemplateIdWithChan invokes the rdc.GetCustomFieldsByTemplateId API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getcustomfieldsbytemplateid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetCustomFieldsByTemplateIdWithChan(request *GetCustomFieldsByTemplateIdRequest) (<-chan *GetCustomFieldsByTemplateIdResponse, <-chan error) {
+	responseChan := make(chan *GetCustomFieldsByTemplateIdResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetCustomFieldsByTemplateId(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetCustomFieldsByTemplateIdWithCallback invokes the rdc.GetCustomFieldsByTemplateId API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getcustomfieldsbytemplateid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetCustomFieldsByTemplateIdWithCallback(request *GetCustomFieldsByTemplateIdRequest, callback func(response *GetCustomFieldsByTemplateIdResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetCustomFieldsByTemplateIdResponse
+		var err error
+		defer close(result)
+		response, err = client.GetCustomFieldsByTemplateId(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetCustomFieldsByTemplateIdRequest is the request struct for api GetCustomFieldsByTemplateId
+type GetCustomFieldsByTemplateIdRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	AKProjectId    requests.Integer `position:"Body" name:"AKProjectId"`
+	TemplateId     requests.Integer `position:"Body" name:"TemplateId"`
+}
+
+// GetCustomFieldsByTemplateIdResponse is the response struct for api GetCustomFieldsByTemplateId
+type GetCustomFieldsByTemplateIdResponse struct {
+	*responses.BaseResponse
+	Code      int        `json:"Code" xml:"Code"`
+	Success   bool       `json:"Success" xml:"Success"`
+	RequestId string     `json:"RequestId" xml:"RequestId"`
+	Data      []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateGetCustomFieldsByTemplateIdRequest creates a request to invoke GetCustomFieldsByTemplateId API
+func CreateGetCustomFieldsByTemplateIdRequest() (request *GetCustomFieldsByTemplateIdRequest) {
+	request = &GetCustomFieldsByTemplateIdRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetCustomFieldsByTemplateId", "rdc", "openAPI")
+	return
+}
+
+// CreateGetCustomFieldsByTemplateIdResponse creates a response to parse from GetCustomFieldsByTemplateId response
+func CreateGetCustomFieldsByTemplateIdResponse() (response *GetCustomFieldsByTemplateIdResponse) {
+	response = &GetCustomFieldsByTemplateIdResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/rdc/get_issue_by_id.go

@@ -0,0 +1,107 @@
+package rdc
+
+//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"
+)
+
+// GetIssueById invokes the rdc.GetIssueById API synchronously
+// api document: https://help.aliyun.com/api/rdc/getissuebyid.html
+func (client *Client) GetIssueById(request *GetIssueByIdRequest) (response *GetIssueByIdResponse, err error) {
+	response = CreateGetIssueByIdResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetIssueByIdWithChan invokes the rdc.GetIssueById API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getissuebyid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetIssueByIdWithChan(request *GetIssueByIdRequest) (<-chan *GetIssueByIdResponse, <-chan error) {
+	responseChan := make(chan *GetIssueByIdResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetIssueById(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetIssueByIdWithCallback invokes the rdc.GetIssueById API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getissuebyid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetIssueByIdWithCallback(request *GetIssueByIdRequest, callback func(response *GetIssueByIdResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetIssueByIdResponse
+		var err error
+		defer close(result)
+		response, err = client.GetIssueById(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetIssueByIdRequest is the request struct for api GetIssueById
+type GetIssueByIdRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	Id             requests.Integer `position:"Body" name:"Id"`
+}
+
+// GetIssueByIdResponse is the response struct for api GetIssueById
+type GetIssueByIdResponse struct {
+	*responses.BaseResponse
+	Code      int                `json:"Code" xml:"Code"`
+	Success   string             `json:"Success" xml:"Success"`
+	RequestId string             `json:"RequestId" xml:"RequestId"`
+	Data      DataInGetIssueById `json:"Data" xml:"Data"`
+}
+
+// CreateGetIssueByIdRequest creates a request to invoke GetIssueById API
+func CreateGetIssueByIdRequest() (request *GetIssueByIdRequest) {
+	request = &GetIssueByIdRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetIssueById", "rdc", "openAPI")
+	return
+}
+
+// CreateGetIssueByIdResponse creates a response to parse from GetIssueById response
+func CreateGetIssueByIdResponse() (response *GetIssueByIdResponse) {
+	response = &GetIssueByIdResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/rdc/get_join_code.go

@@ -0,0 +1,107 @@
+package rdc
+
+//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"
+)
+
+// GetJoinCode invokes the rdc.GetJoinCode API synchronously
+// api document: https://help.aliyun.com/api/rdc/getjoincode.html
+func (client *Client) GetJoinCode(request *GetJoinCodeRequest) (response *GetJoinCodeResponse, err error) {
+	response = CreateGetJoinCodeResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetJoinCodeWithChan invokes the rdc.GetJoinCode API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getjoincode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetJoinCodeWithChan(request *GetJoinCodeRequest) (<-chan *GetJoinCodeResponse, <-chan error) {
+	responseChan := make(chan *GetJoinCodeResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetJoinCode(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetJoinCodeWithCallback invokes the rdc.GetJoinCode API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getjoincode.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetJoinCodeWithCallback(request *GetJoinCodeRequest, callback func(response *GetJoinCodeResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetJoinCodeResponse
+		var err error
+		defer close(result)
+		response, err = client.GetJoinCode(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetJoinCodeRequest is the request struct for api GetJoinCode
+type GetJoinCodeRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string `position:"Query" name:"CorpIdentifier"`
+}
+
+// GetJoinCodeResponse is the response struct for api GetJoinCode
+type GetJoinCodeResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Code      int    `json:"Code" xml:"Code"`
+	Message   string `json:"Message" xml:"Message"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateGetJoinCodeRequest creates a request to invoke GetJoinCode API
+func CreateGetJoinCodeRequest() (request *GetJoinCodeRequest) {
+	request = &GetJoinCodeRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetJoinCode", "rdc", "openAPI")
+	return
+}
+
+// CreateGetJoinCodeResponse creates a response to parse from GetJoinCode response
+func CreateGetJoinCodeResponse() (response *GetJoinCodeResponse) {
+	response = &GetJoinCodeResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 109 - 0
services/rdc/get_project_members.go

@@ -0,0 +1,109 @@
+package rdc
+
+//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"
+)
+
+// GetProjectMembers invokes the rdc.GetProjectMembers API synchronously
+// api document: https://help.aliyun.com/api/rdc/getprojectmembers.html
+func (client *Client) GetProjectMembers(request *GetProjectMembersRequest) (response *GetProjectMembersResponse, err error) {
+	response = CreateGetProjectMembersResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetProjectMembersWithChan invokes the rdc.GetProjectMembers API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getprojectmembers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetProjectMembersWithChan(request *GetProjectMembersRequest) (<-chan *GetProjectMembersResponse, <-chan error) {
+	responseChan := make(chan *GetProjectMembersResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetProjectMembers(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetProjectMembersWithCallback invokes the rdc.GetProjectMembers API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getprojectmembers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetProjectMembersWithCallback(request *GetProjectMembersRequest, callback func(response *GetProjectMembersResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetProjectMembersResponse
+		var err error
+		defer close(result)
+		response, err = client.GetProjectMembers(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetProjectMembersRequest is the request struct for api GetProjectMembers
+type GetProjectMembersRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	ProjectId      requests.Integer `position:"Query" name:"ProjectId"`
+	StaffId        string           `position:"Query" name:"StaffId"`
+}
+
+// GetProjectMembersResponse is the response struct for api GetProjectMembers
+type GetProjectMembersResponse struct {
+	*responses.BaseResponse
+	Code      int        `json:"Code" xml:"Code"`
+	Success   bool       `json:"Success" xml:"Success"`
+	RequestId string     `json:"RequestId" xml:"RequestId"`
+	Message   string     `json:"Message" xml:"Message"`
+	Data      []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateGetProjectMembersRequest creates a request to invoke GetProjectMembers API
+func CreateGetProjectMembersRequest() (request *GetProjectMembersRequest) {
+	request = &GetProjectMembersRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetProjectMembers", "rdc", "openAPI")
+	return
+}
+
+// CreateGetProjectMembersResponse creates a response to parse from GetProjectMembers response
+func CreateGetProjectMembersResponse() (response *GetProjectMembersResponse) {
+	response = &GetProjectMembersResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 106 - 0
services/rdc/get_user_by_aliyun_pk.go

@@ -0,0 +1,106 @@
+package rdc
+
+//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"
+)
+
+// GetUserByAliyunPk invokes the rdc.GetUserByAliyunPk API synchronously
+// api document: https://help.aliyun.com/api/rdc/getuserbyaliyunpk.html
+func (client *Client) GetUserByAliyunPk(request *GetUserByAliyunPkRequest) (response *GetUserByAliyunPkResponse, err error) {
+	response = CreateGetUserByAliyunPkResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetUserByAliyunPkWithChan invokes the rdc.GetUserByAliyunPk API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getuserbyaliyunpk.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetUserByAliyunPkWithChan(request *GetUserByAliyunPkRequest) (<-chan *GetUserByAliyunPkResponse, <-chan error) {
+	responseChan := make(chan *GetUserByAliyunPkResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetUserByAliyunPk(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetUserByAliyunPkWithCallback invokes the rdc.GetUserByAliyunPk API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getuserbyaliyunpk.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetUserByAliyunPkWithCallback(request *GetUserByAliyunPkRequest, callback func(response *GetUserByAliyunPkResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetUserByAliyunPkResponse
+		var err error
+		defer close(result)
+		response, err = client.GetUserByAliyunPk(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetUserByAliyunPkRequest is the request struct for api GetUserByAliyunPk
+type GetUserByAliyunPkRequest struct {
+	*requests.RpcRequest
+	Pk string `position:"Query" name:"Pk"`
+}
+
+// GetUserByAliyunPkResponse is the response struct for api GetUserByAliyunPk
+type GetUserByAliyunPkResponse struct {
+	*responses.BaseResponse
+	Code      int                     `json:"Code" xml:"Code"`
+	Success   bool                    `json:"Success" xml:"Success"`
+	RequestId string                  `json:"RequestId" xml:"RequestId"`
+	Data      DataInGetUserByAliyunPk `json:"Data" xml:"Data"`
+}
+
+// CreateGetUserByAliyunPkRequest creates a request to invoke GetUserByAliyunPk API
+func CreateGetUserByAliyunPkRequest() (request *GetUserByAliyunPkRequest) {
+	request = &GetUserByAliyunPkRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetUserByAliyunPk", "rdc", "openAPI")
+	return
+}
+
+// CreateGetUserByAliyunPkResponse creates a response to parse from GetUserByAliyunPk response
+func CreateGetUserByAliyunPkResponse() (response *GetUserByAliyunPkResponse) {
+	response = &GetUserByAliyunPkResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/rdc/get_workitem_by_id.go

@@ -0,0 +1,107 @@
+package rdc
+
+//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"
+)
+
+// GetWorkitemById invokes the rdc.GetWorkitemById API synchronously
+// api document: https://help.aliyun.com/api/rdc/getworkitembyid.html
+func (client *Client) GetWorkitemById(request *GetWorkitemByIdRequest) (response *GetWorkitemByIdResponse, err error) {
+	response = CreateGetWorkitemByIdResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// GetWorkitemByIdWithChan invokes the rdc.GetWorkitemById API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getworkitembyid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetWorkitemByIdWithChan(request *GetWorkitemByIdRequest) (<-chan *GetWorkitemByIdResponse, <-chan error) {
+	responseChan := make(chan *GetWorkitemByIdResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.GetWorkitemById(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// GetWorkitemByIdWithCallback invokes the rdc.GetWorkitemById API asynchronously
+// api document: https://help.aliyun.com/api/rdc/getworkitembyid.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) GetWorkitemByIdWithCallback(request *GetWorkitemByIdRequest, callback func(response *GetWorkitemByIdResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *GetWorkitemByIdResponse
+		var err error
+		defer close(result)
+		response, err = client.GetWorkitemById(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// GetWorkitemByIdRequest is the request struct for api GetWorkitemById
+type GetWorkitemByIdRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	Id             requests.Integer `position:"Body" name:"Id"`
+}
+
+// GetWorkitemByIdResponse is the response struct for api GetWorkitemById
+type GetWorkitemByIdResponse struct {
+	*responses.BaseResponse
+	Code      int                   `json:"Code" xml:"Code"`
+	Success   string                `json:"Success" xml:"Success"`
+	RequestId string                `json:"RequestId" xml:"RequestId"`
+	Data      DataInGetWorkitemById `json:"Data" xml:"Data"`
+}
+
+// CreateGetWorkitemByIdRequest creates a request to invoke GetWorkitemById API
+func CreateGetWorkitemByIdRequest() (request *GetWorkitemByIdRequest) {
+	request = &GetWorkitemByIdRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "GetWorkitemById", "rdc", "openAPI")
+	return
+}
+
+// CreateGetWorkitemByIdResponse creates a response to parse from GetWorkitemById response
+func CreateGetWorkitemByIdResponse() (response *GetWorkitemByIdResponse) {
+	response = &GetWorkitemByIdResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 107 - 0
services/rdc/join_company.go

@@ -0,0 +1,107 @@
+package rdc
+
+//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"
+)
+
+// JoinCompany invokes the rdc.JoinCompany API synchronously
+// api document: https://help.aliyun.com/api/rdc/joincompany.html
+func (client *Client) JoinCompany(request *JoinCompanyRequest) (response *JoinCompanyResponse, err error) {
+	response = CreateJoinCompanyResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// JoinCompanyWithChan invokes the rdc.JoinCompany API asynchronously
+// api document: https://help.aliyun.com/api/rdc/joincompany.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) JoinCompanyWithChan(request *JoinCompanyRequest) (<-chan *JoinCompanyResponse, <-chan error) {
+	responseChan := make(chan *JoinCompanyResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.JoinCompany(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// JoinCompanyWithCallback invokes the rdc.JoinCompany API asynchronously
+// api document: https://help.aliyun.com/api/rdc/joincompany.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) JoinCompanyWithCallback(request *JoinCompanyRequest, callback func(response *JoinCompanyResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *JoinCompanyResponse
+		var err error
+		defer close(result)
+		response, err = client.JoinCompany(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// JoinCompanyRequest is the request struct for api JoinCompany
+type JoinCompanyRequest struct {
+	*requests.RpcRequest
+	Code string `position:"Body" name:"Code"`
+}
+
+// JoinCompanyResponse is the response struct for api JoinCompany
+type JoinCompanyResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Code      int    `json:"Code" xml:"Code"`
+	Message   string `json:"Message" xml:"Message"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateJoinCompanyRequest creates a request to invoke JoinCompany API
+func CreateJoinCompanyRequest() (request *JoinCompanyRequest) {
+	request = &JoinCompanyRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "JoinCompany", "rdc", "openAPI")
+	return
+}
+
+// CreateJoinCompanyResponse creates a response to parse from JoinCompany response
+func CreateJoinCompanyResponse() (response *JoinCompanyResponse) {
+	response = &JoinCompanyResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 111 - 0
services/rdc/search_projects_by_region.go

@@ -0,0 +1,111 @@
+package rdc
+
+//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"
+)
+
+// SearchProjectsByRegion invokes the rdc.SearchProjectsByRegion API synchronously
+// api document: https://help.aliyun.com/api/rdc/searchprojectsbyregion.html
+func (client *Client) SearchProjectsByRegion(request *SearchProjectsByRegionRequest) (response *SearchProjectsByRegionResponse, err error) {
+	response = CreateSearchProjectsByRegionResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SearchProjectsByRegionWithChan invokes the rdc.SearchProjectsByRegion API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchprojectsbyregion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchProjectsByRegionWithChan(request *SearchProjectsByRegionRequest) (<-chan *SearchProjectsByRegionResponse, <-chan error) {
+	responseChan := make(chan *SearchProjectsByRegionResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SearchProjectsByRegion(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SearchProjectsByRegionWithCallback invokes the rdc.SearchProjectsByRegion API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchprojectsbyregion.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchProjectsByRegionWithCallback(request *SearchProjectsByRegionRequest, callback func(response *SearchProjectsByRegionResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SearchProjectsByRegionResponse
+		var err error
+		defer close(result)
+		response, err = client.SearchProjectsByRegion(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SearchProjectsByRegionRequest is the request struct for api SearchProjectsByRegion
+type SearchProjectsByRegionRequest struct {
+	*requests.RpcRequest
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	ToPage         requests.Integer `position:"Query" name:"ToPage"`
+	PageSize       requests.Integer `position:"Query" name:"PageSize"`
+	Region         string           `position:"Query" name:"Region"`
+	Status         string           `position:"Query" name:"Status"`
+}
+
+// SearchProjectsByRegionResponse is the response struct for api SearchProjectsByRegion
+type SearchProjectsByRegionResponse struct {
+	*responses.BaseResponse
+	Code      int        `json:"Code" xml:"Code"`
+	Success   bool       `json:"Success" xml:"Success"`
+	RequestId string     `json:"RequestId" xml:"RequestId"`
+	Message   string     `json:"Message" xml:"Message"`
+	Data      []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateSearchProjectsByRegionRequest creates a request to invoke SearchProjectsByRegion API
+func CreateSearchProjectsByRegionRequest() (request *SearchProjectsByRegionRequest) {
+	request = &SearchProjectsByRegionRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "SearchProjectsByRegion", "rdc", "openAPI")
+	return
+}
+
+// CreateSearchProjectsByRegionResponse creates a response to parse from SearchProjectsByRegion response
+func CreateSearchProjectsByRegionResponse() (response *SearchProjectsByRegionResponse) {
+	response = &SearchProjectsByRegionResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/rdc/search_test_case.go

@@ -0,0 +1,115 @@
+package rdc
+
+//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"
+)
+
+// SearchTestCase invokes the rdc.SearchTestCase API synchronously
+// api document: https://help.aliyun.com/api/rdc/searchtestcase.html
+func (client *Client) SearchTestCase(request *SearchTestCaseRequest) (response *SearchTestCaseResponse, err error) {
+	response = CreateSearchTestCaseResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SearchTestCaseWithChan invokes the rdc.SearchTestCase API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchtestcase.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchTestCaseWithChan(request *SearchTestCaseRequest) (<-chan *SearchTestCaseResponse, <-chan error) {
+	responseChan := make(chan *SearchTestCaseResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SearchTestCase(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SearchTestCaseWithCallback invokes the rdc.SearchTestCase API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchtestcase.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchTestCaseWithCallback(request *SearchTestCaseRequest, callback func(response *SearchTestCaseResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SearchTestCaseResponse
+		var err error
+		defer close(result)
+		response, err = client.SearchTestCase(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SearchTestCaseRequest is the request struct for api SearchTestCase
+type SearchTestCaseRequest struct {
+	*requests.RpcRequest
+	UpdateDateEnd   string           `position:"Body" name:"UpdateDateEnd"`
+	CorpIdentifier  string           `position:"Query" name:"CorpIdentifier"`
+	CreateDateEnd   string           `position:"Body" name:"CreateDateEnd"`
+	CreateDateStart string           `position:"Body" name:"CreateDateStart"`
+	UpdateDateStart string           `position:"Body" name:"UpdateDateStart"`
+	PageSize        requests.Integer `position:"Body" name:"PageSize"`
+	AkProjectId     string           `position:"Body" name:"AkProjectId"`
+	CaseTag         string           `position:"Body" name:"CaseTag"`
+	PageNum         string           `position:"Body" name:"PageNum"`
+}
+
+// SearchTestCaseResponse is the response struct for api SearchTestCase
+type SearchTestCaseResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Message   string `json:"Message" xml:"Message"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateSearchTestCaseRequest creates a request to invoke SearchTestCase API
+func CreateSearchTestCaseRequest() (request *SearchTestCaseRequest) {
+	request = &SearchTestCaseRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "SearchTestCase", "rdc", "openAPI")
+	return
+}
+
+// CreateSearchTestCaseResponse creates a response to parse from SearchTestCase response
+func CreateSearchTestCaseResponse() (response *SearchTestCaseResponse) {
+	response = &SearchTestCaseResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/rdc/search_workitem.go

@@ -0,0 +1,115 @@
+package rdc
+
+//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"
+)
+
+// SearchWorkitem invokes the rdc.SearchWorkitem API synchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitem.html
+func (client *Client) SearchWorkitem(request *SearchWorkitemRequest) (response *SearchWorkitemResponse, err error) {
+	response = CreateSearchWorkitemResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SearchWorkitemWithChan invokes the rdc.SearchWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchWorkitemWithChan(request *SearchWorkitemRequest) (<-chan *SearchWorkitemResponse, <-chan error) {
+	responseChan := make(chan *SearchWorkitemResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SearchWorkitem(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SearchWorkitemWithCallback invokes the rdc.SearchWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchWorkitemWithCallback(request *SearchWorkitemRequest, callback func(response *SearchWorkitemResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SearchWorkitemResponse
+		var err error
+		defer close(result)
+		response, err = client.SearchWorkitem(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SearchWorkitemRequest is the request struct for api SearchWorkitem
+type SearchWorkitemRequest struct {
+	*requests.RpcRequest
+	SprintId       requests.Integer `position:"Body" name:"SprintId"`
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	ToPage         requests.Integer `position:"Body" name:"ToPage"`
+	PageSize       requests.Integer `position:"Body" name:"PageSize"`
+	Stamp          string           `position:"Body" name:"Stamp"`
+	AKProjectId    requests.Integer `position:"Body" name:"AKProjectId"`
+}
+
+// SearchWorkitemResponse is the response struct for api SearchWorkitem
+type SearchWorkitemResponse struct {
+	*responses.BaseResponse
+	Code       int        `json:"Code" xml:"Code"`
+	Success    bool       `json:"Success" xml:"Success"`
+	RequestId  string     `json:"RequestId" xml:"RequestId"`
+	TotalCount int        `json:"TotalCount" xml:"TotalCount"`
+	TotalPages int        `json:"TotalPages" xml:"TotalPages"`
+	ToPage     int        `json:"ToPage" xml:"ToPage"`
+	PageSize   int        `json:"PageSize" xml:"PageSize"`
+	Data       []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateSearchWorkitemRequest creates a request to invoke SearchWorkitem API
+func CreateSearchWorkitemRequest() (request *SearchWorkitemRequest) {
+	request = &SearchWorkitemRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "SearchWorkitem", "rdc", "openAPI")
+	return
+}
+
+// CreateSearchWorkitemResponse creates a response to parse from SearchWorkitem response
+func CreateSearchWorkitemResponse() (response *SearchWorkitemResponse) {
+	response = &SearchWorkitemResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 115 - 0
services/rdc/search_workitem_with_total_count.go

@@ -0,0 +1,115 @@
+package rdc
+
+//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"
+)
+
+// SearchWorkitemWithTotalCount invokes the rdc.SearchWorkitemWithTotalCount API synchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitemwithtotalcount.html
+func (client *Client) SearchWorkitemWithTotalCount(request *SearchWorkitemWithTotalCountRequest) (response *SearchWorkitemWithTotalCountResponse, err error) {
+	response = CreateSearchWorkitemWithTotalCountResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SearchWorkitemWithTotalCountWithChan invokes the rdc.SearchWorkitemWithTotalCount API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitemwithtotalcount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchWorkitemWithTotalCountWithChan(request *SearchWorkitemWithTotalCountRequest) (<-chan *SearchWorkitemWithTotalCountResponse, <-chan error) {
+	responseChan := make(chan *SearchWorkitemWithTotalCountResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SearchWorkitemWithTotalCount(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SearchWorkitemWithTotalCountWithCallback invokes the rdc.SearchWorkitemWithTotalCount API asynchronously
+// api document: https://help.aliyun.com/api/rdc/searchworkitemwithtotalcount.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SearchWorkitemWithTotalCountWithCallback(request *SearchWorkitemWithTotalCountRequest, callback func(response *SearchWorkitemWithTotalCountResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SearchWorkitemWithTotalCountResponse
+		var err error
+		defer close(result)
+		response, err = client.SearchWorkitemWithTotalCount(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SearchWorkitemWithTotalCountRequest is the request struct for api SearchWorkitemWithTotalCount
+type SearchWorkitemWithTotalCountRequest struct {
+	*requests.RpcRequest
+	SprintId       requests.Integer `position:"Body" name:"SprintId"`
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	ToPage         requests.Integer `position:"Body" name:"ToPage"`
+	PageSize       requests.Integer `position:"Body" name:"PageSize"`
+	Stamp          string           `position:"Body" name:"Stamp"`
+	AKProjectId    requests.Integer `position:"Body" name:"AKProjectId"`
+}
+
+// SearchWorkitemWithTotalCountResponse is the response struct for api SearchWorkitemWithTotalCount
+type SearchWorkitemWithTotalCountResponse struct {
+	*responses.BaseResponse
+	Code       int        `json:"Code" xml:"Code"`
+	Success    bool       `json:"Success" xml:"Success"`
+	RequestId  string     `json:"RequestId" xml:"RequestId"`
+	TotalCount int        `json:"TotalCount" xml:"TotalCount"`
+	TotalPages int        `json:"TotalPages" xml:"TotalPages"`
+	ToPage     int        `json:"ToPage" xml:"ToPage"`
+	PageSize   int        `json:"PageSize" xml:"PageSize"`
+	Data       []DataItem `json:"Data" xml:"Data"`
+}
+
+// CreateSearchWorkitemWithTotalCountRequest creates a request to invoke SearchWorkitemWithTotalCount API
+func CreateSearchWorkitemWithTotalCountRequest() (request *SearchWorkitemWithTotalCountRequest) {
+	request = &SearchWorkitemWithTotalCountRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "SearchWorkitemWithTotalCount", "rdc", "openAPI")
+	return
+}
+
+// CreateSearchWorkitemWithTotalCountResponse creates a response to parse from SearchWorkitemWithTotalCount response
+func CreateSearchWorkitemWithTotalCountResponse() (response *SearchWorkitemWithTotalCountResponse) {
+	response = &SearchWorkitemWithTotalCountResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 29 - 0
services/rdc/struct_aliyun_user.go

@@ -0,0 +1,29 @@
+package rdc
+
+//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.
+
+// AliyunUser is a nested struct in rdc response
+type AliyunUser struct {
+	Realname         string `json:"Realname" xml:"Realname"`
+	Id               int    `json:"Id" xml:"Id"`
+	Email            string `json:"Email" xml:"Email"`
+	AliyunId         string `json:"AliyunId" xml:"AliyunId"`
+	NickName         string `json:"NickName" xml:"NickName"`
+	HavanaId         string `json:"HavanaId" xml:"HavanaId"`
+	AccountStructure int    `json:"AccountStructure" xml:"AccountStructure"`
+	TaobaoNick       string `json:"TaobaoNick" xml:"TaobaoNick"`
+	Kp               string `json:"Kp" xml:"Kp"`
+}

+ 21 - 0
services/rdc/struct_cfs_list_in_get_issue_by_id.go

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

+ 21 - 0
services/rdc/struct_cfs_list_in_get_workitem_by_id.go

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

+ 24 - 0
services/rdc/struct_cfs_list_item.go

@@ -0,0 +1,24 @@
+package rdc
+
+//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.
+
+// CfsListItem is a nested struct in rdc response
+type CfsListItem struct {
+	Name  string `json:"Name" xml:"Name"`
+	Value string `json:"Value" xml:"Value"`
+	Id    string `json:"Id" xml:"Id"`
+	Type  string `json:"Type" xml:"Type"`
+}

+ 21 - 0
services/rdc/struct_custom_field_map.go

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

+ 34 - 0
services/rdc/struct_data.go

@@ -0,0 +1,34 @@
+package rdc
+
+//Licensed under the Apache License, Version 2.0 (the "License");
+//you may not use this file except in compliance with the License.
+//You may obtain a copy of the License at
+//
+//http://www.apache.org/licenses/LICENSE-2.0
+//
+//Unless required by applicable law or agreed to in writing, software
+//distributed under the License is distributed on an "AS IS" BASIS,
+//WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//See the License for the specific language governing permissions and
+//limitations under the License.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// Data is a nested struct in rdc response
+type Data struct {
+	Name          string `json:"Name" xml:"Name"`
+	Status        int    `json:"Status" xml:"Status"`
+	ApplicationId string `json:"ApplicationId" xml:"ApplicationId"`
+	Code          string `json:"Code" xml:"Code"`
+	TotalCount    string `json:"TotalCount" xml:"TotalCount"`
+	Cases         string `json:"Cases" xml:"Cases"`
+	PageTotal     string `json:"PageTotal" xml:"PageTotal"`
+	Id            int64  `json:"Id" xml:"Id"`
+	PageSize      string `json:"PageSize" xml:"PageSize"`
+	PageNum       string `json:"PageNum" xml:"PageNum"`
+	Identifier    string `json:"Identifier" xml:"Identifier"`
+	ProhibitCode  int    `json:"ProhibitCode" xml:"ProhibitCode"`
+	Type          int    `json:"Type" xml:"Type"`
+	IsValid       bool   `json:"IsValid" xml:"IsValid"`
+}

+ 21 - 0
services/rdc/struct_data_in_add_ram_member.go

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

+ 21 - 0
services/rdc/struct_data_in_approve_join_company.go

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

+ 29 - 0
services/rdc/struct_data_in_get_binded_user_by_ding_id.go

@@ -0,0 +1,29 @@
+package rdc
+
+//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.
+
+// DataInGetBindedUserByDingId is a nested struct in rdc response
+type DataInGetBindedUserByDingId struct {
+	NickName        string         `json:"NickName" xml:"NickName"`
+	IsValid         bool           `json:"IsValid" xml:"IsValid"`
+	Uuid            string         `json:"Uuid" xml:"Uuid"`
+	Guid            string         `json:"Guid" xml:"Guid"`
+	Id              int            `json:"Id" xml:"Id"`
+	MainAccountType string         `json:"MainAccountType" xml:"MainAccountType"`
+	AliyunUser      AliyunUser     `json:"AliyunUser" xml:"AliyunUser"`
+	DingtalkUser    DingtalkUser   `json:"DingtalkUser" xml:"DingtalkUser"`
+	UserProfileDTO  UserProfileDTO `json:"UserProfileDTO" xml:"UserProfileDTO"`
+}

+ 21 - 0
services/rdc/struct_data_in_get_change_log.go

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

+ 21 - 0
services/rdc/struct_data_in_get_custom_fields_by_template_id.go

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

+ 80 - 0
services/rdc/struct_data_in_get_issue_by_id.go

@@ -0,0 +1,80 @@
+package rdc
+
+//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.
+
+// DataInGetIssueById is a nested struct in rdc response
+type DataInGetIssueById struct {
+	AkProjectId           int           `json:"AkProjectId" xml:"AkProjectId"`
+	AssignedTo            string        `json:"AssignedTo" xml:"AssignedTo"`
+	AssignedToId          int           `json:"AssignedToId" xml:"AssignedToId"`
+	AssignedToIdList      string        `json:"AssignedToIdList" xml:"AssignedToIdList"`
+	AssignedToIds         string        `json:"AssignedToIds" xml:"AssignedToIds"`
+	AssignedToMaps        string        `json:"AssignedToMaps" xml:"AssignedToMaps"`
+	AssignedToStaffId     string        `json:"AssignedToStaffId" xml:"AssignedToStaffId"`
+	AttachmentIds         string        `json:"AttachmentIds" xml:"AttachmentIds"`
+	AttachmentList        string        `json:"AttachmentList" xml:"AttachmentList"`
+	Attachmented          bool          `json:"Attachmented" xml:"Attachmented"`
+	BlackListNotice       string        `json:"BlackListNotice" xml:"BlackListNotice"`
+	ChangeLogList         string        `json:"ChangeLogList" xml:"ChangeLogList"`
+	CommentList           string        `json:"CommentList" xml:"CommentList"`
+	CommitDate            int64         `json:"CommitDate" xml:"CommitDate"`
+	CreatedAt             int64         `json:"CreatedAt" xml:"CreatedAt"`
+	Description           string        `json:"Description" xml:"Description"`
+	Guid                  string        `json:"Guid" xml:"Guid"`
+	Id                    int           `json:"Id" xml:"Id"`
+	IdPath                string        `json:"IdPath" xml:"IdPath"`
+	IgnoreCheck           bool          `json:"IgnoreCheck" xml:"IgnoreCheck"`
+	IgnoreIntegrate       bool          `json:"IgnoreIntegrate" xml:"IgnoreIntegrate"`
+	IssueTypeId           int           `json:"IssueTypeId" xml:"IssueTypeId"`
+	LogicalStatus         string        `json:"LogicalStatus" xml:"LogicalStatus"`
+	ModuleIds             string        `json:"ModuleIds" xml:"ModuleIds"`
+	ModuleList            string        `json:"ModuleList" xml:"ModuleList"`
+	ModuleUpdated         bool          `json:"ModuleUpdated" xml:"ModuleUpdated"`
+	ParentId              int           `json:"ParentId" xml:"ParentId"`
+	Priority              string        `json:"Priority" xml:"Priority"`
+	PriorityId            int           `json:"PriorityId" xml:"PriorityId"`
+	ProjectIds            string        `json:"ProjectIds" xml:"ProjectIds"`
+	RecordChangeLog       bool          `json:"RecordChangeLog" xml:"RecordChangeLog"`
+	RegionId              int           `json:"RegionId" xml:"RegionId"`
+	RelatedAKProjectGuids string        `json:"RelatedAKProjectGuids" xml:"RelatedAKProjectGuids"`
+	RelatedAKProjectIds   string        `json:"RelatedAKProjectIds" xml:"RelatedAKProjectIds"`
+	RelatedUserIds        string        `json:"RelatedUserIds" xml:"RelatedUserIds"`
+	SendWangwang          bool          `json:"SendWangwang" xml:"SendWangwang"`
+	SeriousLevel          string        `json:"SeriousLevel" xml:"SeriousLevel"`
+	SeriousLevelId        int           `json:"SeriousLevelId" xml:"SeriousLevelId"`
+	SkipCollab            bool          `json:"SkipCollab" xml:"SkipCollab"`
+	Stamp                 string        `json:"Stamp" xml:"Stamp"`
+	Status                string        `json:"Status" xml:"Status"`
+	StatusId              int           `json:"StatusId" xml:"StatusId"`
+	StatusStage           int           `json:"StatusStage" xml:"StatusStage"`
+	Subject               string        `json:"Subject" xml:"Subject"`
+	TagIdList             string        `json:"TagIdList" xml:"TagIdList"`
+	TemplateId            int           `json:"TemplateId" xml:"TemplateId"`
+	TrackerIds            string        `json:"TrackerIds" xml:"TrackerIds"`
+	Trackers              string        `json:"Trackers" xml:"Trackers"`
+	UpdateStatusAt        int64         `json:"UpdateStatusAt" xml:"UpdateStatusAt"`
+	UpdatedAt             int64         `json:"UpdatedAt" xml:"UpdatedAt"`
+	User                  string        `json:"User" xml:"User"`
+	UserId                int           `json:"UserId" xml:"UserId"`
+	UserStaffId           string        `json:"UserStaffId" xml:"UserStaffId"`
+	Verifier              string        `json:"Verifier" xml:"Verifier"`
+	VerifierId            int           `json:"VerifierId" xml:"VerifierId"`
+	VerifierStaffId       string        `json:"VerifierStaffId" xml:"VerifierStaffId"`
+	VersionIds            string        `json:"VersionIds" xml:"VersionIds"`
+	VersionList           string        `json:"VersionList" xml:"VersionList"`
+	Watched               bool          `json:"Watched" xml:"Watched"`
+	CfsList               []CfsListItem `json:"CfsList" xml:"CfsList"`
+}

+ 21 - 0
services/rdc/struct_data_in_get_project_members.go

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

+ 29 - 0
services/rdc/struct_data_in_get_user_by_aliyun_pk.go

@@ -0,0 +1,29 @@
+package rdc
+
+//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.
+
+// DataInGetUserByAliyunPk is a nested struct in rdc response
+type DataInGetUserByAliyunPk struct {
+	NickName        string         `json:"NickName" xml:"NickName"`
+	IsValid         bool           `json:"IsValid" xml:"IsValid"`
+	Uuid            string         `json:"Uuid" xml:"Uuid"`
+	Guid            string         `json:"Guid" xml:"Guid"`
+	Id              int            `json:"Id" xml:"Id"`
+	MainAccountType string         `json:"MainAccountType" xml:"MainAccountType"`
+	AliyunUser      AliyunUser     `json:"AliyunUser" xml:"AliyunUser"`
+	DingtalkUser    DingtalkUser   `json:"DingtalkUser" xml:"DingtalkUser"`
+	UserProfileDTO  UserProfileDTO `json:"UserProfileDTO" xml:"UserProfileDTO"`
+}

+ 80 - 0
services/rdc/struct_data_in_get_workitem_by_id.go

@@ -0,0 +1,80 @@
+package rdc
+
+//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.
+
+// DataInGetWorkitemById is a nested struct in rdc response
+type DataInGetWorkitemById struct {
+	AkProjectId           int           `json:"AkProjectId" xml:"AkProjectId"`
+	AssignedTo            string        `json:"AssignedTo" xml:"AssignedTo"`
+	AssignedToId          int           `json:"AssignedToId" xml:"AssignedToId"`
+	AssignedToIdList      string        `json:"AssignedToIdList" xml:"AssignedToIdList"`
+	AssignedToIds         string        `json:"AssignedToIds" xml:"AssignedToIds"`
+	AssignedToMaps        string        `json:"AssignedToMaps" xml:"AssignedToMaps"`
+	AssignedToStaffId     string        `json:"AssignedToStaffId" xml:"AssignedToStaffId"`
+	AttachmentIds         string        `json:"AttachmentIds" xml:"AttachmentIds"`
+	AttachmentList        string        `json:"AttachmentList" xml:"AttachmentList"`
+	Attachmented          bool          `json:"Attachmented" xml:"Attachmented"`
+	BlackListNotice       string        `json:"BlackListNotice" xml:"BlackListNotice"`
+	ChangeLogList         string        `json:"ChangeLogList" xml:"ChangeLogList"`
+	CommentList           string        `json:"CommentList" xml:"CommentList"`
+	CommitDate            int64         `json:"CommitDate" xml:"CommitDate"`
+	CreatedAt             int64         `json:"CreatedAt" xml:"CreatedAt"`
+	Description           string        `json:"Description" xml:"Description"`
+	Guid                  string        `json:"Guid" xml:"Guid"`
+	Id                    int           `json:"Id" xml:"Id"`
+	IdPath                string        `json:"IdPath" xml:"IdPath"`
+	IgnoreCheck           bool          `json:"IgnoreCheck" xml:"IgnoreCheck"`
+	IgnoreIntegrate       bool          `json:"IgnoreIntegrate" xml:"IgnoreIntegrate"`
+	IssueTypeId           int           `json:"IssueTypeId" xml:"IssueTypeId"`
+	LogicalStatus         string        `json:"LogicalStatus" xml:"LogicalStatus"`
+	ModuleIds             string        `json:"ModuleIds" xml:"ModuleIds"`
+	ModuleList            string        `json:"ModuleList" xml:"ModuleList"`
+	ModuleUpdated         bool          `json:"ModuleUpdated" xml:"ModuleUpdated"`
+	ParentId              int           `json:"ParentId" xml:"ParentId"`
+	Priority              string        `json:"Priority" xml:"Priority"`
+	PriorityId            int           `json:"PriorityId" xml:"PriorityId"`
+	ProjectIds            string        `json:"ProjectIds" xml:"ProjectIds"`
+	RecordChangeLog       bool          `json:"RecordChangeLog" xml:"RecordChangeLog"`
+	RegionId              int           `json:"RegionId" xml:"RegionId"`
+	RelatedAKProjectGuids string        `json:"RelatedAKProjectGuids" xml:"RelatedAKProjectGuids"`
+	RelatedAKProjectIds   string        `json:"RelatedAKProjectIds" xml:"RelatedAKProjectIds"`
+	RelatedUserIds        string        `json:"RelatedUserIds" xml:"RelatedUserIds"`
+	SendWangwang          bool          `json:"SendWangwang" xml:"SendWangwang"`
+	SeriousLevel          string        `json:"SeriousLevel" xml:"SeriousLevel"`
+	SeriousLevelId        int           `json:"SeriousLevelId" xml:"SeriousLevelId"`
+	SkipCollab            bool          `json:"SkipCollab" xml:"SkipCollab"`
+	Stamp                 string        `json:"Stamp" xml:"Stamp"`
+	Status                string        `json:"Status" xml:"Status"`
+	StatusId              int           `json:"StatusId" xml:"StatusId"`
+	StatusStage           int           `json:"StatusStage" xml:"StatusStage"`
+	Subject               string        `json:"Subject" xml:"Subject"`
+	TagIdList             string        `json:"TagIdList" xml:"TagIdList"`
+	TemplateId            int           `json:"TemplateId" xml:"TemplateId"`
+	TrackerIds            string        `json:"TrackerIds" xml:"TrackerIds"`
+	Trackers              string        `json:"Trackers" xml:"Trackers"`
+	UpdateStatusAt        int64         `json:"UpdateStatusAt" xml:"UpdateStatusAt"`
+	UpdatedAt             int64         `json:"UpdatedAt" xml:"UpdatedAt"`
+	User                  string        `json:"User" xml:"User"`
+	UserId                int           `json:"UserId" xml:"UserId"`
+	UserStaffId           string        `json:"UserStaffId" xml:"UserStaffId"`
+	Verifier              string        `json:"Verifier" xml:"Verifier"`
+	VerifierId            int           `json:"VerifierId" xml:"VerifierId"`
+	VerifierStaffId       string        `json:"VerifierStaffId" xml:"VerifierStaffId"`
+	VersionIds            string        `json:"VersionIds" xml:"VersionIds"`
+	VersionList           string        `json:"VersionList" xml:"VersionList"`
+	Watched               bool          `json:"Watched" xml:"Watched"`
+	CfsList               []CfsListItem `json:"CfsList" xml:"CfsList"`
+}

+ 21 - 0
services/rdc/struct_data_in_search_projects_by_region.go

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

+ 21 - 0
services/rdc/struct_data_in_search_workitem.go

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

+ 21 - 0
services/rdc/struct_data_in_search_workitem_with_total_count.go

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

+ 123 - 0
services/rdc/struct_data_item.go

@@ -0,0 +1,123 @@
+package rdc
+
+//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.
+
+// DataItem is a nested struct in rdc response
+type DataItem struct {
+	User                  string      `json:"User" xml:"User"`
+	VerifierId            int         `json:"VerifierId" xml:"VerifierId"`
+	PossibleValues        string      `json:"PossibleValues" xml:"PossibleValues"`
+	UserId                int         `json:"UserId" xml:"UserId"`
+	PriorityId            int         `json:"PriorityId" xml:"PriorityId"`
+	AttachmentIds         string      `json:"AttachmentIds" xml:"AttachmentIds"`
+	ProjectIds            string      `json:"ProjectIds" xml:"ProjectIds"`
+	FieldFormat           string      `json:"FieldFormat" xml:"FieldFormat"`
+	LogicalStatus         string      `json:"LogicalStatus" xml:"LogicalStatus"`
+	Source                string      `json:"Source" xml:"Source"`
+	SkipCollab            bool        `json:"SkipCollab" xml:"SkipCollab"`
+	Attachmented          bool        `json:"Attachmented" xml:"Attachmented"`
+	IgnoreCheck           bool        `json:"IgnoreCheck" xml:"IgnoreCheck"`
+	AkPaths               string      `json:"AkPaths" xml:"AkPaths"`
+	LinePath              string      `json:"LinePath" xml:"LinePath"`
+	Watched               bool        `json:"Watched" xml:"Watched"`
+	VersionId             int         `json:"VersionId" xml:"VersionId"`
+	StatusId              int         `json:"StatusId" xml:"StatusId"`
+	PropertyType          string      `json:"PropertyType" xml:"PropertyType"`
+	Type                  string      `json:"Type" xml:"Type"`
+	CommentList           string      `json:"CommentList" xml:"CommentList"`
+	CreatedAt             int64       `json:"CreatedAt" xml:"CreatedAt"`
+	DefaultValue          string      `json:"DefaultValue" xml:"DefaultValue"`
+	RecordChangeLog       bool        `json:"RecordChangeLog" xml:"RecordChangeLog"`
+	AkVersionIds          string      `json:"AkVersionIds" xml:"AkVersionIds"`
+	MinLength             int         `json:"MinLength" xml:"MinLength"`
+	Other                 string      `json:"Other" xml:"Other"`
+	TrackerIds            string      `json:"TrackerIds" xml:"TrackerIds"`
+	AoneType              string      `json:"AoneType" xml:"AoneType"`
+	RelatedAKProjectGuids string      `json:"RelatedAKProjectGuids" xml:"RelatedAKProjectGuids"`
+	Scope                 int         `json:"Scope" xml:"Scope"`
+	ModuleList            string      `json:"ModuleList" xml:"ModuleList"`
+	AssignedTo            string      `json:"AssignedTo" xml:"AssignedTo"`
+	OldValue              string      `json:"OldValue" xml:"OldValue"`
+	BlackListNotice       string      `json:"BlackListNotice" xml:"BlackListNotice"`
+	TargetId              int         `json:"TargetId" xml:"TargetId"`
+	Status                string      `json:"Status" xml:"Status"`
+	AttachmentList        string      `json:"AttachmentList" xml:"AttachmentList"`
+	IssueTypeId           int         `json:"IssueTypeId" xml:"IssueTypeId"`
+	Name                  string      `json:"Name" xml:"Name"`
+	Dynamic               bool        `json:"Dynamic" xml:"Dynamic"`
+	TemplateId            int         `json:"TemplateId" xml:"TemplateId"`
+	VerifierStaffId       string      `json:"VerifierStaffId" xml:"VerifierStaffId"`
+	RelatedUserIds        string      `json:"RelatedUserIds" xml:"RelatedUserIds"`
+	DevDuration           int         `json:"DevDuration" xml:"DevDuration"`
+	FullName              string      `json:"FullName" xml:"FullName"`
+	CommitDate            int64       `json:"CommitDate" xml:"CommitDate"`
+	WatcherIdList         string      `json:"WatcherIdList" xml:"WatcherIdList"`
+	PropertyKey           string      `json:"PropertyKey" xml:"PropertyKey"`
+	SendWangwang          bool        `json:"SendWangwang" xml:"SendWangwang"`
+	Id                    int         `json:"Id" xml:"Id"`
+	SeriousLevel          string      `json:"SeriousLevel" xml:"SeriousLevel"`
+	SprintId              int         `json:"SprintId" xml:"SprintId"`
+	AssignedToIdList      string      `json:"AssignedToIdList" xml:"AssignedToIdList"`
+	SeriousLevelId        int         `json:"SeriousLevelId" xml:"SeriousLevelId"`
+	ParentId              int         `json:"ParentId" xml:"ParentId"`
+	IdPath                string      `json:"IdPath" xml:"IdPath"`
+	ModuleUpdated         bool        `json:"ModuleUpdated" xml:"ModuleUpdated"`
+	Identifier            string      `json:"Identifier" xml:"Identifier"`
+	UserStaffId           string      `json:"UserStaffId" xml:"UserStaffId"`
+	FixedUserId           int         `json:"FixedUserId" xml:"FixedUserId"`
+	VersionList           string      `json:"VersionList" xml:"VersionList"`
+	AssignedToId          int         `json:"AssignedToId" xml:"AssignedToId"`
+	RespondDuration       int         `json:"RespondDuration" xml:"RespondDuration"`
+	TargetType            string      `json:"TargetType" xml:"TargetType"`
+	IsDelete              bool        `json:"IsDelete" xml:"IsDelete"`
+	StatusStage           int         `json:"StatusStage" xml:"StatusStage"`
+	Editable              bool        `json:"Editable" xml:"Editable"`
+	ModuleIds             string      `json:"ModuleIds" xml:"ModuleIds"`
+	AkProjectId           int         `json:"AkProjectId" xml:"AkProjectId"`
+	SourceId              int         `json:"SourceId" xml:"SourceId"`
+	ChangeLogList         string      `json:"ChangeLogList" xml:"ChangeLogList"`
+	MaxLength             int         `json:"MaxLength" xml:"MaxLength"`
+	IsRemember            bool        `json:"IsRemember" xml:"IsRemember"`
+	RelatedAKProjectIds   string      `json:"RelatedAKProjectIds" xml:"RelatedAKProjectIds"`
+	FixedDuration         int         `json:"FixedDuration" xml:"FixedDuration"`
+	VersionIds            string      `json:"VersionIds" xml:"VersionIds"`
+	IssueRelations        string      `json:"IssueRelations" xml:"IssueRelations"`
+	Stamp                 string      `json:"Stamp" xml:"Stamp"`
+	ProjectId             int         `json:"ProjectId" xml:"ProjectId"`
+	NameI18N              string      `json:"NameI18N" xml:"NameI18N"`
+	Region                string      `json:"Region" xml:"Region"`
+	IgnoreIntegrate       bool        `json:"IgnoreIntegrate" xml:"IgnoreIntegrate"`
+	Verifier              string      `json:"Verifier" xml:"Verifier"`
+	AssignedToIds         string      `json:"AssignedToIds" xml:"AssignedToIds"`
+	Mode                  string      `json:"Mode" xml:"Mode"`
+	Subject               string      `json:"Subject" xml:"Subject"`
+	IsRequired            bool        `json:"IsRequired" xml:"IsRequired"`
+	TestsuiteId           int         `json:"TestsuiteId" xml:"TestsuiteId"`
+	UpdatedAt             int64       `json:"UpdatedAt" xml:"UpdatedAt"`
+	AssignedToStaffId     string      `json:"AssignedToStaffId" xml:"AssignedToStaffId"`
+	Description           string      `json:"Description" xml:"Description"`
+	ClosedDuration        int         `json:"ClosedDuration" xml:"ClosedDuration"`
+	ScopeUserIds          string      `json:"ScopeUserIds" xml:"ScopeUserIds"`
+	Priority              string      `json:"Priority" xml:"Priority"`
+	AoneId                int         `json:"AoneId" xml:"AoneId"`
+	Trackers              string      `json:"Trackers" xml:"Trackers"`
+	Solution              int         `json:"Solution" xml:"Solution"`
+	NewValue              string      `json:"NewValue" xml:"NewValue"`
+	TagIdList             string      `json:"TagIdList" xml:"TagIdList"`
+	Icons                 []string    `json:"Icons" xml:"Icons"`
+	CustomFieldMap        []string    `json:"CustomFieldMap" xml:"CustomFieldMap"`
+	Users                 []UsersItem `json:"Users" xml:"Users"`
+}

+ 26 - 0
services/rdc/struct_dingtalk_user.go

@@ -0,0 +1,26 @@
+package rdc
+
+//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.
+
+// DingtalkUser is a nested struct in rdc response
+type DingtalkUser struct {
+	Id             int    `json:"Id" xml:"Id"`
+	DingtalkUserId int    `json:"DingtalkUserId" xml:"DingtalkUserId"`
+	CodeUserName   string `json:"CodeUserName" xml:"CodeUserName"`
+	UnionId        string `json:"UnionId" xml:"UnionId"`
+	Nick           string `json:"Nick" xml:"Nick"`
+	DingId         string `json:"DingId" xml:"DingId"`
+}

+ 21 - 0
services/rdc/struct_icons.go

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

+ 29 - 0
services/rdc/struct_user_profile_dto.go

@@ -0,0 +1,29 @@
+package rdc
+
+//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.
+
+// UserProfileDTO is a nested struct in rdc response
+type UserProfileDTO struct {
+	Name        string `json:"Name" xml:"Name"`
+	EnglishName string `json:"EnglishName" xml:"EnglishName"`
+	Avatar      string `json:"Avatar" xml:"Avatar"`
+	Mobile      string `json:"Mobile" xml:"Mobile"`
+	Email       string `json:"Email" xml:"Email"`
+	NickName    string `json:"NickName" xml:"NickName"`
+	UserId      int    `json:"UserId" xml:"UserId"`
+	DataSource  string `json:"DataSource" xml:"DataSource"`
+	CreatedAt   int64  `json:"CreatedAt" xml:"CreatedAt"`
+}

+ 21 - 0
services/rdc/struct_users.go

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

+ 26 - 0
services/rdc/struct_users_item.go

@@ -0,0 +1,26 @@
+package rdc
+
+//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.
+
+// UsersItem is a nested struct in rdc response
+type UsersItem struct {
+	Id       int    `json:"Id" xml:"Id"`
+	StaffId  string `json:"StaffId" xml:"StaffId"`
+	RealName string `json:"RealName" xml:"RealName"`
+	NickName string `json:"NickName" xml:"NickName"`
+	Avatar   string `json:"Avatar" xml:"Avatar"`
+	Email    string `json:"Email" xml:"Email"`
+}

+ 107 - 0
services/rdc/sync_user_to_rdc.go

@@ -0,0 +1,107 @@
+package rdc
+
+//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"
+)
+
+// SyncUserToRdc invokes the rdc.SyncUserToRdc API synchronously
+// api document: https://help.aliyun.com/api/rdc/syncusertordc.html
+func (client *Client) SyncUserToRdc(request *SyncUserToRdcRequest) (response *SyncUserToRdcResponse, err error) {
+	response = CreateSyncUserToRdcResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// SyncUserToRdcWithChan invokes the rdc.SyncUserToRdc API asynchronously
+// api document: https://help.aliyun.com/api/rdc/syncusertordc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SyncUserToRdcWithChan(request *SyncUserToRdcRequest) (<-chan *SyncUserToRdcResponse, <-chan error) {
+	responseChan := make(chan *SyncUserToRdcResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.SyncUserToRdc(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// SyncUserToRdcWithCallback invokes the rdc.SyncUserToRdc API asynchronously
+// api document: https://help.aliyun.com/api/rdc/syncusertordc.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) SyncUserToRdcWithCallback(request *SyncUserToRdcRequest, callback func(response *SyncUserToRdcResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *SyncUserToRdcResponse
+		var err error
+		defer close(result)
+		response, err = client.SyncUserToRdc(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// SyncUserToRdcRequest is the request struct for api SyncUserToRdc
+type SyncUserToRdcRequest struct {
+	*requests.RpcRequest
+	LoginTicket string `position:"Body" name:"LoginTicket"`
+}
+
+// SyncUserToRdcResponse is the response struct for api SyncUserToRdc
+type SyncUserToRdcResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Code      int    `json:"Code" xml:"Code"`
+	Message   string `json:"Message" xml:"Message"`
+	Data      Data   `json:"Data" xml:"Data"`
+}
+
+// CreateSyncUserToRdcRequest creates a request to invoke SyncUserToRdc API
+func CreateSyncUserToRdcRequest() (request *SyncUserToRdcRequest) {
+	request = &SyncUserToRdcRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "SyncUserToRdc", "rdc", "openAPI")
+	return
+}
+
+// CreateSyncUserToRdcResponse creates a response to parse from SyncUserToRdc response
+func CreateSyncUserToRdcResponse() (response *SyncUserToRdcResponse) {
+	response = &SyncUserToRdcResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 123 - 0
services/rdc/update_workitem.go

@@ -0,0 +1,123 @@
+package rdc
+
+//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"
+)
+
+// UpdateWorkitem invokes the rdc.UpdateWorkitem API synchronously
+// api document: https://help.aliyun.com/api/rdc/updateworkitem.html
+func (client *Client) UpdateWorkitem(request *UpdateWorkitemRequest) (response *UpdateWorkitemResponse, err error) {
+	response = CreateUpdateWorkitemResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// UpdateWorkitemWithChan invokes the rdc.UpdateWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/updateworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateWorkitemWithChan(request *UpdateWorkitemRequest) (<-chan *UpdateWorkitemResponse, <-chan error) {
+	responseChan := make(chan *UpdateWorkitemResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.UpdateWorkitem(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// UpdateWorkitemWithCallback invokes the rdc.UpdateWorkitem API asynchronously
+// api document: https://help.aliyun.com/api/rdc/updateworkitem.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) UpdateWorkitemWithCallback(request *UpdateWorkitemRequest, callback func(response *UpdateWorkitemResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *UpdateWorkitemResponse
+		var err error
+		defer close(result)
+		response, err = client.UpdateWorkitem(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// UpdateWorkitemRequest is the request struct for api UpdateWorkitem
+type UpdateWorkitemRequest struct {
+	*requests.RpcRequest
+	IssueId        requests.Integer `position:"Body" name:"IssueId"`
+	Subject        string           `position:"Body" name:"Subject"`
+	Modifier       string           `position:"Body" name:"Modifier"`
+	SeriousLevel   string           `position:"Body" name:"SeriousLevel"`
+	AKProjectId    requests.Integer `position:"Body" name:"AKProjectId"`
+	Description    string           `position:"Body" name:"Description"`
+	Stamp          string           `position:"Body" name:"Stamp"`
+	TemplateId     requests.Integer `position:"Body" name:"TemplateId"`
+	Priority       string           `position:"Body" name:"Priority"`
+	AssignedTo     string           `position:"Body" name:"AssignedTo"`
+	SprintId       requests.Integer `position:"Body" name:"SprintId"`
+	IgnoreCheck    requests.Boolean `position:"Body" name:"IgnoreCheck"`
+	Cfs            string           `position:"Body" name:"Cfs"`
+	CorpIdentifier string           `position:"Query" name:"CorpIdentifier"`
+	Verifier       string           `position:"Body" name:"Verifier"`
+	CfList         string           `position:"Body" name:"CfList"`
+	Status         string           `position:"Body" name:"Status"`
+}
+
+// UpdateWorkitemResponse is the response struct for api UpdateWorkitem
+type UpdateWorkitemResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	Data      bool   `json:"Data" xml:"Data"`
+	Success   bool   `json:"Success" xml:"Success"`
+	Message   string `json:"Message" xml:"Message"`
+}
+
+// CreateUpdateWorkitemRequest creates a request to invoke UpdateWorkitem API
+func CreateUpdateWorkitemRequest() (request *UpdateWorkitemRequest) {
+	request = &UpdateWorkitemRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("Rdc", "2018-08-21", "UpdateWorkitem", "rdc", "openAPI")
+	return
+}
+
+// CreateUpdateWorkitemResponse creates a response to parse from UpdateWorkitem response
+func CreateUpdateWorkitemResponse() (response *UpdateWorkitemResponse) {
+	response = &UpdateWorkitemResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}