飞书 API
  1. Golang SDK 指南
飞书 API
  • 应用权限
    • 简介
    • 权限列表
  • API 调用指南
    • API 列表
    • 频控策略
    • 通用参数
    • 通用错误码
    • 调用流程
      • 流程概述
      • 获取访问凭证
      • 申请 API 权限
      • 配置应用数据权限
      • 设置 IP 白名单
      • 调用 API
  • 事件与回调
    • 事件订阅
      • 事件概述
      • 事件列表
      • 常见问题
      • 事件订阅优化指南
      • 订阅流程
        • 步骤一:使用长连接接收事件
        • 步骤一:将事件发送至开发者服务器
        • 步骤二:添加事件
        • 步骤三:接收事件
      • 获取事件出口 IP
    • 回调订阅
      • 回调概述
      • 步骤一:选择订阅方式(使用长连接接收回调)
      • 步骤一:选择订阅方式(将回调发送至开发者服务器)
      • 步骤二:添加回调
      • 步骤三:接收回调
  • 服务端 SDK
    • 服务端 SDK
    • 常见问题
    • Java SDK 指南
      • 开发前准备
      • 调用服务端 API
      • 处理事件
      • 处理回调
      • 场景示例
    • Golang SDK 指南
      • 开发前准备
      • 调用服务端 API
      • 处理事件
      • 处理回调
      • 场景示例
    • Python SDK 指南
      • 开发前准备
      • 调用服务端 API
      • 处理事件
      • 处理回调
      • 场景示例
    • NodeJS SDK 指南
      • 开发前准备
      • 调用服务端 API
      • 处理事件
      • 处理回调
      • 场景示例
  • 认证及授权
    • 登录态管理
      • 资源介绍
      • 获取登录用户信息
      • 批量获取脱敏的用户登录信息
      • 退出登录
    • 获取访问凭证
      • 自建应用获取 tenant_access_token
      • 自建应用获取 app_access_token
      • 商店应用获取 app_access_token
      • 商店应用获取 tenant_access_token
      • 获取 user_access_token
      • 刷新 user_access_token
      • 重新获取 app_ticket
  • 事件管理
    • 获取事件出口 IP
      GET
  • 通讯录
    • 概述
    • 常见问题
    • 权限范围
      • 资源介绍
      • 权限范围详解
      • 事件
        • 通讯录权限范围变更
      • 获取通讯录授权范围
    • 用户
      • 资源介绍
      • 国家/地区 Code 参照表
      • 事件
        • 员工信息被修改
        • 员工离职
        • 员工入职
      • 创建用户
      • 删除用户
      • 修改用户部分信息
      • 获取单个用户信息
      • 更新用户所有信息
      • 获取单个用户信息
      • 获取部门直属用户列表
      • 通过手机号或邮箱获取用户 ID
    • 用户组
      • 资源介绍
      • 创建用户组
      • 删除用户组
      • 更新用户组
      • 查询指定用户组
      • 查询用户组列表
      • 查询用户所属用户组
    • 自定义用户字段
      • 资源介绍
      • 事件
        • 成员字段变更
      • 获取企业自定义用户字段
    • 人员类型
      • 资源介绍
      • 事件
        • 新建人员类型
        • 启用人员类型
        • 停用人员类型
        • 删除人员类型
        • 修改人员类型名称
      • 新增人员类型
      • 删除人员类型
      • 更新人员类型
      • 查询人员类型
    • 部门
      • 资源介绍
      • 事件
        • 创建部门
        • 删除部门
        • 修改部门信息
      • 创建部门
      • 删除部门
      • 修改部门部分信息
      • 获取单个部门信息
      • 更新部门所有信息
      • 部门群转为普通群
      • 获取单个部门信息
      • 获取子部门列表
      • 获取父部门信息
      • 搜索部门
    • 单位
      • 资源介绍
      • 创建单位
      • 删除单位
      • 修改单位信息
      • 建立部门与单位的绑定关系
      • 解除部门与单位的绑定关系
      • 获取单位绑定的部门列表
      • 获取单位信息
      • 获取单位列表
    • 用户组成员
      • 资源介绍
      • 添加用户组成员
      • 批量添加用户组成员
      • 移除用户组成员
      • 查询用户组成员列表
      • 批量移除用户组成员
  • 消息
    • 概述
    • 常见问题
    • 消息内容介绍
      • 发送消息内容
      • 接收消息内容
    • 消息管理
      • 资源介绍
      • 事件
        • 接收消息
        • 消息已读
        • 撤回消息
      • 发送消息
      • 回复消息
      • 撤回消息
      • 查询消息已读信息
      • 获取会话历史消息
      • 获取消息中的资源文件
      • 获取指定消息的内容
    • 消息加急
      • 发送应用内加急
      • 发送短信加急
      • 发送电话加急
    • 批量消息
      • 批量发送消息
      • 批量撤回消息
      • 查询批量消息推送和阅读人数
      • 查询批量消息整体进度
    • 图片信息
      • 上传图片
      • 下载图片
    • 文件信息
      • 上传文件
      • 下载文件
    • 消息-消息卡片
      • 资源介绍
      • 更新应用发送的消息卡片
      • 延时更新消息卡片
      • 发送仅特定人可见的消息卡片
      • 删除仅特定人可见的消息卡片
    • 表情回复
      • 资源介绍
      • 表情文案说明
      • 事件
        • 新增消息表情回复
        • 删除消息表情回复
      • 添加消息表情回复
      • 删除消息表情回复
      • 获取消息表情回复
    • Pin
      • Pin 消息
      • 移除 Pin 消息
      • 获取群内 Pin 消息
  • 群组
    • 概述
    • 群组管理
      • 资源介绍
      • 群 ID 说明
      • 事件
        • 群解散
        • 群配置修改
      • 创建群
      • 解散群
      • 更新群信息
      • 更新群发言权限
      • 获取群信息
      • 更新群置顶
      • 撤销群置顶
      • 获取用户或机器人所在的群列表
      • 搜索对用户或机器人可见的群列表
      • 获取群成员发言权限
      • 获取群分享链接
    • 群成员
      • 资源介绍
      • 事件
        • 用户进群
        • 用户出群
        • 撤销拉用户进群
        • 机器人进群
        • 机器人被移出群
        • 用户和机器人的会话首次被创建
      • 指定群管理员
      • 删除群管理员
      • 将用户或机器人拉入群聊
      • 用户或机器人主动加入群聊
      • 将用户或机器人移出群聊
      • 获取群成员列表
      • 判断用户或机器人是否在群里
    • 群公告
      • 资源介绍
      • 更新群公告信息
      • 获取群公告信息
    • 会话标签页
      • 添加会话标签页
      • 删除会话标签页
      • 更新会话标签页
      • 会话标签页排序
      • 拉取会话标签页
    • 群菜单
      • 资源介绍
      • 添加群菜单
      • 删除群菜单。
      • 修改群菜单元信息
      • 排序群菜单
      • 获取群菜单
  • 云文档
    • 概述
    • 常见问题
    • 云空间
      • 云空间概述
      • 云空间常见问题
      • 文件夹
        • 获取我的空间(root folder)元信息
        • 获取文件夹下的清单
        • 获取文件夹元信息
        • 新建文件夹
        • 移动文件
        • 删除文件
      • 文件
        • 异步任务状态
          • 查询异步任务状态
        • 获取文档元数据
        • 新建在线文档
        • 复制文件
        • 移动文件
        • 删除文件
        • 获取文件统计信息
      • 素材
        • 素材概述
        • 分片上传素材
          • 概述
          • 分片上传素材(预上传)
          • 分片上传素材(上传分片)
          • 分片上传素材(完成上传)
        • 上传素材
        • 下载素材
        • 获取素材临时下载链接
      • 事件
        • 列表
          • 多维表格字段变更
          • 多维表格记录变更
          • 文件标题变更
          • 文件已读
          • 文件编辑
          • 文件协作者添加
          • 文件协作者移除
          • 文件删除到回收站
          • 文件彻底删除
        • 订阅云文档事件
      • 搜索
        • 文档搜素
      • 上传
        • 分片上传文件
          • 概述
          • 分片上传文件(预上传)
          • 分片上传文件(上传分片)
          • 分片上传文件(完成上传)
        • 上传文件
      • 下载
        • 下载文件
      • 导入
        • 概述
        • 创建导入任务
        • 查询导入结果
      • 导出
        • 导出文件指南
        • 创建导出任务
        • 查询导出任务结果
        • 下载导出文件
      • 文档版本
        • 概述
        • 创建文档版本
        • 删除文档版本
        • 获取文档版本
        • 获取文档版本列表
    • 权限
      • 权限概述
      • 常见问题
      • 成员
        • 转移所有者
        • 判断当前用户是否有某权限
        • 获取协作者列表(新版本)
        • 获取协作者列表
        • 增加协作者权限
        • 更新协作者权限
        • 移除协作者权限
      • 设置
        • 获取云文档权限设置
        • 更新云文档权限设置
    • 评论
      • 分页获取文档评论
      • 添加评论
      • 获取评论
      • 更新回复
      • 删除回复
      • 解决/恢复 评论
    • 文档
      • 新版文档接入指南
      • 新版文档
        • 概述
        • 数据结构
        • 接入指南
        • 文档
          • 获取文档基本信息
          • 获取文档纯文本内容
          • 获取文档所有块
          • 创建文档
        • 块
          • 获取块
          • 创建块
          • 更新块
          • 批量更新块
          • 删除块
          • 获取所有子块
      • 旧版文档
        • 概述
        • 准备接入文档 API
        • 文档数据结构概述
        • 文档数据结构参考
        • 文档
          • 创建文档
        • 内容
          • 获取文档富文本内容
          • 获取文档文本内容
          • 编辑文档内容
    • 权限
      • 权限成员
        • 增加权限
        • 判断协作者是否有某权限
      • 权限设置
        • 获取文档公共设置V2
        • 更新文档公共设置
      • 转移拥有者
    • 电子表格
      • 概述
      • 电子表格常见问题
      • 支持写入的数据类型
      • 支持数字格式类型
      • 表格
        • 修改电子表格属性
        • 获取电子表格信息
        • 创建表格
      • 工作表
        • 查询工作表
        • 获取工作表
        • 操作工作表
        • 更新工作表属性
      • 行列
        • 增加行列
        • 插入行列
        • 更新行列
        • 移动行列
        • 删除行列
      • 单元格
        • 追加数据
        • 插入数据
        • 读取单个范围
        • 读取多个范围
        • 向单个范围写入数据
        • 向多个范围写入数据
        • 设置单元格样式
        • 批量设置单元格样式
        • 写入图片
        • 合并单元格
        • 拆分单元格
        • 查找单元格
        • 替换单元格
      • 筛选
        • 筛选指南
        • 获取筛选
        • 创建筛选
        • 更新筛选
        • 删除筛选
      • 筛选视图
        • 筛选条件
          • 筛选视图的筛选条件指南
          • 创建筛选条件
          • 查询筛选条件
          • 更新筛选条件
          • 删除筛选条件
          • 获取筛选条件
        • 更新筛选视图
        • 获取筛选视图
        • 查询筛选视图
        • 创建筛选视图
        • 删除筛选视图
      • 表格操作
        • 创建表格
        • 获取表格元数据
        • 更新表格属性
        • 操作工作表
        • 更新工作表属性
      • 保护范围
        • 增加保护范围
        • 获取保护范围
        • 修改保护范围
        • 删除保护范围
      • 数据校验
        • 概述
        • 设置下拉列表
        • 删除下拉列表设置
        • 更新下拉列表设置
        • 查询下拉列表设置
      • 条件格式
        • 条件格式指南
        • 创建条件格式
        • 获取条件格式
        • 更新条件格式
        • 删除条件格式
      • 浮动图片
        • 浮动图片指南
        • 创建浮动图片
        • 获取浮动图片
        • 查询浮动图片
        • 更新浮动图片
        • 删除浮动图片
    • API参考
      • 创建文档
      • 编辑文档内容
      • 历史文档(不建议)
        • 获取文档中的电子表格的元数据
      • 获取文档元信息
    • 多维表格
      • 概述
      • 接入指南
      • 数据结构
      • 多维表格
        • 获取多维表格元数据
        • 更新多维表格元数据
      • 数据表
        • 更新数据表
        • 列出数据表
        • 新增数据表
        • 新增多个数据表
        • 删除一个数据表
        • 删除多个数据表
      • 仪表盘
        • 复制仪表盘
        • 列出仪表盘
      • 视图
        • 更新视图
        • 检索视图
        • 列出视图
        • 新增视图
        • 删除视图
      • 表单
        • 更新表单元数据
        • 获取表单元数据
        • 更新表单问题
        • 列出表单问题
      • 记录
        • 记录筛选开发指南
        • 检索记录
        • 列出记录
        • 新增记录
        • 更新记录
        • 删除记录
        • 新增多条记录
        • 更新多条记录
        • 删除多条记录
      • 字段
        • 字段编辑指南
        • 附件字段说明
        • 列出字段
        • 新增字段
        • 更新字段
        • 删除字段
      • 高级权限
        • 概述
        • 自定义角色
          • 列出自定义角色
          • 新增自定义角色
          • 删除自定义角色
          • 更新自定义角色
        • 协作者
          • 批量删除协作者
          • 批量新增协作者
          • 列出协作者
          • 新增协作者
          • 删除协作者
    • 知识库
      • 概述
      • 常见问题
      • 知识空间
        • 创建知识空间
        • 获取知识空间列表
        • 获取知识空间信息
      • 空间成员
        • 删除知识空间成员
        • 添加知识空间成员
      • 空间设置
        • 更新知识空间设置
      • 节点
        • 创建知识空间节点
        • 获取知识空间节点信息
        • 获取知识空间子节点列表
        • 移动知识空间节点
        • 更新知识空间节点标题
        • 创建知识空间节点副本
      • 任务
        • 获取任务结果
      • 云文档
        • 移动云空间文档至知识空间
        • 获取任务结果
      • 搜索 Wiki
        • 搜索 Wiki
    • 云文档助手
      • 订阅
        • 获取订阅状态
        • 创建订阅
        • 更新订阅状态
  • 日历
    • 概述
    • 常见问题
    • 日历管理
      • 资源介绍
      • 事件
        • 日历变更
      • 获取主日历
      • 创建共享日历
      • 删除共享日历
      • 查询主日历信息
      • 查询主日历忙闲信息
      • 查询日历信息
      • 查询日历列表
      • 更新日历
      • 搜索日历
      • 订阅日历
      • 取消订阅日历
      • 订阅日历变更事件
      • 取消订阅日历变更事件
    • 日历访问控制
      • 资源介绍
      • 事件
        • 创建 ACL
        • 删除 ACL
      • 取消订阅日历访问控制变更事件
      • 创建访问控制
      • 删除访问控制
      • 获取访问控制列表
      • 订阅日历访问控制变更事件
    • 日程管理
      • 资源介绍
      • 事件
        • 日程变更
      • 创建日程
      • 删除日程
      • 更新日程
      • 获取日程
      • 获取日程列表
      • 搜索日程
      • 订阅日程变更事件
      • 取消订阅日程变更事件
    • 请假日程管理
      • 资源介绍
      • 创建请假日程
      • 删除请假日程
    • 会议室日程管理
      • 事件
        • 会议室状态信息变更
        • 第三方会议室日程变动
      • 查询会议室日程主题和会议详情
      • 查询会议室忙闲
      • 回复会议室日程实例
    • 日程参与人
      • 资源介绍
      • 获取日程参与群成员列表
      • 添加日程参与人
      • 获取日程参与人列表
      • 删除日程参与人
    • 同步到本地日历
      • 生成 CalDAV 配置
    • 同步 Exchange 日历信息
      • 资源介绍
      • 将 Exchange 账户绑定到飞书账户
      • 解除 Exchange 账户绑定
      • 查询 Exchange 账户的绑定状态
  • 视频会议
    • 视频会议概述
    • 预约
      • 资源介绍
      • 预约会议
      • 删除预约
      • 更新预约
      • 获取预约
      • 获取活跃会议
    • 会议
      • 资源介绍
      • 事件
        • 企业会议开始
        • 企业会议结束
        • 会议开始
        • 会议结束
        • 加入会议
        • 离开会议
        • 开始录制
        • 停止录制
        • 录制完成
        • 屏幕共享开始
        • 屏幕共享结束
      • 邀请参会人
      • 移除参会人
      • 设置主持人
      • 结束会议
      • 获取会议详情
      • 获取与会议号相关联的会议列表
    • 录制
      • 资源介绍
      • 开始录制
      • 停止录制
      • 获取录制文件
      • 授权录制文件
    • 会议报告
      • 资源介绍
      • 获取会议报告
      • 获取top用户列表
    • 导出
      • 资源介绍
      • 导出会议明细
      • 导出参会人明细
      • 导出参会人会议质量数据
      • 导出会议室预定数据
      • 查询导出任务结果
      • 下载导出文件
    • 会议室层级
      • 资源介绍
      • 创建会议室层级
      • 删除会议室层级
      • 更新会议室层级
      • 查询会议室层级详情
      • 批量查询会议室层级详情
      • 查询会议室层级列表
      • 搜索会议室层级
    • 会议室管理
      • 资源介绍
      • 事件
        • 创建会议室
        • 更新会议室
        • 删除会议室
      • 创建会议室
      • 删除会议室
      • 更新会议室
      • 查询会议室详情
      • 批量查询会议室详情
      • 查询会议室列表
      • 搜索会议室
    • 会议室配置
      • 资源介绍
      • 查询会议室配置
      • 设置会议室配置
      • 获取会议室预定范围
      • 更新会议室预定范围
  • 考勤打卡
    • 概述
    • 接入指南
    • 考勤班次
      • 按名称查询班次
      • 删除班次
      • 创建班次
      • 按 ID 查询班次
      • 查询所有班次
    • 考勤组管理
      • 创建或修改考勤组
      • 删除考勤组
      • 按 ID 查询考勤组
      • 按名称查询考勤组
      • 查询所有考勤组
    • 考勤排班
      • 查询班表信息
      • 创建或修改班表
    • 考勤统计
      • 功能介绍
      • 查询统计表头
      • 更新统计设置
      • 查询统计数据
      • 查询统计设置
    • 假勤审批
      • 获取用户审批通过数据
      • 通知审批状态更新
      • 写入审批结果
    • 考勤补卡
      • 获取可补卡时间
      • 获取补卡记录
      • 通知补卡审批发起
    • 打卡信息管理
      • 批量查询打卡流水
      • 查询打卡流水
      • 获取打卡结果
      • 导入打卡流水
    • 考勤用户管理
      • 事件
        • 用户打卡成功
        • 用户任务状态变更
      • 修改用户人脸识别信息
      • 批量查询用户人脸识别信息
      • 上传用户人脸识别照片
      • 下载用户人脸识别照片
  • 审批
    • 概述
    • 常见问题
    • 接入指南
      • 审批接入指南
      • 原生审批接入指南
      • 商店应用开发指南
      • 三方审批接入
        • 三方审批接入指南
        • 三方审批接入准备
        • 审批官方连接器
    • 原生审批定义
      • 资源介绍
      • 关联外部选项说明
      • 创建审批定义
      • 查看指定审批定义
      • 查询审批定义列表
    • 原生审批实例
      • 资源介绍
      • 创建审批实例
      • 撤回审批实例
      • 抄送审批实例
      • 预览审批流程
      • 批量获取审批实例ID
      • 获取单个审批实例详情
    • 原生审批任务
      • 资源介绍
      • 同意审批任务
      • 拒绝审批任务
      • 转交审批任务
      • 退回审批任务
      • 审批任务加签
      • 重新提交审批任务
    • 原生审批文件
      • 资源介绍
      • 上传文件
    • 原生审批评论
      • 资源介绍
      • 创建评论
      • 删除评论
      • 清空评论
      • 获取评论
    • 三方审批定义
      • 资源介绍
      • 三方快捷审批回调
      • 创建三方审批定义
    • 三方审批实例
      • 资源介绍
      • 同步三方审批实例
      • 校验三方审批实例
    • 三方审批任务
      • 资源介绍
      • 获取三方审批任务状态
    • 审批 Bot 消息
      • 发送审批 Bot 消息
      • 更新审批 Bot 消息
    • 审批查询
      • 查询实例列表
      • 查询抄送列表
      • 查询任务列表
      • 查询用户的任务列表
      • 查询审批 ID(专用)
    • 审批事件
      • 功能介绍
      • 订阅步骤
      • 常见问题
      • 事件接口
        • 订阅审批事件
        • 取消订阅审批事件
      • 公用事件
        • 审批抄送状态变更
        • 审批任务状态变更
        • 审批实例状态变更
        • 审批定义更新
      • 特殊事件
        • 出差审批
        • 外出审批
        • 补卡审批
        • 换班审批
        • 加班审批
        • 请假审批
  • 服务台
    • 概述
    • 接入指南
    • 客服
      • 客服功能管理
        • 更新客服信息
        • 获取客服邮箱
      • 客服工作日程
        • 创建客服工作日程
        • 删除客服工作日程
        • 更新客服工作日程
        • 查询指定客服工作日程
        • 查询全部客服工作日程
      • 客服技能
        • 创建客服技能
        • 删除客服技能
        • 更新客服技能
        • 查询指定客服技能
        • 查询全部客服技能
      • 客服技能规则
        • 客服技能及运算符
        • 获取客服技能列表
    • 工单
      • 事件
        • 创建工单
        • 工单状态变更
      • 工单管理
        • 创建服务台对话
        • 更新工单详情
        • 查询指定工单详情
        • 获取服务台工单内消息图像
        • 回复用户提问结果至工单
        • 查询全部工单详情
        • 获取服务台自定义字段
      • 工单消息
        • 工单消息内容
        • 发送工单消息
        • 获取工单消息详情
        • 服务台机器人向工单绑定的群内发送消息
      • 工单自定义字段
        • 概述
        • 创建工单自定义字段
        • 删除工单自定义字段
        • 更新工单自定义字段
        • 获取指定工单自定义字段
        • 获取全部工单自定义字段
      • 工单自定义字段
    • 知识库
      • 知识库管理
        • 富文本
        • 创建知识库
        • 获取知识库详情
        • 修改知识库
        • 删除知识库
        • 获取全部知识库详情
        • 获取知识库图像
        • 搜索知识库
      • 知识库分类
        • 创建知识库分类
        • 获取知识库分类
        • 更新知识库分类详情
        • 删除知识库分类详情
        • 获取全部知识库分类
    • 推送中心
      • 事件
        • 推送审核通知事件
      • 创建推送
      • 更新推送
      • 查询推送
      • 预览推送
      • 提交审核
      • 取消审核
      • 执行推送
      • 取消推送
    • 事件订阅
      • 订阅服务台事件
      • 取消订阅服务台事件
  • 任务
    • 任务概述
    • Markdown 模块
    • 任务字段补充说明
    • 任务管理
      • 功能介绍
      • 事件
        • 任务信息变更(租户维度)
        • 任务信息变更
      • 创建任务
      • 删除任务
      • 更新任务
      • 完成任务
      • 取消完成任务
      • 查询指定任务
      • 查询所有任务
    • 提醒
      • 功能介绍
      • 新增提醒时间
      • 删除提醒时间
      • 查询提醒时间列表
    • 评论
      • 概述
      • 事件
        • 任务评论信息变更
      • 获取评论列表
      • 创建评论
      • 删除评论
      • 更新评论
      • 获取评论详情
    • 关注人
      • 功能介绍
      • 批量删除关注人
      • 新增关注者
      • 删除指定关注人
      • 获取关注者列表
    • 执行者
      • 功能介绍
      • 批量删除执行者
      • 新增执行者
      • 删除指定执行者
      • 获取执行者列表
  • 邮箱
    • 邮件组
      • 邮件组管理
        • 创建邮件组
        • 删除邮件组
        • 修改邮件组部分信息
        • 修改邮件组全部信息
        • 查询指定邮件组
        • 批量获取邮件组
      • 邮件组成员
        • 创建邮件组成员
        • 删除邮件组成员
        • 查询指定邮件组成员
        • 获取所有邮件组成员
        • 批量创建邮件组成员
        • 批量删除邮件组成员
      • 邮件组别名
        • 创建邮件组别名
        • 删除邮件组别名
        • 获取邮件组所有别名
      • 邮件组权限成员
        • 创建邮件组权限成员
        • 删除邮件组权限成员
        • 获取邮件组权限成员
        • 批量获取邮件组权限成员
        • 批量创建邮件组权限成员
        • 批量删除邮件组权限成员
    • 公共邮箱
      • 公共邮箱管理
        • 创建公共邮箱
        • 删除公共邮箱
        • 修改公共邮箱
        • 修改公共邮箱全部信息
        • 查询所有公共邮箱
        • 查询指定公共邮箱
      • 公共邮箱成员
        • 添加公共邮箱成员
        • 删除公共邮箱成员
        • 删除公共邮箱所有成员
        • 获取公共邮箱成员信息
        • 查询所有公共邮箱成员信息
        • 批量添加公共邮箱成员
        • 批量删除公共邮箱成员
      • 公共邮箱别名
        • 创建公共邮箱别名
        • 删除公共邮箱别名
        • 查询公共邮箱的所有别名
    • 用户邮箱
      • 从回收站删除用户邮箱地址
      • 创建用户邮箱别名
      • 删除用户邮箱别名
      • 获取用户邮箱所有别名
    • 邮箱地址
      • 查询邮箱地址状态
  • 应用信息
    • 应用管理
      • 校验应用管理员
      • 获取应用管理员管理范围
      • 获取应用在企业内的可用范围
      • 获取用户可用的应用
      • 获取企业安装的应用
      • 更新应用可用范围
      • 查询应用管理员列表
    • 应用商店
      • 查询用户是否在应用开通范围
      • 查询租户购买的付费方案
      • 查询订单详情
    • 应用
      • 获取应用版本列表
      • 查看待审核的应用列表
      • 获取应用信息
      • 获取应用版本信息
      • 更新应用审核状态
      • 更新应用分组信息
    • 应用使用情况
      • 获取应用使用概览
    • 应用反馈
      • 更新应用反馈
      • 获取应用反馈列表
    • 事件
      • 新增应用反馈
      • 反馈更新
      • 应用创建
      • 首次启用应用
      • 应用停启用
      • 应用商店应用购买
      • app_ticket 事件
      • 应用卸载
      • 应用可用性范围增加
      • 申请发布应用
      • 撤回应用发布申请
      • 未命名文档
  • 企业信息
    • 获取企业信息
  • 认证信息
    • 获取认证信息
  • 个人设置
    • 系统统计
      • 功能介绍
      • 创建系统状态
      • 删除系统状态
      • 修改系统状态
      • 获取系统状态
      • 批量开启系统状态
      • 批量关闭系统状态
  • 搜索
    • 概述
    • 接入指南
    • 常见问题
    • 数据源
      • 创建数据源
      • 删除数据源
      • 修改数据源
      • 获取数据源
      • 批量获取所有的数据源
    • 数据项
      • 批量为数据项创建索引
      • 为指定数据项创建索引
      • 获取数据项
      • 删除数据项
    • 数据范式
      • 创建数据范式
      • 删除数据范式
      • 修改数据范式
      • 获取数据范式
  • AI 能力
    • 光学字符识别
      • 识别图片中的文字
    • 语音识别
      • 识别语音文件 (ASR)
      • 识别流式语音 (ASR)
    • 机器翻译
      • 识别文本语种
      • 翻译文本
  • 管理后台
    • 登录密码管理
      • 重置用户的企业邮箱密码
    • 数据报表管理
      • 功能介绍
      • 获取部门维度的用户活跃和功能使用数据
      • 获取用户维度的用户活跃和功能使用数据
    • 企业勋章
      • 功能介绍
      • 勋章管理
        • 创建勋章
        • 修改勋章信息
        • 上传勋章图片
        • 获取勋章列表
        • 获取勋章详情
      • 勋章授予名单
        • 创建授予名单
        • 删除授予名单
        • 修改授予名单
        • 获取授予名单列表
        • 获取授予名单详情
  • 飞书人事(标准版)
    • 接入指南
    • 批量获取员工花名册信息
    • 下载人员的附件
  • 飞书人事(企业版)
    • 休假管理
      • 批量查询员工请假记录
  • 招聘
    • 概述
    • 错误码
    • 招聘相关配置
      • 职位
        • 新建职位
        • 更新职位
        • 更新职位设置
        • 获取职位设置
        • 获取职位信息
        • 获取职位上的招聘人员信息
      • 流程
        • 获取招聘流程信息
    • 获取候选人
      • 内推
        • 获取内推信息
    • 候选人管理
      • 人才
        • 通过手机号或邮箱获取人才 ID
        • 获取人才信息
      • 投递流程
        • 投递管理
          • 创建投递
          • 终止投递
          • 获取投递信息
          • 获取投递列表
        • Offer
          • 获取 Offer 信息
        • 入职
          • 更新 e-HR 导入任务结果
          • 操作候选人入职
          • 更新入职状态
          • 通过投递 ID 获取入职信息
          • 通过员工 ID 获取入职信息
      • 备注
        • 创建备注
        • 更新备注
        • 获取备注
        • 获取备注列表
      • 简历来源
        • 获取简历来源列表
    • 附件
      • 获取附件信息
      • 获取附件预览信息
  • OKR
    • 概述
    • OKR周期
      • 获取OKR周期列表
    • OKR 内容
      • 获取用户的 OKR 列表
      • 批量获取OKR
    • 用户OKR
      • 获取用户的OKR列表
    • OKR 进展记录
      • 创建 OKR 进展记录
      • 删除 OKR 进展记录
      • 更新 OKR 进展记录
      • 获取 OKR 进展记录
      • 上传进展记录图片
    • 指标管理
      • 获取指标库
      • 获取指标表
      • 更新指标项
      • 批量更新指标项
      • 获取指标项
  • 实名认证
    • 录入身份信息
    • 上传人脸基准图片
    • 裁剪人脸图片
    • 查询人脸认证结果
  • 智能门禁
    • 概述
    • 用户管理
      • 事件
        • 用户变更
      • 获取单个用户信息
      • 获取用户列表
      • 修改用户部分信息
      • 上传人脸图片
      • 下载人脸图片
    • 门禁设备
      • 获取设备列表
    • 人脸图片
      • 概述
  • 企业百科
    • 概述
    • 草稿
      • 创建草稿
      • 更新草稿
    • 词条
      • 创建免审词条
      • 更新免审词条
      • 提取潜在的百科词条
      • 获取词条详情
      • 获取词条列表
      • 精准搜索词条
      • 模糊搜索词条
      • 词条高亮
    • 分类
      • 获取百科分类
    • 图片管理
      • 上传图片
      • 下载图片
  • 妙记
    • 获取妙计统计数据
      • 获取妙记统计数据
    • 妙记信息
      • 获取妙记信息
  • 工作台
    • 我的常用推荐规则
      • 获取当前设置的推荐规则列表
  • 企业
    • 获取企业信息
  1. Golang SDK 指南

