LoginSignup
4
1

More than 5 years have passed since last update.

Slack APIとAdvanced REST client(Chrome拡張機能)でチャンネルへの投稿を試す

Posted at

SlackAPIを使った投稿を試してみたくてやってみた。
簡単そうに見えた(結果的には簡単だった)けど、ものわかりの悪い私は無駄に時間かかってしまったのでメモ。

基本的には下記ページの通り。わかりやすくて感謝。
Slack API 推奨Tokenについて

不特定多数の人に使ってもらうアプリにするとかだったら、ユーザ各自に認証してもらう必要があるので、上記ページの「1. RedirectとResponseを利用した方法」が必要になるが、ひとまず試してみるだけということで上記ページに従う。

■ 私が悩んだ(つまづいた)ところ。

  • チャンネルに自分の名前で投稿したい場合の権限は「メッセージをユーザーとして送信します chat:write:user」
  • 「chat:write:user」はAPI名ではない。チャンネルに自分の名前で投稿したい場合のAPIは「chat.postMessage」
  • リダイレクトURLの設定は不要(上述の「1. RedirectとResponseを利用した方法」になると必要)
  • APIの公式リファレンスはここ→ https://api.slack.com/methods
  • API公式リファレンス(例:https://api.slack.com/methods/chat.postMessage) に「Tester」ってタブがあるけど、これで試すには非推奨のLegacyTokenを作る必要がある。(それでも動いたっていうのが試せるから、作って試す価値はあった。超簡単だし。)

■ ところでHTTPリクエストどうやって試すん?

Google Chrome拡張機能のAdvanced REST clientを使った。

  • methodはPOST
  • パラメータ設定はVariablesではなく、Bodyで設定する
  • Body content typeはapplication/x-www-form-urlencoded (公式APIリファレンス参照)

上記設定できておらず、ずっと
{ "ok": false, "error": "not_authed" }
ってなって無駄に時間かかってしまった。。。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1