对接飞书 Lark 审批流程
本文档介绍如何在 NineData 中对接 国际版 Lark 外部审批流程,并把 SQL 任务、权限申请、数据导出等流程接入 Lark 审批。
本文基于 2026-03-18 的实际验证结果编写,已经实际走通了以下环节:
- 在 NineData 中进入正确入口:
数据库 DevOps > 规范与流程 > 审批流程 > 外部流程渠道。 - 在 外部流程渠道 中确认 飞书 与 飞书 Lark 为两张独立卡片。
- 使用新的 Lark 应用完成 飞书 Lark 渠道绑定。
- 实际拿到 NineData 生成的 回调地址。
- 在 审批流程映射定义 中,实际进入了 新增审批流程定义 弹窗,并确认了
关联应用、名称、审批定义ID、审批定义字段四项配置。
同时,本文也保留了实测中的重要差异与限制,帮助新手少走弯路。
实测结论
- 国际版 Lark 的外部审批入口不是“飞书”卡片,而是 飞书 Lark 卡片。
- 当前版本中,勾选“自动初始化审批定义” 时,NineData 端会提示 未找到可用的审批模版。
- 当前版本中,审批流程映射定义 页面已经能识别新的 Lark 应用,但如果直接填入其他应用下的审批定义 ID,NineData 会返回
nd.sql.external.approval.template.not.found。 - 这意味着:Lark 外部审批接入的稳定路径是先绑定渠道,再手动准备 Lark 自己的审批定义,然后在 NineData 中做映射定义。
前提条件
- 已创建或加入组织,并且该组织已开通数据库 DevOps 企业版,同时请确保您的包年包月订阅未过期。
- 当前账号已切换到目标组织。更多信息,请参见切换到组织。
- 已通过目标组织的 Lark 管理员或应用管理员权限账号登录 Lark Developer。
- 已通过 系统管理员 权限账号登录 NineData。
- 已确认当前操作的 NineData 组织为 玖章测试。
注意事项
- 国际版 Lark 请使用 Lark Developer,不要使用飞书中国版开放平台替代。
- NineData 中的 飞书 与 飞书 Lark 是两条不同的外部审批渠道,请不要混用。
- 当前实测中,Lark 渠道绑定可以成功保存,但 自动初始化审批定义不可用。因此本文推荐的操作顺序是:先绑定渠道,再手动创建审批定义,再回到 NineData 创建映射定义。
- 当前实测中,复用旧的 飞书审批定义 ID 到 Lark 应用 会报错
nd.sql.external.approval.template.not.found,因此请为当前 Lark 应用准备自己的审批定义。
步骤一:在 Lark 创建并发布审批应用
访问 Lark Developer,登录目标 Lark 账号。
创建一个新的企业自建应用,或打开已有应用。
在 凭证与基础信息 页面,记录 App ID 和 App Secret。

在 权限管理 中开通审批相关权限。为了和 NineData 的现有对接逻辑保持一致,建议至少确认以下权限已经开通:
- 应用身份权限:
approval:approval - 应用身份权限:
approval:approval:readonly - 应用身份权限:
approval:definition - 应用身份权限:
contact:user.id:readonly
如果您的页面支持用户身份权限,建议同时开通对应的用户身份权限。
- 应用身份权限:
在 版本管理与发布 中创建版本并发布。
步骤二:在 NineData 绑定飞书 Lark 审批渠道
登录 NineData 控制台。
在左侧导航栏,依次单击:
数据库 DevOps规范与流程审批流程外部流程渠道
在右侧弹出的 外部渠道管理 面板中,确认当前存在 飞书、飞书 Lark、IT服务平台 三张卡片。

在 飞书 Lark 卡片下单击 立即配置。
在弹窗中填写以下信息:
参数 说明 AppID 填写步骤一中记录的 Lark App ID。 AppSecret 填写步骤一中记录的 Lark App Secret。 自动初始化审批定义 当前不建议勾选。 实测勾选后会提示“未找到可用的审批模版”。 单击 确定 保存配置。
保存成功后,再次打开该应用详情,记录页面中的 回调地址。
本次实测拿到的回调地址格式如下,仅供识别格式使用:
https://console.ninedata.cloud/api/inner/external/approval/callback/<orgId>?token=<token>
步骤三:在 Lark 配置事件与回调
回到 Lark Developer,打开同一个 Lark 应用。
在左侧导航栏,单击 事件与回调。
在 事件配置 中,将订阅方式设置为将事件发送至开发者服务器,然后把步骤二中记录的 回调地址填入请求地址。
保存后,在 已添加事件 中单击 添加事件。
搜索并添加 审批实例状态变更 事件。
保存配置。
步骤四:在 Lark 准备可用于映射的审批定义
由于当前版本下 自动初始化审批定义 未成功,因此需要手动准备一个 Lark 自己的审批定义。
访问 Lark 审批管理后台。
创建一个新的自定义审批。
为了让 NineData 更容易完成字段映射,建议优先使用以下控件:
- 单行文本
- 多行文本
- 单选
发布审批定义后,记录该审批定义的 审批定义 ID。
tip不要直接复用其他应用(例如飞书渠道)下已有的审批定义 ID。
本次实测中,复用旧飞书审批定义 ID 时,NineData 返回:nd.sql.external.approval.template.not.found这说明当前 Lark 应用需要使用属于它自己的审批定义。
步骤五:在 NineData 创建审批流程映射定义
回到 NineData 的 外部流程渠道 面板。
单击顶部页签 审批流程映射定义。

单击 添加审批流程定义。
在弹出的 创建审批流程定义 窗口中,完成以下配置:
参数 说明 关联应用 选择刚刚绑定成功的 飞书 Lark审批-cli_a93939bba438de17。名称 自定义映射定义名称,例如: Lark审批映射测试-20260318。审批定义ID 填写步骤四中准备好的 Lark 审批定义 ID。 正常情况下,系统会在填写 审批定义ID 后自动拉取 审批定义字段。
如果字段被成功拉出,再根据实际控件完成 平台字段 与 参数映射 的绑定。
步骤六:把映射定义绑定到具体审批流程
登录 NineData 控制台。
在左侧导航栏,依次单击:
数据库 DevOps规范与流程审批流程
在目标流程所在页面中,选择需要启用外部审批的环境或流程,单击其右侧 编辑。
勾选 启用外部审批流程。
在外部审批配置中:
- 左侧选择刚刚绑定的 飞书 Lark 应用
- 右侧选择步骤五中创建好的 审批流程映射定义
保存配置。
常见问题
1. 勾选“自动初始化审批定义”后提示“未找到可用的审批模版”
这是本次实测中稳定复现的问题。建议处理方式:
2. 在“审批流程映射定义”里填入审批定义 ID 后,字段没有被拉出
本次实测中,当使用旧飞书审批定义 ID F34A2338-D184-45D8-83B7-DD2BC250B257 时,NineData 调用:
POST /api/external/approval/template/form
返回:
nd.sql.external.approval.template.not.found
这说明该审批定义并不属于当前 Lark 应用,不能直接复用。请重新在 Lark 审批管理后台 下,为当前 Lark 应用准备一个可用的审批定义,再重新填写。
3. 映射定义弹窗里明明填了值,还是显示“暂无数据”
请依次检查:
关联应用是否已选到 飞书 Lark 应用,而不是飞书应用审批定义ID是否来自当前 Lark 应用- Lark 侧是否已完成 事件与回调 配置
- Lark 应用是否已经发布