この記事は2015 tech-yuruyuru アドベントカレンダーの17日目の記事です。

なぜ、2日連続でエントリーしたのか。それは空いていたから。エントリーした時は出来る気がしたんですが。。書くテーマを決めて、内容の下調べも終えてからエントリーしないとダメだな。と反省しています。

そんなわけでゆるい話。

いろんな所でSlack使っているんですが、とあるチャンネルの記録だけを抜いて、特定の文字列を含む記事を保存しておきたいんですが、どうやるのかなぁ?と調べたので、それを書いておきます。

まず、公開ちゃんねる全部をexportする機能があるんですが、全部いらないし、大きくなるのでやらないです。バックアップを毎日しておきたい場合にはいいですね。

slack0

Slack APIってところを見るとchannels.historyというAPIがありますね。画面でパラメータを入力すればテストもできるようになっています。

まずは認証用のTokenを作成します。

slack3

すごい親切でhttps://api.slack.com/webでCreate tokenボタンを押すだけで取得できます。複数参加していたら複数分表示されています。

で、channels.historyにアクセスします。

slack1

でも、channelってところがチャンネル名じゃなくてcannelのIDじゃないとダメみたいです。と思ったら、それもchannels.listというAPIで取れるみたいです。

slack2

とれたchannelのIDをchannels.historyで指定してこれで特定のチャンネルの記事がとれました。

調べたものの、トークン作ると管理者にメールが飛ぶみたいなんで調べただけでやってないです。ははは。