调用服务端 API

本文档介绍如何通过 Go SDK,自行构建 API Client、构造 API 请求、最终成功调用服务端 API。你可前往 API 调试台,直接获取指定服务端 API 相关示例代码,然后参考本文档了解调用 API 的全面流程。
img

步骤一:构建 API Client#

通过 SDK 调用飞书开放接口之前,你需要先在代码中创建一个 API Client。该 API Client 支持指定当前使用的应用信息、日志级别、HTTP 请求超时时间等基本信息。以下为支持的配置项及其具体含义。
var client = lark.NewClient("appID", "appSecret", // 默认配置为自建应用
    // lark.WithMarketplaceApp(), // 可设置为商店应用
    lark.WithLogLevel(larkcore.LogLevelDebug),
    lark.WithReqTimeout(3*time.Second),
    lark.WithEnableTokenCache(true),
    lark.WithHelpdeskCredential("id", "token"),
    lark.WithHttpClient(http.DefaultClient))
配置选项配置方式是否必填描述
app_id 和 app_secretlark.NewClient("appID", "appSecret")是应用凭证 App ID 和 App Secret。可在开发者后台 > 应用详情页 > 凭证与基础信息 > 应用凭证 区域获取。图片名称
AppTypelark.WithMarketplaceApp()否设置 App 类型为商店应用。如果你是 ISV 开发者,则必须设置该选项。关于商店应用的开发指南,可参见 ISV(商店应用)开发指南。
LogLevellark.WithLogLevel(logLevel larkcore.LogLevel)否设置 API Client 的日志输出级别,枚举值如下:LogLevelDebugLogLevelInfo(默认值)LogLevelWarnLogLevelError
Loggerlark.WithLogger(logger larkcore.Logger)否设置API Client 的日志器,默认日志输出到标准输出。你可通过实现下面的 Logger 接口,来设置自定义的日志器。type Logger interface { Debug(context.Context, ...interface{}) Info(context.Context, ...interface{}) Warn(context.Context, ...interface{}) Error(context.Context, ...interface{})}
LogReqAtDebuglark.WithLogReqAtDebug(printReqRespLog bool)否设置是否开启 HTTP 请求参数和响应参数的日志打印开关。开启后,在 debug 模式下会打印 HTTP 请求和响应的 headers、body 等信息。提示:在排查问题时开启该选项,有利于问题的排查。
BaseUrllark.WithOpenBaseUrl(baseUrl string)否设置飞书域名,默认为飞书域名 FeishuBaseUrl。可用域名如下:// 飞书域名var FeishuBaseUrl = "https://open.feishu.cn"// Lark域名var LarkBaseUrl = "https://open.larksuite.com"
TokenCachelark.WithTokenCache(cache larkcore.Cache)否设置 Token 缓存器,用于缓存 Token 和 appTIcket,默认实现为内存。如果你需要定制 Token 缓存器,则需实现如下 Cache 接口。type Cache interface { Set(ctx context.Context, key string, value string, expireTime time.Duration) error Get(ctx context.Context, key string) (string, error)}注意:对于商店应用的 ISV 开发者而言,如果需要 SDK 来缓存 appTicket,则需要实现该接口,以提供分布式缓存。
EnableTokenCachelark.WithEnableTokenCache(enableTokenCache bool)否设置是否开启 TenantAccessToken (应用访问凭证)的自动获取与缓存。默认开启,如需关闭可设置为 false。
HelpDeskId、HelpDeskTokenlark.WithHelpdeskCredential(helpdeskID, helpdeskToken string)否服务台的 ID 和 token。仅在调用服务台业务的 API 时需要配置。可在服务台管理后台设置中心 > API 凭证 处获取,详情参见 服务台接入指南。注意:服务台的 ID、Token 只有服务台创建者可以查看到。img
ReqTimeoutlark.WithReqTimeout(time time.Duration)否设置 SDK 内置的 Http Client 的请求超时时间。默认为 0 表示永不超时。
HttpClientlark.WithHttpClient(httpClient larkcore.HttpClient)否设置 Http Client,用于替换 SDK 提供的默认实现。你可通过实现下面的 HttpClient 接口来设置自定义的 HttpClient。type HttpClient interface { Do(*http.Request) (*http.Response, error)}
示例配置:
对于自建应用,使用以下代码创建 API Client。
var client = lark.NewClient("appID", "appSecret") // 默认配置为自建应用
对于商店应用,需在创建 API Client 时,使用 lark.WithMarketplaceApp 方法指定 AppType 为商店应用。了解更多可参考 ISV(商店应用)开发指南。
var client = lark.NewClient("appID", "appSecret",lark.WithMarketplaceApp()) // 设置为商店应用

