// This file is auto-generated, don't edit it /** */ import Util, * as $Util from '@alicloud/tea-util'; import GatewayClient from '@alicloud/gateway-dingtalk'; import OpenApi, * as $OpenApi from '@alicloud/openapi-client'; import OpenApiUtil from '@alicloud/openapi-util'; import * as $tea from '@alicloud/tea-typescript'; export class GetRelationUkSettingHeaders extends $tea.Model { commonHeaders?: { [key: string]: string }; xAcsDingtalkAccessToken?: string; static names(): { [key: string]: string } { return { commonHeaders: 'commonHeaders', xAcsDingtalkAccessToken: 'x-acs-dingtalk-access-token', }; } static types(): { [key: string]: any } { return { commonHeaders: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' }, xAcsDingtalkAccessToken: 'string', }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingRequest extends $tea.Model { /** * @remarks * This parameter is required. * * @example * crm_customer */ relationType?: string; static names(): { [key: string]: string } { return { relationType: 'relationType', }; } static types(): { [key: string]: any } { return { relationType: 'string', }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingResponseBody extends $tea.Model { result?: GetRelationUkSettingResponseBodyResult; static names(): { [key: string]: string } { return { result: 'result', }; } static types(): { [key: string]: any } { return { result: GetRelationUkSettingResponseBodyResult, }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingResponse extends $tea.Model { headers?: { [key: string]: string }; statusCode?: number; body?: GetRelationUkSettingResponseBody; static names(): { [key: string]: string } { return { headers: 'headers', statusCode: 'statusCode', body: 'body', }; } static types(): { [key: string]: any } { return { headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' }, statusCode: 'number', body: GetRelationUkSettingResponseBody, }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingResponseBodyResultFormUkSettingsFieldList extends $tea.Model { bizAlias?: string; fieldId?: string; static names(): { [key: string]: string } { return { bizAlias: 'bizAlias', fieldId: 'fieldId', }; } static types(): { [key: string]: any } { return { bizAlias: 'string', fieldId: 'string', }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingResponseBodyResultFormUkSettings extends $tea.Model { fieldList?: GetRelationUkSettingResponseBodyResultFormUkSettingsFieldList[]; static names(): { [key: string]: string } { return { fieldList: 'fieldList', }; } static types(): { [key: string]: any } { return { fieldList: { 'type': 'array', 'itemType': GetRelationUkSettingResponseBodyResultFormUkSettingsFieldList }, }; } constructor(map?: { [key: string]: any }) { super(map); } } export class GetRelationUkSettingResponseBodyResult extends $tea.Model { formUkSettings?: GetRelationUkSettingResponseBodyResultFormUkSettings[]; headerFieldIds?: string[]; static names(): { [key: string]: string } { return { formUkSettings: 'formUkSettings', headerFieldIds: 'headerFieldIds', }; } static types(): { [key: string]: any } { return { formUkSettings: { 'type': 'array', 'itemType': GetRelationUkSettingResponseBodyResultFormUkSettings }, headerFieldIds: { 'type': 'array', 'itemType': 'string' }, }; } constructor(map?: { [key: string]: any }) { super(map); } } export default class Client extends OpenApi { constructor(config: $OpenApi.Config) { super(config); let gatewayClient = new GatewayClient(); this._spi = gatewayClient; this._endpointRule = ""; if (Util.empty(this._endpoint)) { this._endpoint = "api.dingtalk.com"; } } /** * 获取关系数据查重规则 * * @param request - GetRelationUkSettingRequest * @param headers - GetRelationUkSettingHeaders * @param runtime - runtime options for this request RuntimeOptions * @returns GetRelationUkSettingResponse */ async getRelationUkSettingWithOptions(request: GetRelationUkSettingRequest, headers: GetRelationUkSettingHeaders, runtime: $Util.RuntimeOptions): Promise { Util.validateModel(request); let query : {[key: string ]: any} = { }; if (!Util.isUnset(request.relationType)) { query["relationType"] = request.relationType; } let realHeaders : {[key: string ]: string} = { }; if (!Util.isUnset(headers.commonHeaders)) { realHeaders = headers.commonHeaders; } if (!Util.isUnset(headers.xAcsDingtalkAccessToken)) { realHeaders["x-acs-dingtalk-access-token"] = Util.toJSONString(headers.xAcsDingtalkAccessToken); } let req = new $OpenApi.OpenApiRequest({ headers: realHeaders, query: OpenApiUtil.query(query), }); let params = new $OpenApi.Params({ action: "GetRelationUkSetting", version: "crm_2.0", protocol: "HTTP", pathname: `/v2.0/crm/relationUkSettings`, method: "GET", authType: "AK", style: "ROA", reqBodyType: "none", bodyType: "json", }); return $tea.cast(await this.execute(params, req, runtime), new GetRelationUkSettingResponse({})); } /** * 获取关系数据查重规则 * * @param request - GetRelationUkSettingRequest * @returns GetRelationUkSettingResponse */ async getRelationUkSetting(request: GetRelationUkSettingRequest): Promise { let runtime = new $Util.RuntimeOptions({ }); let headers = new GetRelationUkSettingHeaders({ }); return await this.getRelationUkSettingWithOptions(request, headers, runtime); } }