飞书开放接口SDK
概述
飞书开放平台,便于企业应用与飞书集成,让协同与管理更加高效,概述
飞书开发接口SDK,便捷调用服务端API与订阅服务端事件,例如:消息&群组、通讯录、日历、视频会议、云文档、 OKR等具体可以访问 飞书开放平台文档 看看【服务端
API】。
运行环境
JDK 1.8及以上
安装方法
com.larksuite.oapi
larksuite-oapi
1.0.5
术语解释
飞书(FeiShu):Lark在中国的称呼,主要为国内的企业提供服务,拥有独立的域名地址。
开发文档:开放平台的开放接口的参考,开发者必看,可以使用搜索功能,高效的查询文档。更多介绍说明 。
开发者后台:开发者开发应用的管理后台,更多介绍说明 。
企业自建应用:应用仅仅可在本企业内安装使用,更多介绍说明 。
应用商店应用:应用会在 应用目录
展示,各个企业可以选择安装,更多介绍说明 。
快速使用
调用服务端API
必看 如何调用服务端API
,了解调用服务端API的过程及注意事项。
由于SDK已经封装了app_access_token、tenant_access_token的获取,所以在调业务API的时候,不需要去获取app_access_token、tenant_access_token。如果业务接口需要使用user_access_token,需要进行设置(Request.setUserAccessToken("UserAccessToken")),具体请看 README.zh.md -> 如何构建请求(Request)
使用企业自建应用访问 发送文本消息API 示例
有些老版接口,没有直接可以使用的SDK,可以使用原生模式。
package com.larksuite.oapi.sample.api;
import com.larksuite.oapi.core.AppSettings;
import com.larksuite.oapi.core.Config;
import com.larksuite.oapi.core.DefaultStore;
import com.larksuite.oapi.core.Domain;
import com.larksuite.oapi.core.api.AccessTokenType;
import com.larksuite.oapi.core.api.Api;
import com.larksuite.oapi.core.api.request.Request;
import com.larksuite.oapi.core.api.response.Response;
import com.larksuite.oapi.core.utils.Jsons;
import java.util.HashMap;
import java.util.Map;
public class Sample {
// 企业自建应用的配置
// AppID、AppSecret: "开发者后台" -> "凭证与基础信息" -> 应用凭证(App ID、App Secret)
// VerificationToken、EncryptKey:"开发者后台" -> "事件订阅" -> 事件订阅(Verification Token、Encrypt Key)。
public static final AppSettings appSettings = Config.createInternalAppSettings("AppID", "AppSecret", "VerificationToken", "EncryptKey");
// 当前访问的是飞书,使用默认存储,更多可选配置,请看:README.zh.md->高级使用->如何构建整体配置(Config)。
public static final Config config = new Config(Domain.FeiShu, appSettings, new DefaultStore());
public static void main(String[] args) throws Exception {
// 发送消息的内容
Map message = new HashMap<>();
message.put("user_id", "77bbc392");
message.put("msg_type", "text");
Map content = new HashMap<>();
content.put("text", "java test");
message.put("content", content);
// 构建请求
Request, Map> request = Request.newRequest("message/v4/send",
"POST", AccessTokenType.Tenant, message, new HashMap<>());
// 发送请求,拿到结果 = http response body json
Response> response = Api.send(config, request);
// 打印请求的RequestID
System.out.println(response.getRequestID());
// 打印请求的响应状态吗
System.out.println(response.getHTTPStatusCode());
// 打印请求的结果
System.out.println(Jsons.DEFAULT_GSON.toJson(response));
}
}
使用企业自建应用访问 修改用户部分信息API 示例
该接口是新的接口(请看"README.zh.md -> 已生成SDK的业务服务"