步骤二:构造 API 请求#

在项目内创建 API Client 后,即可开始调用飞书开放平台接口。如下图示例,你可前往 API 调试台,直接获取指定服务端 API 相关示例代码。
img
SDK 使用 client. 业务域. 版本. 资源 .方法名称 来定位具体的 API 方法。以创建文档接口为例,HTTP URL 为 https://open.feishu.cn/open-apis/docx/v1/documents,其中 docx 为业务域,v1 为版本,documents 为资源,相应的创建方法为 client.Docx.V1.Document.Create()。
img
如下代码示例,你可通过 client 调用文档资源的 create 方法,创建一个文档。
该示例需要你在开发者后台为应用开通[创建及编辑新版文档]或[创建新版文档]权限,否则接口将报 99991672 错误码。
package main
import ( // 导入接口所属的业务资源包
        "context"
        "fmt"
        "github.com/larksuite/oapi-sdk-go/v3"
        "github.com/larksuite/oapi-sdk-go/v3/core"
        "github.com/larksuite/oapi-sdk-go/v3/service/docx/v1"
)
func main() {
        // 创建 API Client。你需在此传入你的应用的实际 App ID 和 App Secret
        client := lark.NewClient("appID", "appSecret")
        // 发起创建文档的请求
        resp, err := client.Docx.Document.Create(context.Background(), larkdocx.NewCreateDocumentReqBuilder().
                Body(larkdocx.NewCreateDocumentReqBodyBuilder().
                        FolderToken(""). // 文件夹 token,传空表示在根目录创建文档
                        Title("title"). // 文档标题
                        Build()).
                Build())
        //处理错误
        if err != nil {
           // 处理 err
           return
        }
        // 服务端错误处理
        if !resp.Success() {
           fmt.Println(resp.Code, resp.Msg, resp.LogId())
           return 
        }
        // 业务数据处理
        fmt.Println(larkcore.Prettify(resp.Data))
}
其他示例参考 GitHub 代码仓库中的 im.go 示例。

