Skip to content

Slack 凭据#

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

支持的认证方法#

相关资源#

参考 Slack 的 API 文档了解有关该服务的更多信息。

使用 API access token#

要配置此凭据,您需要一个 Slack 账户和:

  • 一个 Access Token 访问令牌

生成访问令牌,创建 Slack 应用:

  1. 打开您的 Slack API Apps 页面。
  2. 选择 Create New App > From scratch
  3. 输入 App Name
  4. 选择您将开发应用的 Workspace
  5. 选择 Create App。应用详情打开。
  6. Features 下的左侧菜单中,选择 OAuth & Permissions
  7. Scopes 部分,为您的应用选择适当的范围。参考范围获取推荐范围列表。
  8. 添加范围后,转到上方的 OAuth Tokens 部分并选择 Install to Workspace。您必须是 Slack 工作区管理员才能完成此操作。
  9. 选择 Allow
  10. 复制 Bot User OAuth Token 并将其作为 Access Token 输入到您的 n8n 凭据中。
  11. 如果您在 Slack Trigger 中使用此凭据,请按照 Slack Trigger 配置 中的步骤完成应用设置。

参考 Slack API 快速入门了解更多信息。

Slack Trigger 配置#

要在 Slack Trigger 节点中使用您的 Slack 应用:

  1. 转到 Features > Event Subscriptions
  2. 开启 Enable Events 控制。
  3. 在 n8n 中,复制 Webhook URL 并将其作为 Request URL 输入到您的 Slack 应用中。

    Request URL

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

    • 首先使用您的 Test URL 进行测试,然后在验证一切正常后将您的 Slack 应用更改为使用 Production URL
    • 使用带有执行日志的 Production URL
  4. 验证后,选择要订阅的机器人事件。使用 n8n 中的 Trigger on 字段来过滤这些请求。

    • 要使用列表中没有的事件,将其添加为机器人事件并在 n8n 节点中选择 Any Event

参考快速入门 | 配置应用以进行事件监听了解更多信息。

使用 OAuth2#

n8n 云服务用户注意事项

云服务用户无需提供连接详细信息。选择连接我的账户通过浏览器进行连接。

如果您自托管 n8n并需要从头配置 OAuth2,您需要一个 Slack 账户和:

  • 一个 Client ID 客户端 ID
  • 一个 Client Secret 客户端密钥

要获取两者,创建 Slack 应用:

  1. 打开您的 Slack API Apps 页面。
  2. 选择 Create New App > From scratch
  3. 输入 App Name
  4. 选择您将开发应用的 Workspace
  5. 选择 Create App。应用详情打开。
  6. Settings > Basic Information 中,打开 App Credentials 部分。
  7. 复制 Client IDClient Secret。将这些粘贴到 n8n 中的相应字段。
  8. Features 下的左侧菜单中,选择 OAuth & Permissions
  9. Redirect URLs 部分,选择 Add New Redirect URL
  10. 从 n8n 复制 OAuth Callback URL 并将其作为新的 Redirect URL 输入到 Slack 中。
  11. 选择 Add
  12. 选择 Save URLs
  13. Scopes 部分,为您的应用选择适当的范围。参考范围获取范围列表。
  14. 添加范围后,转到上方的 OAuth Tokens 部分并选择 Install to Workspace。您必须是 Slack 工作区管理员才能完成此操作。
  15. 选择 Allow
  16. 此时,您应该能够选择 n8n 凭据中的 OAuth 按钮来连接。

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

范围#

范围决定应用具有什么权限。

  • 如果您希望您的应用代表授权应用的用户行事,在 User Token Scopes 部分下添加所需的范围。
  • 如果您正在构建机器人,在 Bot Token Scopes 部分下添加所需的范围。

以下是 OAuth 凭据所需的范围列表,这是一个很好的起点:

Scope name Notes
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

常见问题#

Token expired 令牌过期#

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

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

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

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