调用钉钉接口

调用钉钉接口操作手册

一、准备工作

名词解释

钉钉开发过程中遇到的名词的阐释.

https://open-doc.dingtalk.com/microapp/index/kv5e1t

 

获取CorpID

CorpID是企业在钉钉中的标识,每个企业拥有唯一的CorpID。

操作路径:登入OA管理后台(https://oa.dingtalk.com)→企业应用→工作台设置→自建应用→“应用开发”进入开发者后台→首页

 

调用钉钉接口_第1张图片

获取CORPSECRET

考虑到CorpSecret属于企业的机密信息,此次针对获取CorpSecret权限做了控制,实现可按需灵活分配的效果;由企业主管理员根据实际场景的需要来进行设置(比如公司财务部需定制一套财务系统,则将财务经理设置为企业子管理员,管理范围为财务部,授予开发者权限,财务经理在开发者后台即可为财务部生成CorpSecret提供给开发者,也可将企业内信息管理负责人设置为子管理员授予开发权限,管理公司各部门CorpSecret)。

 

 

 

获取AgentId

代表应用和企业映射关系的ID(应用在企业开通后的开通记录ID),同一个ISV应用在不同企业的agentId不一致。

操作路径:登入OA管理后台(https://oa.dingtalk.com)→企业应用→工作台设置→自建应用→“应用开发”进入开发者后台

详解:

1.登入oa管理后台,点击“工作台”,点击“自建应用”。

 

 

2.跳转到开发者后台,单击”创建应用”,填入应用基本信息,选择“企业内部自主开发”

 

3.在应用类型处选择”企业内部应用”

 

4.添加完基本信息以后,单击下一步

 

5.配置开发信息

 

服务器出口IP: 124.236.xxx.xx

在填写IP地址的时候IP地址可以写成上面的形式,也可以写成124.236.xxx.*

6.点击创建以后,该E应用创建完成.回到应用列表我们即可看见我们创建的E应用.

AgentID: #企业应用id,这个值代表以哪个应用的名义发送消息

 

如何获取Access_Token

Access_Token是企业访问钉钉开放平台全局接口的唯一凭证,即调用接口时需携带Access_Token。

对于企业接入来说,AccessToken需要用CorpID和CorpSecret来获取,CorpID是企业在钉钉中的标识;每个企业拥有一个唯一的CorpID,CorpSecret是企业每个微应用的凭证密钥。

CorpID和CorpSecret可以在开发者后台中找到,参见此链接

不同的CorpSecret会返回不同的AccessToken。正常情况下AccessToken有效期为7200秒,有效期内重复获取返回相同结果,并自动续期。

说明:获取Access_Token有两种方法:

第一种:通过CorpID和CorpSecret来获取(微应用的)

第二种: 获取内部应用的appKey和appSecret来获取(E应用的)

CorpID和CorpSecret, appKey和appSecret在管理员后台都可以获取.

请求说明

请求方式:GET

接口地址:https://oapi.dingtalk.com/gettoken?corpid=id&corpsecret=secrect

参数

参数类型

必须

说明

corpid

String

企业Id

corpsecret

String

企业应用的凭证密钥

 

返回说明

  1. 正确的Json返回结果:

1

2

3

4

5

{

    "errcode": 0,

    "errmsg": "ok",

    "access_token": "fw8ef8we8f76e6f7s8df8s"

}

 

参数

说明

errcode

错误码

errmsg

错误信息

expires_in

过期时间

access_token

获取到的凭证

 

b)错误的Json返回示例:

1

2

3

4

{

   "errcode": 43003,

   "errmsg": "require https"

}

 

 

具体的方法会在接下来的项目应用部分展示.

 

二、项目应用

以下代码是实现功能的主要代码

引用的jar包



<dependency>
    <groupId>com.alibabagroupId>
    <artifactId>fastjsonartifactId>
    <version>1.1.40version>
dependency>
<dependency>
    <groupId>com.dingtalk.opengroupId>
    <artifactId>client-sdk.apiartifactId>
    <version>1.0.2version>
dependency>
<dependency>
    <groupId>com.dingtalk.opengroupId>
    <artifactId>client-sdk.core artifactId>
    <version>1.0.0version>
dependency>
<dependency>
    <groupId>com.dingtalk.opengroupId>
    <artifactId>client-sdk.commonartifactId>
    <version>1.0.0version>
dependency>
<dependency>
    <groupId>com.dingtalk.opengroupId>
    <artifactId>client-sdk.springartifactId>
    <version>1.0.0version>
dependency>
<dependency>
    <groupId>com.dingtalk.opengroupId>
    <artifactId>client-sdk.exampleartifactId>
    <version>1.0.0version>
dependency>


<dependency>
    <groupId>com.ninggroupId>
    <artifactId>async-http-clientartifactId>
    <version>1.9.32version>
dependency>

 

<dependency>

    <groupId>org.apache.httpcomponentsgroupId>

    <artifactId>httpclientartifactId>

    <version>4.5.2version>

dependency>

 

三、总结

基本信息

现在已经获取到的公司后台的信息如下:

CorpID

CORPSECRET

项目AGENTID

 

开发前必读

https://open-doc.dingtalk.com/docs/doc.htm?spm=a219a.7386797.0.0.AOcxUu&source=search&treeId=373&articleId=104980&docType=1

钉钉接口地址

https://open-doc.dingtalk.com/microapp/serverapi2/gh60vz

 

 

你可能感兴趣的:(第三方API)