用户的userId需要通过部门获取获取的接口方法如下
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/user/listid");
OapiUserListidRequest req = new OapiUserListidRequest();
req.setDeptId(100L);获取获取的用户所在的部门ID
OapiUserListidResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
返回的示例如下
{
"errcode": 0,
"errmsg":"ok",
"result": {
"userid_list": [
"usxxx",
"manager4xxx",
"10203029011xxxx",
"usexxx"
]
},
"request_id": "3naksldjh0dk"
}
返回的是当前部门下的所有用户的userId
获取设备ID的接口调用如下:
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/smartdevice/device/querylist");
OapiSmartdeviceDeviceQuerylistRequest req = new OapiSmartdeviceDeviceQuerylistRequest();
PageQueryVo pageQueryVo = new PageQueryVo();
pageQueryVo.setPk("pk_01");
pageQueryVo.setCursor(0L);
pageQueryVo.setSize(20L);
req.setPageQueryVo(pageQueryVo);
OapiSmartdeviceDeviceQuerylistResponse rsp = client.execute(req, access_token);
System.out.println(rsp.getBody());
返回结果如下:
{
"result": {
"next_cursor": 0,
"has_more": false,
"list": [
{
"nick": "ding",
"ext": "智能产品",
"device_mac": "11.11.11.11",
"device_name": "产品智能",
"device_id": "QWR45GT",
"pk": "pk_01",
"sn": "sdx123d123asdf",
"corp_id": "ding9f5xxxx",
"userid": "user01"
}
]
},
"errcode": 0,
"success": true,
"request_id": "exz1t52e9awo"
}
钉钉获取用户userId和设备ID的步骤如下:
user/getuserinfo
或user/get
,来获取用户的UserID。总的来说,您可以通过以上步骤在钉钉中获取用户的userId和设备ID。需要注意的是,在获取和使用用户信息时,应当遵守相关的隐私保护法规和平台政策,确保用户数据的安全和合法使用。如果您在操作过程中遇到任何问题,建议查阅钉钉开放平台的官方文档或联系钉钉的技术支持以获得帮助。
【管理后台 oa.dingtalk.com】-【通讯录】-【成员管理】-【找到该员工】-【点击该员工】查看;也可以导出通讯录查看员工的UserID。
两个接口分别对应userid和设备ID,希望对您有所帮助
https://open.dingtalk.com/document/orgapp/query-a-user-by-the-union-id#title-b4s-00k-2m9
https://open.dingtalk.com/document/orgapp/query-the-unique-id-of-a-device#7f4e291134r9o
如何设置员工的UserID-钉钉帮助中心
您好,通讯录管理员添加员工时,可以自行设置UserID,如果UserID没有设定的话,系统会自动生成。UserID是员工在企业的唯一标识,一旦生成不支持修改。员工离开该企业,重新加入时UserID值可能会发生变化。
注意:员工的UserID目前仅支持企业通讯录管理员查看,员工自己无法查看。
管理员设置路径如下:
1、登录【管理后台(oa.dingtalk.com)】-左侧【通讯录】-【内部通讯录管理】-【添加成员】-【员工UserID】设置即可。
2、登录【管理后台(oa.dingtalk.com)】-左侧【通讯录】-【内部通讯录管理】-【批量导入/导出】-【批量导入成员】-【下载模板】- 填写员工信息及UserID- 【上传填好的文件】即可。
【温馨提示】:若员工离职后重新入职需要与之前的UserID一致,可以先查看之前的UserID,然后导入员工时将UserID设置为之前的UserID即可。
可以通过免登授权码和access_token获取用户的userid,然后通过userid获取用户的详细信息。具体流程为:获取免登授权码,获取AccessToken,获取userid,获取用户详情。企业内每个员工都有唯一的UserId,可以登录钉钉管理后台,在通讯录 > 成员管理页面,单击员工姓名可查看员工的UserId。而设备ID在文本材料中没有提到。
此回答整理自钉群“钉钉开发者社区(互助群)”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。