调用前提:
此接口仅在企业微信3.1.6及以后版本支持,微信端不支持(微信开发者工具也不支持),仅支持ios,android和win端调用
上下游相关参数仅企业微信3.1.20及以后版本支持,微信端不支持(微信开发者工具也不支持),仅支持ios和android
必须先调用过wx.qy.login,且session_key未过期,开发者可调用checkSession 检查当前登录态
打开企业互联/局校互联/上下游通讯录选人功能,仅返回应用可见范围内的成员和部门。
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| fromDepartmentId | Number | 是 | 表示打开的通讯录从指定的部门开始展示,-1表示打开的通讯录从自己所在部门开始展示, 0表示从最上层开始。移动端,当需要展开的部门不在应用可见范围内,则从应用的可见范围开始展开。 |
| mode | String | 是 | 选择模式,"single"表示单选,"multi"表示多选 |
| type | Array | 是 | 选择限制类型,指定"department"、"user"中的一个或者多个 |
| selectedDepartmentIds | Array | 否 | 已选部门ID列表。用于多次选人时可重入 |
| selectedUserIds | Array | 否 | 已选用户ID列表,仅自建应用使用,企业微信会忽略第三方应用填入的该字段。用于多次选人时可重入 |
| selectedOpenUserIds | Array | 否 | 已选用户ID列表,仅第三方应用使用,企业微信会忽略自建应用填入的该字段。用于多次选人时可重入 |
| selectedCorpGroupDepartmentIds | Array | 否 | 已选企业互联部门ID列表。用于多次选人时可重入 |
| selectedCorpGroupDepartmentIds.corpId | String | 是 | 已选企业互联的CorpId |
| selectedCorpGroupDepartmentIds.departmentId | String | 是 | 已选企业互联的部门ID |
| selectedCorpGroupUserIds | Array | 否 | 已选企业互联用户ID列表。用于多次选人时可重入 |
| selectedCorpGroupUserIds.corpId | String | 是 | 已选企业互联的CorpId |
| selectedCorpGroupUserIds.userId | String | 是 | 已选企业互联的用户userId,自建应用必填,企业微信会忽略第三方应用填入的该字段 |
| selectedCorpGroupUserIds.openUserId | String | 是 | 已选企业互联的用户openUserId,第三方应用必填,企业微信会忽略自建应用填入的该字段。 |
| selectedChainDepartmentIds | Array | 否 | 已选上下游部门ID列表。用于多次选人时可重入 |
| selectedChainDepartmentIds.corpId | String | 是 | 已选上下游的CorpId |
| selectedChainDepartmentIds.departmentId | String | 是 | 已选上下游的部门ID |
| selectedChainUserIds | Array | 否 | 已选上下游用户ID列表。用于多次选人时可重入 |
| selectedChainUserIds.corpId | String | 是 | 已选上下游的CorpId |
| selectedChainUserIds.userId | String | 是 | 已选上下游的用户userId,自建应用必填,企业微信会忽略第三方应用填入的该字段 |
| selectedChainUserIds.openUserId | String | 是 | 已选上下游的用户openUserId,第三方应用必填,企业微信会忽略自建应用填入的该字段。 |
| success | Function | 否 | 接口调用成功的回调函数 |
| fail | Function | 否 | 接口调用失败的回调函数 |
| complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
参数
Object res.result
| 参数 | 类型 | 说明 |
|---|---|---|
| departmentList | Array | 已选的部门列表 |
| departmentList.id | String | 已选的部门Id |
| userList | Array | 已选的成员列表 |
| userList.id | String | 已选的成员userId, 仅自建应用返回 |
| userList.openUserId | String | 已选的成员userId, 仅第三方应用返回 |
| corpGroupDepartmentList | Array | 已选企业互联部门ID列表 |
| corpGroupDepartmentList.corpId | String | 已选企业互联企业corpId |
| corpGroupDepartmentList.id | String | 已选企业互联企业部门Id |
| corpGroupUserList | Array | 已选企业互联用户ID列表 |
| corpGroupUserList.corpId | String | 已选企业互联企业corpId |
| corpGroupUserList.id | String | 已选企业互联企业成员userId, 仅自建应用返回 |
| corpGroupUserList.openUserId | String | 已选企业互联企业成员openUserId,仅第三方应用使用返回 |
| chainDepartmentList | Array | 已选上下游部门ID列表 |
| chainDepartmentList.corpId | String | 已选上下游企业corpId |
| chainDepartmentList.id | String | 已选上下游企业部门Id |
| chainUserList | Array | 已选上下游联用户ID列表 |
| chainUserList.corpId | String | 已选上下游企业corpId |
| chainUserList.id | String | 已选上下游企业成员userId, 仅自建应用返回 |
| chainList.openUserId | String | 已选上下游企业成员openUserId,仅第三方应用使用返回 |
Object res.errMsg
| 参数 | 说明 |
|---|---|
| selectCorpGroupContact:ok | 执行成功 |
| selectCorpGroupContact:fail no permission | 必须先调用过wx.qy.login,且session_key未过期 |
wx.qy.selectCorpGroupContact({
fromDepartmentId: -1,// 必填,-1表示打开的通讯录从自己所在部门开始展示, 0表示从最上层开始
mode: "single",// 必填,选择模式,single表示单选,multi表示多选
type: ["department", "user"],// 必填,选择限制类型,指定department、user中的一个或者多个
selectedDepartmentIds: ["2","3"],// 非必填,已选部门ID列表。用于多次选人时可重入
selectedUserIds: ["lisi","lisi2"],// 非必填,仅自建应用使用,第三方应用会忽略该字段,已选用户ID列表。用于多次选人时可重入
selectedOpenUserIds: ["wabc3","wbcde"],// 非必填,仅第三方应用使用,自建应用会忽略该字段,已选用户ID列表。用于多次选人时可重入
selectedChainDepartmentIds: [ // 非必填,已选上下游部门ID列表。用于多次选人时可重入
{
corpId:"ww3333", // 企业CORPID
departmentId:"2" // 部门ID
},
{
corpId:"ww4444", // 企业CORPID
departmentId:"3" // 部门ID
}
],
selectedChainUserIds: [ // 非必填,已选上下游用户ID列表。用于多次选人时可重入
{
corpId:"ww3333", // 企业CORPID
userId:"userid123", // 成员ID,仅自建应用返回
openUserId:"wx1111" // 成员OPEN_USERID,仅第三方应用返回
},
{
corpId:"ww4444", // 企业CORPID
userId:"userid123", // 成员ID,仅自建应用返回
openUserId:"wx1111" // 成员OPEN_USERID,仅第三方应用返回
}
],
selectedCorpGroupDepartmentIds: [ // 非必填,已选企业互联部门ID列表。用于多次选人时可重入
{
corpId:"ww3333", // 企业CORPID
departmentId:"2" // 部门ID
},
{
corpId:"ww4444", // 企业CORPID
departmentId:"3" // 部门ID
}
],
selectedCorpGroupUserIds: [ // 非必填,已选企业互联用户ID列表。用于多次选人时可重入
{
corpId:"ww3333", // 企业CORPID
userId:"userid123", // 成员ID,仅自建应用返回
openUserId:"wx1111" // 成员OPEN_USERID,仅第三方应用返回
},
{
corpId:"ww4444", // 企业CORPID
userId:"userid123", // 成员ID,仅自建应用返回
openUserId:"wx1111" // 成员OPEN_USERID,仅第三方应用返回
}
],
success: function(res) {
var selectedDepartmentList = res.result.departmentList;// 已选的部门列表
for (var i = 0; i < selectedDepartmentList.length; i++)
{
var department = selectedDepartmentList[i];
var departmentId = department.id;// 已选的单个部门ID
}
var selectedUserList = res.result.userList; // 已选的成员列表
for (var i = 0; i < selectedUserList.length; i++)
{
var user = selectedUserList[i];
var userid = user.id; // 已选的单个成员ID,仅自建应用返回
var openUserId = user.openUserId; // 已选的单个成员ID,仅第三方应用返回
}
var selectedCorpGroupDepartmentList = res.result.corpGroupDepartmentList;// 已选的部门列表
for (var i = 0; i < selectedCorpGroupDepartmentList.length; i++)
{
var corpGroupDepartment = selectedCorpGroupDepartmentList[i];
var corpId = corpGroupDepartment.corpId; // 企业CORPID
var departmentId = corpGroupDepartment.id;// 已选的单个部门ID
}
var selectedCorpGroupUserList = res.result.corpGroupUserList; // 已选的已选企业互联成员列表
for (var i = 0; i < selectedGroupUserList.length; i++)
{
var corpGroupUser = selectedCorpGroupUserList[i];
var corpId = corpGroupUser.corpId; // 企业CORPID
var userId = corpGroupUser.id; // 已选的单个成员ID,仅自建应用返回
var openUserId = corpGroupUser.openUserId; // 已选的单个成员ID,仅第三方应用返回
}
var selectedChainDepartmentList = res.result.chainDepartmentList;// 已选的部门列表
for (var i = 0; i < selectedChainDepartmentList.length; i++)
{
var chainDepartment = selectedChainDepartmentList[i];
var corpId = chainDepartment.corpId; // 企业CORPID
var departmentId = chainDepartment.id;// 已选的单个部门ID
}
var selectedChainUserList = res.result.chainUserList; // 已选的已选企业互联成员列表
for (var i = 0; i < selectedCorpGroupUserList.length; i++)
{
var chainUser = selectedCorpGroupUserList[i];
var corpId = chainUser.corpId; // 企业CORPID
var userId = chainUser.id; // 已选的单个成员ID,仅自建应用返回
var openUserId = chainUser.openUserId; // 已选的单个成员ID,仅第三方应用返回
}
}
});
注:自建应用调用该接口时userid返回的是企业内部的userid,对于服务商返回的是openUserId,同一个服务商,不同应用获取到企业内同一个成员的open_userid是相同的,最多64个字节。
