Posted at

Slackのユーザ情報を取得して,CSVに出力する.

More than 1 year has passed since last update.


はじめに

Slackのユーザ情報をCSVに出力して,他のデータベースにインポートしたり,エクセルで確認したい.そんなとき次の操作を行います.


前提


Slackトークン

Slack トークンを取得する必要があります.

レガシートークンの方が操作自体は簡単です.

下記Qiita記事などが簡潔に説明しているます.

https://qiita.com/ykhirao/items/3b19ee6a1458cfb4ba21


jqコマンド

JSONから値を抽出るjqコマンドを利用します.

mac, Linuxの方はパッケージマネージャを利用してインストールしましょう.(brew, apt-get, yumなど)

Windows10の方は,Windows Subsystem for Linux上で操作するのが良いでしょう.


取得と変換


ユーザ情報を取得します.

users.listでユーザ情報を取得します.

curl https://slack.com/api/users.list?token=<TOKEN> > users.json


取得した情報を加工します.

jqコマンドを利用して必要な項目を抽出し,CSVとして出力しています.

jqコマンドの引数に欲しいパラメータを追加しましょう.

cat users.json | jq '.members[] | [.id, .name, .real_name] | @csv' > users.csv


まとめ

Slackからユーザ情報を取得,抽出し,CSVに出力しました.

以下の操作を行います.

curl https://slack.com/api/users.list?token=<TOKEN> > users.json

cat users.json | jq '.members[] | [.id, .name, .real_name] | @csv' > users.csv