钉钉实战营学习打卡记录 Day 3 转身钉钉应用开发者,两步教你尝试调用一个接口来创建新用户呀

2021/4/27 10:27:51

本文主要是介绍钉钉实战营学习打卡记录 Day 3 转身钉钉应用开发者,两步教你尝试调用一个接口来创建新用户呀,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

搞定了一个钉钉应用,怎样调用接口来创建一个新用户呢?从这篇说开去

目录

二、调用creat user接口

三、【常出现的几处报错代码释义】

四、【小案例与解决心得】如果出现请求的部门 id 不在授权范围内,如何解决?


从这里→ https://open.dingtalk.com/进入钉钉开放平台,红框区域登录后台

没有组织的同学,可以新建组织后,进入应用开发界面,开始创建一个应用

创建成功后就可以在目录中看到它啦!

点击应用,去记录下专属你的key和secret,后面调用接口时会用到呀

注意在权限管理中要勾选通讯录的相关权限

【注意】开发管理界面会有一个出口IP地址,这个IP可以从后面的调试过程中找到,不然会报错!

二、调用creat user接口

钉钉官方的接口文档戳这里→ https://developers.dingtalk.com/document/app/create-members

我们单击调试按钮进入接口界面,如图所示↓

这里粘一下官方的body参数供参考↓

Body参数

名称

类型

是否必填

示例值

描述

userid

String

001

员工唯一标识ID(不可修改),企业内必须唯一。

长度为1~64个字符,如果不传,将自动生成一个userid。

isSenior

Boolean

true

是否开启高管模式:

  • true:开启。

    开启后,手机号码对所有员工隐藏。普通员工无法对其发DING、发起钉钉免费商务电话。高管之间不受影响。

  • false:不开启。

isHide

Boolean

true

是否号码隐藏:

  • true:隐藏。

    隐藏手机号后,手机号在个人资料页隐藏,但仍可对其发DING、发起钉钉免费商务电话。

  • false:不隐藏。

jobnumber

String

1001

员工工号,对应显示到OA后台和客户端个人资料的工号栏目。

长度为0~64个字符。

email

String

1@example.com

员工邮箱。

长度为0~64个字符。企业内必须唯一,不可重复。

remark

String

测试用户

备注。

长度为0~1000个字符。

workPlace

String

杭州

办公地点。

长度为0~50个字符。

tel

String

8646xxxx

分机号。

长度为0~50个字符,企业内必须唯一,不可重复。

mobile

String

138xxxx0000

手机号码,企业内必须唯一,不可重复。

position

String

技术支持

职位信息。

长度为0~64个字符。

positionInDepts

JSONObject

{1:技术支持}

设置用户在每个部门下的职位。

Key是deptId,表示部门;Value是职位,表示在这个部门下的职位。

department

List

[389xxxx]

数组类型,数组里面值为整型,成员所属部门ID列表。

name

String

张x

成员名称。

长度为1~64个字符。

extattr

String

{"爱好":"读书"}

扩展属性,可以设置多种属性。

手机上最多只能显示10个扩展属性,可登录OA管理后台>设置>通讯录信息进行设置。

该字段的值支持链接类型填写,同时链接支持变量通配符自动替换,目前支持通配符有:userid,corpid。示例: [工位地址](http://www.dingtalk.com?userid=#userid#&corpid=#corpid#)。

查看扩展属性:

  • 链接类型扩展属性,只支持在“移动端钉钉-点击该用户头像-个人资料页”查看,点击链接可以跳转

  • 非链接类型扩展属性,支持在“移动端钉钉/PC端钉钉-点击该用户头像-个人资料页”查看。

orgEmail

String

1@dingtalk.com

员工的企业邮箱,如果员工已经开通了企业邮箱,接口会返回,否则会报错。

orderInDepts

JSONObject

{1:1}

在对应的部门中的排序,Map结构的json字符串。Key是部门的ID,Value是人员在这个部门的排序值。

hiredDate

Number

1599735213000

入职时间,Unix时间戳。

 

我们先获取到access token,这里你的应用key和secret就派上用场啦

再使用user/creat来创建用户,成果如下图

创建用户成功后,在钉钉通讯录就能看到啦,很神奇对不对

 

三、【常出现的几处报错代码释义】

 

40025    无效的部门JSONArray对象,合法格式需要用中括号括起来,且如果属于多部门,部门id需要用逗号分隔    
60107    使用该手机登录钉钉的用户已经在企业中    
60003    部门不存在  (可以用1代替进入根部门)

 

四、【小案例与解决心得】如果出现请求的部门 id 不在授权范围内,如何解决?

 

【注】测试环境: ApiExplorer。 建议大家写接口之前可以用钉钉官方提供的在线API进行测试,切记 ApiExplorer 发起 API 调用将对当前登录企业的线上数据发起实际调用,请谨慎操作

当访问获取部门列表接口时死活提示:

  1. {

  2. "errcode":50004,

  3. "errmsg":"请求的部门id不在授权范围内"

  4. }

我以为是我的开发人员兼子管理员权限不够,于是我就联系客户使用主管理员的账号进行登录,结果还是不行,关键是官方也没说明白,整的很难懂。

填坑记录:问题就在【请选择权限范围】,刚开始并没有特别关注这个不起眼的按钮(好吧,我好几次并没有翻到底部看到它,^_^^_^),当我第一次看到它是,我以为是赋予某个人去调用这些权限,经过测试后我发现了,这 TM 的是反着来的。

 

重点】这里的选择权限范围指的是为用户开通以上已申请的权限,没有被授权的员工我们不能拥有读取改员工的任何信息,想要读取的话就只能为员工开通。

我想钉钉应该是出于对公司员工信息的保护而设置的这个权限,但是我所开发的是企业内部管理小程序,所以我这里就应该是【全部员工】。

 

 



这篇关于钉钉实战营学习打卡记录 Day 3 转身钉钉应用开发者,两步教你尝试调用一个接口来创建新用户呀的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程