You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Slack API获取用户所属的全部工作区列表?

问题说明

通过Sign in with Slack获取到用户访问令牌(user access token)后,调用身份查询接口的返回示例如下:

{
  "ok": true,
  "user": {
    "name": "arbxxxxxxx",
    "id": "U0XXXXXXX",
    "email": "arbxxxxxxx@xxxxxxx.com"
  },
  "team": { "id": "T0XXXXXXX" },
  "response_metadata": {
    "scopes": [ "identity.basic", "identity.email", "openid" ],
    "acceptedScopes": [ "identity.basic" ]
  }
}

上述返回结果仅包含触发本次授权流程的单个工作区信息:team: { id: 'T0XXXXXXX' },不会直接返回该用户加入的其他工作区数据。

解决方案

Slack有严格的工作区数据隔离机制,不存在可通过单个工作区签发的用户令牌,直接跨工作区拉取用户所有所属工作区的公开接口,要获取对应数据需要按实际场景处理:

  • 若你需要获取所有安装过你的应用的工作区中,该用户的归属记录:需要在自有服务端持久化存储授权数据。每次用户在任意工作区完成Sign in with Slack授权流程时,将接口返回的用户邮箱、对应工作区ID、该工作区下的用户ID做关联存储。后续需要查询该用户关联的所有工作区时,直接从自有数据库中匹配对应用户邮箱的关联记录即可。
  • 若你需要获取用户加入的、未安装你应用的全部工作区列表:Slack未开放对应查询能力,这类数据属于用户隐私范畴,官方没有提供跨工作区的全量查询入口,无法通过接口获取。
  • 若你对接的是Slack企业版组织:应用拿到企业级管理权限对应的授权范围后,可以调用企业组织维度的用户查询接口,拉取该用户在整个企业组织下归属的所有工作区信息。但这类权限仅对企业管理员授权的内部应用开放,普通第三方公开应用无法申请。

内容的提问来源于stack exchange,提问作者Arbrim Rashiti

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 05:18:29