1. 服务商相关接口

1.1. 服务商接口签名算法

API接口地址均采用统一的签名算法进行鉴权,具体的签名过程如下

/*PHP代码示例*/

$timestamp  = time();
$api_token  = 'mykey';
$salt  = 'party';
$channel_id = 3;

$signature= sha1($timestamp . $api_token .$salt . $channel_id);

api_token 注册服务商时生成,由第三方提供,参考 服务商注册

timestamp 单位为秒,从1970年1月1日至今的秒数

salt = party 代表拉取组织信息接口的签名

salt = auth 代表登录校验接口的签名

channel_id 渠道编号,参考 预分配信息表

接口需要自行根据此算法进行接口的鉴权。

1.2. 数据拉取协议

接口地址

/PARTY_API?data2pull=user, department

请求方式

POST

参数说明

参数 说明
seq 拉取序列号
signature 拉取签名 参考服务商接口签名算法
timestamp 时间戳(单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间
channel_id 服务商ID (云助手提供) 详见预分配信息表
channel_code 异构系统租户code(在云助手新增组织时填入)

返回值格式 成功

{
    "errcode": 0,
    "new_seq": "新的序列号",
    "data": "新增、修改的信息(data域)",
    "data_del": "需要删除的信息guid(data_del域)",
    "is_complete": 0
}

失败

{
    "errcode": "1001",
    "errmsg": "code对应的错误描述的备注信息"
}

返回参数说明

参数 说明
new_seq 新的序列号,当is_complete为0时,会使用新的seq再次拉取数据
is_complete 数据拉取是否完成,0:未完成 1 已完成,所有数据拉取完毕

备注

  • 1001:签名校验失败
  • 1002:不合法的channel_code
  • 1003:不合法的拉取对象
  • 1004:时间戳失效
  • 1005:access_token不合法

1.3. 组织架构获取接口

接口地址

/PARTY_API?data2pull=department

请求格式示范

参数 说明
seq 拉取序列号
signature 拉取签名
timestamp 时间戳(单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间
channel_id 服务商ID (云助手提供) 详见预分配信息表
channel_code 异构系统租户code(在云助手新增组织时填入)

返回格式示范

{
    "errcode": 0,
    "new_seq": "",
    "data": [
        {
            "dept_guid": "b8c961df-f188-82d6-96ee-e3973e909e26",
            "dept_name": "采购助手",
            "parent_guid": "",
            "sort": 0,
            "is_company": 0,
            "is_end_company": 0
        }
    ],
    "data_del": [],
    "is_complete": 1
}

返回参数说明

参数 说明
dept_guid 部门第三方组织唯一标识
dept_name 用户第三方组织名称
parent_guid 部门父部门ID(根部门,此字段为空)
sort 层级排序 ,升序排列,可选
is_company 是否公司,可选
is_end_company 是否末级公司,可选

1.4. 用户获取接口

接口地址

/PARTY_API?data2pull=user

请求格式示范

参数说明

参数 说明
seq 拉取序列号
signature 拉取签名
timestamp 时间戳(单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间
channel_id 服务商ID (云助手提供) 详见预分配信息表
channel_code 异构系统租户code(在云助手新增组织时填入)

返回格式示范

{
    "errcode": 0,
    "new_seq": "",
    "data": [
        {
            "user_name": "龙卫民",
            "user_code": "16100000001",
            "tel": "16100000001",
            "user_guid": "106700",
            "email": "123@123.com",
            "is_disabled": 1,
            "depts": [
                "b8c961df-f188-82d6-96ee-e3973e909e26"
            ]
        },
        {
            "user_name": "zyj账号06",
            "user_code": "16100000005",
            "tel": "16100000005",
            "user_guid": "221976",
            "email": "123@123.com",
            "is_disabled": 1,
            "depts": [
                "b8c961df-f188-82d6-96ee-e3973e909e26"
            ]
        },
        {
            "user_name": "denghs",
            "user_code": "16100000007",
            "tel": "16100000007",
            "user_guid": "222030",
            "email": "123@123.com",
            "is_disabled": 1,
            "depts": [
                "b8c961df-f188-82d6-96ee-e3973e909e26"
            ]
        },
        {
            "user_name": "测试黄喻",
            "user_code": "16100000009",
            "tel": "16100000009",
            "user_guid": "222062",
            "email": "123@123.com",
            "is_disabled": 0,
            "depts": [
                "b8c961df-f188-82d6-96ee-e3973e909e26"
            ]
        },
        {
            "user_name": "同步测试名字",
            "user_code": "16100000004",
            "tel": "16100000004",
            "user_guid": "222063",
            "email": "123@123.com",
            "is_disabled": 1,
            "depts": [
                "b8c961df-f188-82d6-96ee-e3973e909e26"
            ]
        }
    ],
    "data_del": ["b8c961df-f188-82d6-96ee-e3973e909e29"],
    "is_complete": 1
}

返回参数说明

参数 说明
user_guid 用户第三方组织唯一标识
user_code 用户第三方组织登录账号,可以是手机号
user_name 用户第三方组织显示名称
tel 用户手机号,可选
email 用户邮箱,可选
depts 用户所属部门GUID数组
is_disabled 用户是否禁用 0:启用 1:禁用

1.5. 推送用户和部门

此接口由云助手团队提供 接口地址

/api/tenant-open/third-party-push

请求格式示范

参数说明

参数 说明
action all,increment,(必填)all-代表全量拉取 increment-增量拉取,会根据上次的同步seq继续同步
signature 拉取签名(必填)
timestamp 时间戳(必填)(单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间
channel_id 服务商ID(必填) (云助手提供) 详见预分配信息表
channel_code 异构系统租户code(必填)(在云助手新增组织时填入)
notice_url 回调接口(选填),由第三方提供回调地址,在系统拉取完后会通知到此接口

返回格式示范

{
    "errcode": 0,
    "errmsg":"ok",
    "data": "已收到请求!",

}

1.6. notice_url推送回调接口返回数据结构

在用户设置了回调接口后,云助手服务器会在执行完拉取第三方通讯录后调用此接口,返回此接口执行结果

返回格式示范

{
  "channel_id": "7",
  "channel_code": "dev_fangl",
  "timestamp": "1525309650",
  "signature": "13bab3e0c8620adb7b3c1af9bd68b6970f10dda8",
  "result": "finish",
  "errcode":0
}  

{
  "channel_id": "7",
  "channel_code": "dev_fangl",
  "timestamp": "1525309650",
  "signature": "13bab3e0c8620adb7b3c1af9bd68b6970f10dda8",
  "result": "错误信息",
  "errcode":"错误码"
}

1.7. 创建第三方通讯录

此接口由云助手团队提供

此接口作用是可以在云助手租户外部联系人中创建一个通讯录,不会自动拉取组织架构和用户信息,如果需要拉取,则需要调用上面 推送用户和部门接口


接口地址

/api/tenant-open/create-party

请求格式示范

参数说明

参数 说明
corpid 云助手中的租户corpid
signature 拉取签名(必填)
timestamp 时间戳(必填)(单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间
channel_id 服务商ID(必填) (云助手提供) 详见预分配信息表
channel_code 异构系统租户code(必填)(在云助手新增组织时填入)
party_name 外部联系人中的组织名称 (必填)
show_in_yzs 是有在云助手通讯录中显示组织架构(选填),1-显示 0-不显示,默认为0即不显示
third_pwd_type 密码生成方式 1-账号相同 2-随机6位数字(选填)默认值为2即随机密码

返回格式示范

{
    "errcode": 0,
    "errmsg":"ok",
    "data": "已收到请求!",

}

2. 套件相关接口

2.1. 套件接口签名算法

API接口地址均采用统一的签名算法进行鉴权,具体的签名过程如下

/*PHP代码示例*/

$timestamp  = time();
$api_token  = 'mykey';
$salt  = 'suite-api-auth';

$signature= sha1($timestamp . $api_token .$salt);

api_token 注册套件时生成,由第三方提供,,参考 套件应用注册

timestamp 单位为秒,从1970年1月1日至今的秒数

salt = suite-api-auth 代表获取套件相关信息,如获取应用授权

接口需要自行根据此算法进行接口的鉴权。

2.2. 应用权限获取接口

接口地址(第三方提供)比如 http://bms.myfuwu.com.cn/m/DataApi/app/get-auth-apps

请求方式:

POST

请求格式示范

参数说明

字段名称 说明
tenant_code 异构系统租户code(在云助手新增组织时填入)
suite_id 套件ID(云助手提供) 详见预分配信息表
signature 签名,参考套件接口签名算法
timestamp 时间戳,单位为秒,从1970年1月1日至今的秒数),signature的生成也用到了这个时间

返回格式示范

{
    "success": 1,// 1 成功 0 失败
    "errmsg": "",
    "errcode": 0,
    "data": [
        {
            "app_code": "MobileCheckRoom",
            "auth_status": 1
        },
        {
            "app_code": "MobileCheckQuality",
            "auth_status": 1
        }
    ]
}

返回参数说明

参数 说明
app_code 第三方的应用code
auth_status 0:代表无权限,1:代表有权限

备注

  • 1001:签名校验失败
  • 1002:不合法的tenant_code
  • 1003:不合法的suite_id
  • 1004:时间戳失效

results matching ""

    No results matching ""