Получить список всех частных каналов с Slack API
Я пытался получить список всех "групп" в моей команде Slack. Тем не менее, даже с правами администратора,groups.list
предоставляет только те группы, к которым принадлежит учетная запись владельца токена.
Самое близкое решение, которое я видел в своем исследовании, заключается в том, чтобы заставить бот сидеть в канале. Членство бота позволяет ему сообщать об этом на канале, но есть и материально-техническая проблема с доставкой бота в каждый частный канал, несмотря на то, что мы не можем перечислить их программно.
Код, который я использовал для поиска списков частных каналов:
import requests
import json
token = '...'
r = requests.post('https://slack.com/api/groups.list', data={'token': token, 'exclude_archived': 1})
if r.ok:
privatechannels = { c['id']: c['name'] for c in json.loads(r.text)['groups'] }
print(privatechannels)