(可选)步骤三:设置请求选项#

在每次发起 API 调用时,你可以设置请求级别的相关参数,例如传递 userAccessToken(用户访问凭证)、自定义 headers 等。所有请求级别可设置的选项如下表所示。
配置选项配置方式描述
Headerlarkcore.WithHeaders(header http.Header)设置自定义请求头。在发起请求时,这些请求头会被透传到飞书开放平台服务端。
UserAccessTokenlarkcore.WithUserAccessToken(userAccessToken string)设置用户 token,当你需要以用户身份发起 API 调用时,需要设置该选项的值。
TenantAccessTokenlarkcore.WithTenantAccessToken(tenantAccessToken string)设置企业或组织 token,当你自己维护企业或组织 token 时(即创建 client 时 EnableTokenCache 设置为 false),需通过该选项传递企业或组织 token。
TenantKeylarkcore.WithTenantKey(tenantKey string)设置企业或组织 key,当你开发商店应用时,必须设置该选项。
RequestIdlarkcore.WithRequestId(requestId string)设置请求 ID,作为请求的唯一标识。该 ID 会被透传到飞书开放平台服务端。
NeedHelpDeskAuthlarkcore.WithNeedHelpDeskAuth()设置添加服务台 helpdesk 的认证 header。
设置自定义请求头的示例代码如下所示。
import (
        "context"
        "fmt"
        "net/http"
        "github.com/larksuite/oapi-sdk-go/v3"
        "github.com/larksuite/oapi-sdk-go/v3/core"
        "github.com/larksuite/oapi-sdk-go/v3/service/docx/v1"
)
func main() {
        // 创建 API Client。你需在此传入你的应用的实际 App ID 和 App Secret
        client := lark.NewClient("appID", "appSecret")
        // 设置自定义请求头
        header := make(http.Header)
        header.Add("k1", "v1")
        header.Add("k2", "v2")
        // 发起请求
        resp, err := client.Docx.Document.Create(context.Background(), larkdocx.NewCreateDocumentReqBuilder().
                Body(larkdocx.NewCreateDocumentReqBodyBuilder().
                        FolderToken("token").
                        Title("title").
                        Build(),
                ).
                Build(),
                larkcore.WithHeaders(header), // 设置自定义 headers
        )
        //处理错误
        if err != nil {
           // 处理 err
           return
        }
        // 服务端错误处理
        if !resp.Success() {
           fmt.Println(resp.Code, resp.Msg, resp.LogId())
           return
        }
        // 业务数据处理
        fmt.Println(larkcore.Prettify(resp.Data))
}

