关于 n8n 中 Lark 表单注册的介绍

将 Lark 表单与 n8n 集成为您的工作流程自动化打开了许多可能性。当新表单提交或创建审批时,n8n 可以自动接收通知并根据您设置的工作流处理数据。然而,要建立此连接,您需要正确执行表单与 Lark API 的注册(订阅)流程。.

在本文中,我将详细指导您 3 个基本步骤来注册一个新的 Lark 表单。完成后,您可以为未来任何表单重复使用此流程,而无需从头摸索。.

1. 获取 Approval Code(表单标识码)

Approval Code 是 Lark 系统中文档的唯一 ID。这是 Lark 知道 n8n 想要“监听”哪个表单的最重要信息。每个表单都有一个单独的代码,您需要获取正确的代码以确保 webhook 正常工作。.

获取 Approval Code 的方法

步骤1: 登录 Lark 并访问您的审批或表单管理部分。.

步骤2: 打开您想要与 n8n 集成的表单。您可以在设计(Design)模式或审批管理(Approval Management)部分打开表单。.

步骤3: 查看浏览器地址栏 URL。Approval Code 通常直接出现在 URL 中,可能出现在参数后 definitionCode= 或位于斜杠之间。.

具体示例

假设您打开的表单 URL 是:

https://example.larksuite.com/approval/definitionCode=8C49EDF7-8116-448C-8131-83D2071B632E

那么您的 Approval Code 就是: 8C49EDF7-8116-448C-8131-83D2071B632E

请复制此代码并保存到安全位置,您将在第 3 步中使用它。.

2. 获取 Tenant Access Token(租户访问令牌)

Tenant Access Token 是一个认证码字符串,帮助 Lark API 确认您的应用(在此例中是 Approval-N8N 应用)有权对表单执行操作。这是许多人在首次设置时经常忽略或不知道如何获取的信息。.

为什么需要 Tenant Access Token?

Lark 使用 OAuth 2.0 机制保护 API。发送到 Lark API 的每个请求都需要在 header 中包含有效 token 进行认证。如果缺少 token 或 token 无效,API 将返回 401 Unauthorized 错误。.

获取 Tenant Access Token 的最快方法

方法 1:使用 Lark API Explorer(推荐新手使用)

  1. 访问 Lark API Explorer (通常地址为 https://open.larksuite.com/api-explorer).
  2. 在左上角,选择您已创建的正确 App(例如:Approval-N8N)。.
  3. Lark 将自动显示一个以开头 t- 在旁边的框中。这就是您的 Tenant Access Token。.
  4. 复制整个 token 字符串(包括部分 t-).

方法 2:调用 API 获取 Token(适用于有经验的用户)

您也可以直接调用端点 /auth/v3/tenant_access_token/internal 使用 App ID 和 App Secret 获取 token。但是,此方法更复杂,并且要求您管理 App 凭据。.

关于 Token 有效期的注意事项

此 token 仅在 2 小时内有效。. 2 小时后,token 将过期,您需要获取新 token。这就是为什么在文章末尾的“小贴士”部分,我将指导您如何自动化获取此 token,而无需每次手动操作。.

如果您是第一次设置并且只想测试,那么从 API Explorer 手动获取 token 就足够了。但如果您需要注册多个表单或希望系统长期运行,请参阅文章末尾的自动化部分。.

3. 在 n8n 中配置 HTTP Request 节点

在获得两个重要信息(Approval Code 和 Tenant Access Token)后,您将使用它们在 n8n 中配置一个 HTTP Request 节点。此节点将向 Lark API 发送 subscribe 命令,要求 Lark 在表单发生事件时向 n8n 发送 webhook。.

详细配置步骤

步骤 1:在 n8n 中创建一个新的 HTTP Request 节点

在您的工作流中,添加一个新节点并选择类型 HTTP Request.

步骤 2:设置 Method

选择 method 为 POST. 。这是向 Lark API 发送 subscribe 命令的标准 method。.

步骤 3:设置 URL

URL 将具有以下形式:

https://open.larksuite.com/open-apis/approval/v4/approvals/{{Approval_Code}}/subscribe

其中,您需要替换 {{Approval_Code}} 为步骤 1 中获取的 Approval Code。.

示例: 如果您的 Approval Code 是 8C49EDF7-8116-448C-8131-83D2071B632E, 则完整 URL 将是:

https://open.larksuite.com/open-apis/approval/v4/approvals/8C49EDF7-8116-448C-8131-83D2071B632E/subscribe

步骤 4:设置 Headers

Headers 部分非常重要,因为它包含认证信息。您需要添加一个新的 header,信息如下:

  • Name: 授权
  • Value: Bearer [Tenant_Access_Token]

极其重要的注意事项: 必须有字 Bearer (大写字母 B) 和一段代码 token 前的一个空格。许多人犯的错误是忘记空格或写错 Bearer,导致 API 返回认证错误。.

示例: 如果您的 token 是 t-g1044ghHGHJKL..., 那么 header 中的值将是:

Bearer t-g1044ghHGHJKL...

步骤 5:检查并执行

配置完成后,按 Execute 测试。如果一切正确,您将收到来自 Lark API 的成功响应,确认表单已成功订阅。.

💡 小提示:自动化获取下次 Token

如前所述,Tenant Access Token 仅有效 2 小时。如果您需要注册多个表单或希望系统自动续期 token,您应该创建一个单独的工作流来自动化此过程。.

自动化工作流包含 2 个节点

节点 1:自动获取 Tenant Access Token

创建一个 HTTP Request 节点,配置如下:

  • Method: POST
  • URL: https://open.larksuite.com/open-apis/auth/v3/tenant_access_token/internal
  • Body (JSON):
{
  "app_id": "YOUR_APP_ID",
  "app_secret": "YOUR_APP_SECRET"
}

此节点每次执行都会返回一个新 token。您可以将此 token 保存到变量中以供下一个节点使用。.

节点 2:使用 Token 订阅表单

使用节点 1 的 token 发送如步骤 3 所示的订阅命令。您可以使用表达式 {{$node["Node1"].json["tenant_access_token"]}} 从节点 1 的输出中获取 token。.

自动化的好处

使用此工作流,每次您需要注册新表单时,只需:

  1. 从 URL 获取 Approval Code (30 秒)
  2. 将 Approval Code 粘贴到节点 2 (10 秒)
  3. 执行工作流 (5 秒)

不再需要手动进入 API Explorer 获取 token!

总结

在 n8n 中注册 Lark 表单并不复杂,只要掌握 3 个基本步骤:获取 Approval Code、获取 Tenant Access Token 和配置 HTTP Request 节点。设置完成后,您可以利用 n8n 的强大功能自动化所有相关表单流程。.

如果您在设置过程中遇到困难或希望我发送自动获取 token 的工作流模板,请在下方留言!

DPS.MEDIA