Image from page 249 of “The development of the chick; an introduction to embryology” (1919) flickr photo by Internet Archive Book Images shared with no copyright restriction (Flickr Commons)
I ended up doing this while pursuing some of the API integration stuff for our projects page. It doesn’t list the private pages and might be useful to someone.
$token = 'YOURTOKENHERE'; $channel_url = 'https://slack.com/api/channels.list?token='.$token.'&exclude_archived=true&pretty=1'; $channels = file_get_contents($channel_url); $data = json_decode($channels); $num_chan = sizeof($data->channels); echo '<h3>'.$num_chan.'</h3><ol>'; for($i=1; $i < $num_chan; $i++){ echo '<li>'.$data->channels[$i]->name . '</li>'; } echo '</ol>'
This was the byproduct of looking for a way to look up the ID for a particular channel which ended up looking like this.
function getSlackChannelId ($the_channel){ $token ='YOURTOKENHERE'; $channel_url = 'https://slack.com/api/channels.list?token='.$token.'&exclude_archived=true&pretty=1'; $channels = file_get_contents($channel_url); $data = json_decode($channels); $num_chan = sizeof($data->channels); for($i=1; $i < $num_chan; $i++){ $data->channels[$i]->name; if ($data->channels[$i]->name == $the_channel){ return $data->channels[$i]->id; } else { return ''; } } }