使用Slacks Bolt框架执行以下操作时:
app.client.conversations.history({
token: token,
channel: channelId,
latest: messageId,
count: 1
})
我得到Error: An API error occurred: missing_scope
。
我正在传递Bot令牌(指示的文档受支持https://api.slack.com/methods/conversations.history),并且已经向我的oAuth和权限范围添加了channels.history
和channels.read
范围,因此我是真烂。
以前有人遇到过吗?
答案 0 :(得分:1)
如果您想使用conversations.history
从公共频道提取消息,则您的机器人令牌将无法使用。它仅具有用于直接消息通道的内置范围,并且不能添加范围。
Bot用户令牌可以将此方法用于直接消息和多方 直接的消息对话,但缺乏足够的使用权限 在公共和私人频道上都采用这种方法。
来自bot token documentation page:
Bot用户令牌不能添加基于资源的OAuth范围, OAuth安装流程中请求的除bot以外的所有作用域 对漫游器用户令牌无效
因此解决方案是将Oauth访问令牌(也称为用户令牌)与所需范围一起使用。