Published at: 2025-10-30

1.3 [ShareCRM Task OA] Huawei WeLink Integration Case Study


Information Required from the Account
Reference: https://open.welink.huaweicloud.com/docs/#/990hh0/whokyc/eatdqi

API Call Information
Application clientId:
Application clientSecret:

Step 1: Result Format Configuration

picture coming soon:

Step 2: Account Binding

picture coming soon:

Step 3: To-Do Configuration

  1. Add To-Do Settings
    API Endpoint: https://open.welink.huaweicloud.com/api/todo/v3/addtask
    API Type: POST
    Body Parameters:

json { "taskId": "#F012_#F001", "taskTitle": "#F056\nDocument No.: #F053\nSubmitter: #F054", "userId": "#F001", "detailsUrl": "https://www.fxiaoke.com/erp/syncdata/open/oa/authorize/common/#F028/#F037/#F015/true?code=$(code)", "detailsUrlPc": "https://www.fxiaoke.com/erp/syncdata/open/oa/authorize/common/#F028/#F037/#F015/false?code=$(code)", "appName": "CRM", "applicantUserId": "#F049", "isMsg": 1, "isShowApplicantUserName": true, "applicantId": "#F012", "businessCode": "" }

picture coming soon:

  1. Edit To-Do Settings
    API Endpoint: https://open.welink.huaweicloud.com/api/todo/v1/deltask
    API Type: PUT
    Body Parameters:

json { "taskId": "#F012_#F001", "userId": "#F001" }

picture coming soon:

  1. Delete To-Do Settings
    API Endpoint: https://open.welink.huaweicloud.com/api/todo/v1/deltask
    API Type: DELETE
    Body Parameters:

json { "taskId": "#F012_#F001" }

picture coming soon:

Step 4: Configure To-Do Sync Function

picture coming soon:

Code Example (TODoAll__c):

```java /** * @author ShareCRM Shen Jiaqi * @codeName Integration_To-Do Request Processing * @description Integration_To-Do Request Processing * @createTime 2023-09-14 */ log.info(“syncArg:”+Fx.json.toJson(syncArg))

String requestDataStr = syncArg[“requestData”] as String Map<String,Object> requestData = Fx.json.parse(requestDataStr)

String urldata = syncArg[“url”] as String //Dynamic URL can be returned if(urldata.contains(“updatetask”) || urldata.contains(“deltask”)){ //Concatenate URL parameters urldata=”?” requestData.each{ String k,Object v -> urldata=urldata+k+”=”+v+”&” } urldata=urldata.substring(0,urldata.length()-1) log.info(“urldata:”+urldata) requestDataStr=null }

Map header = [:] String access_token = WeLinkUtils.getAccessToken(null) header.put(“Accept-Charset”,”UTF-8’”) header.put(“Content-Type”,”application/json”) header.put(“x-wlk-Authorization”,access_token) return [“header”:header,”url”:urldata,”requestData”:requestDataStr] ```

Step 5: Configure SSO Authentication URL Function

picture coming soon:

Code Example (sync_ssoFunction__c):

```java /** * @author ShareCRM Shen Jiaqi * @codeName Integration_To-Do SSO Redirect * @description To-Do SSO Redirect * @createTime 2023-09-14 */ String url = syncArg[“oaConnectParam”][“ssoAuthUrl”] as String; log.info(“url:”+url) String code = syncArg[“params”][“requestParams”][“code”] as String; log.info(“code:”+code);

String userId = WeLinkUtils.getUserid(code) syncArg.put(“oaUser”,userId.trim()) //Fixed return key “oaUser” for third-party account log.info(“syncArg:”+Fx.json.toJson(syncArg)) return syncArg ```

Submit Feedback