使用Slack API获取对话列表

问题描述 投票:0回答:1

默认情况下,根据Slack Document,在给出限制的时候返回200个频道。 我是通过类型=“ private_channel,public_channel”获取私人渠道和公共渠道。

如果我通过类型= public_channel,limit 1000或9999,

162频道返回
  1. 如果我通过类型= private_channel,public_channel具有限制 1000或9999,
  • 105频道返回
    任何人都可以回答。
在该API中分页的工作方式,即使总收集总收集中有更多结果,也可能会获得比您要求的结果数量少。您需要检查结果是否还有其他页面,然后爬行所有结果以构建完整的集合。
    这是因为在后端检索数据的方式 - 包括存档的数据,其他类型的数据 - 结果发生的所有过滤发生在获取数据之后,因此需要其他API调用才能获得获得要过滤的数据窗口,然后向您展示。
  • 相关的
  • 文章:

即使还有其他结果需要检索,也可能会收到比您指定的限制更少的结果。避免诱惑检查结果的大小与限制的限制,以结论结果已完全返回。相反,请在response_metadata对象中检查next_cursor值以确保其为空,null或不存在。
slack slack-api slack-commands slack-block-kit slack-dialog
1个回答
0
投票

这是Slack API的问题,它们在这里

出于某种原因,解决方法是将您的呼叫呼叫分开。当您单独打来电话时,他们不会遇到同样的问题。

因此,您可以做类似的事情:

def get_public_conversations(): return slack.conversations_list(type=public_channel) def get_private_conversations(): return slack.conversations_list(type=private_channel)

应该在返回所有类型的渠道时,这应该始终如一。

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.