步骤四:运行代码#

完成以上步骤后,即可运行代码调用创建文档 API。若请求成功,预计将返回以下数据。若失败,将返回错误码、错误信息和 Log ID,你可前往开发文档搜索解决方案。
{
  Document: {
    DocumentId: "IPI4dqnbfoPxL3xhAEhcjXabcef",
    RevisionId: 1,
    Title: "title"
  }
}

常见问题#

如何调用历史版本 API ?#

服务端 API 中存在部分历史版本或未全量开放的接口,由于没有元数据信息,所以不能使用 SDK 内封装好的方法快速调用,此时你可以使用 SDK 提供的原生模式调用 API。以获取单个用户信息接口为例,调用示例如下所示:
import (
        "context"
        "fmt"
        "github.com/larksuite/oapi-sdk-go/v3"
        "github.com/larksuite/oapi-sdk-go/v3/core"
        "net/http"
        "os"
)
func main() {
        // 创建 API Client。你需在此传入你的应用的实际 App ID 和 App Secret
        var appID, appSecret = os.Getenv("APP_ID"), os.Getenv("APP_SECRET")
        var cli = lark.NewClient(appID, appSecret)
        // 发起 API 请求
        resp, err := cli.Do(context.Background(),
                &larkcore.ApiReq{
                        HttpMethod:                http.MethodGet,
                        ApiPath:                   "https://open.feishu.cn/open-apis/contact/v3/users/:user_id",
                        Body:                      nil,
                        QueryParams:               larkcore.QueryParams{"user_id_type": []string{"open_id"}},
                        PathParams:                larkcore.PathParams{"user_id": "ou_c245b0a7dff2725cfa2fb104f8b48b9d"},
                        SupportedAccessTokenTypes: []larkcore.AccessTokenType{larkcore.AccessTokenTypeUser},
                },
        )
        // 错误处理
        if err != nil {
                fmt.Println(err)
                return
        }
        // 获取请求 ID
        fmt.Println(resp.LogId())
        // 处理请求结果
        fmt.Println(resp.StatusCode)      // http status code
        fmt.Println(resp.Header)          // http header
        fmt.Println(string(resp.RawBody)) // http body,二进制数据
}
了解更多 API 调用示例,参考 GitHub 代码仓库中的 api.go 示例。

如何快速获取接口对应的示例代码?#

飞书开放平台提供了 API 调试台,通过该平台可以快速调试服务端 API,快速获取资源 ID 及生成多语言示例代码的能力,为您节省开发成本。例如,通过 API 调试台调用 发送消息 接口,在调试台成功完成测试后,可通过 示例代码 页面查阅 Go SDK 对应的接口调用代码。
img

如何准确选择 API 方法?#

使用 API Client 调用 API 时,对应的方法建议你借助 API 调试台获取,可通过指定接口的地址栏参数拼接方法,也可以直接参考接口提供的示例代码。以通过手机号或邮箱获取用户 ID接口为例,获取方式如下图所示。
img

【飞书】API开发者 微信交流群

用微信扫右侧二维码,加入【飞书】API开发者 交流群,互助沟通

扫码加入交流群
修改于 2025-10-17 06:52:02
上一页
开发前准备
下一页
处理事件
Built with