Skip to content

Slack 凭据#

您可以使用以下凭据验证这些节点:

支持的认证方式#

  • API 访问令牌:
    • Slack Trigger 节点必需使用此方式。
    • 可与 Slack 节点配合使用,但不推荐。
  • OAuth2:

相关资源#

更多关于该服务的信息,请参考 Slack API 文档

使用 API 访问令牌#

要配置此凭据,您需要拥有 Slack 账户以及:

  • 一个访问令牌

生成访问令牌的步骤如下,首先创建一个 Slack 应用:

  1. 打开您的 Slack API 应用页面。
  2. 选择创建新应用 > 从零开始
  3. 输入应用名称
  4. 选择您将开发应用的工作区
  5. 点击创建应用。应用详情页面将打开。
  6. 在左侧菜单的功能下,选择 OAuth 与权限
  7. 权限范围部分,为您的应用选择适当的权限范围。有关推荐权限范围列表,请参阅权限范围
  8. 添加权限范围后,向上滚动至 OAuth 令牌部分,选择安装到工作区。您必须是 Slack 工作区管理员才能完成此操作。
  9. 点击允许
  10. 复制机器人用户 OAuth 令牌,并将其作为访问令牌输入到您的 n8n 凭据中。
  11. 如果您将此凭据用于 Slack 触发器,请按照Slack 触发器配置中的步骤完成应用设置。

更多信息请参考 Slack API 快速入门指南

Slack Trigger 节点配置#

要将您的 Slack 应用与 Slack Trigger 节点配合使用:

  1. 进入 Features > Event Subscriptions 页面
  2. 开启 Enable Events 开关
  3. 在 n8n 中复制 Webhook URL 并将其作为 Request URL 填入您的 Slack 应用

    请求 URL

    Slack 每个应用只允许一个请求 URL。如果您想测试工作流,需要执行以下操作之一:

    • 先使用 测试 URL 进行测试,验证一切正常后再将 Slack 应用切换为使用 生产环境 URL
    • 直接使用 生产环境 URL 并开启执行日志记录
  4. 验证通过后,选择要订阅的机器人事件。使用 n8n 中的 Trigger on 字段来过滤这些请求。

    • 如需使用列表中未列出的事件,请将其添加为机器人事件,并在 n8n 节点中选择 Any Event

更多信息请参考 快速入门 | 配置应用监听事件

使用 OAuth2#

/// 注意 | 针对 n8n Cloud 用户的提示 云版本用户无需提供连接详细信息。选择 连接我的账户 即可通过浏览器完成连接。 ///

如果您正在自托管 n8n 并且需要从头配置 OAuth2,您需要一个 Slack 账户以及:

  • 客户端 ID
  • 客户端密钥

要获取这两项信息,请创建一个 Slack 应用:

  1. 打开您的 Slack API 应用 页面。
  2. 选择 创建新应用 > 从零开始
  3. 输入 应用名称
  4. 选择您将开发应用的 工作区
  5. 选择 创建应用。应用详情页面将打开。
  6. 设置 > 基本信息 中,打开 应用凭证 部分。
  7. 复制 客户端 ID客户端密钥。将这些信息粘贴到 n8n 的相应字段中。
  8. 在左侧菜单的 功能 下,选择 OAuth 和权限
  9. 重定向 URL 部分,选择 添加新的重定向 URL
  10. 从 n8n 复制 OAuth 回调 URL 并将其作为新的重定向 URL 输入到 Slack 中。
  11. 选择 添加
  12. 选择 保存 URL
  13. 权限范围 部分,为您的应用选择适当的权限范围。有关权限范围列表,请参考权限范围
  14. 添加权限范围后,转到上方的 OAuth 令牌 部分并选择 安装到工作区。您必须是 Slack 工作区管理员才能完成此操作。
  15. 选择 允许
  16. 此时,您应该能够在 n8n 凭据中选择 OAuth 按钮进行连接。

更多信息请参考 Slack API 快速入门。有关 OAuth 流程本身的更多详情,请参阅 Slack 的使用 OAuth 安装 文档。

权限范围(Scopes)#

权限范围决定了应用拥有哪些操作权限。

  • 如果您希望应用能够代表授权用户执行操作,请在用户令牌权限范围部分添加所需权限。
  • 如果您正在构建机器人应用,请在机器人令牌权限范围部分添加所需权限。

以下是 OAuth 凭据所需的权限范围列表,作为良好的起点:

权限名称 备注
channels:read
channels:write 不可用作机器人令牌权限
chat:write
files:read
files:write
groups:read
im:read
mpim:read
reactions:read
reactions:write
stars:read 不可用作机器人令牌权限
stars:write 不可用作机器人令牌权限
usergroups:read
usergroups:write
users.profile:read
users.profile:write 不可用作机器人令牌权限
users:read

常见问题#

令牌过期#

Slack 提供了令牌轮换功能,您可以为机器人和用户令牌启用此功能。这将使所有令牌在 12 小时后失效。虽然这对于测试可能有用,但使用启用了此功能的令牌的 n8n 凭证将在过期后失效。如果您想在生产环境中使用 Slack 凭证,必须关闭此功能。

要检查您的 Slack 应用是否启用了令牌轮换,请参阅 Slack API 文档 | 令牌轮换

如果您的应用使用了令牌轮换

请注意,如果您的 Slack 应用使用了令牌轮换功能,您将无法再次关闭它。您需要创建一个新的 Slack 应用并禁用令牌轮换功能。