12
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

SlackAdvent Calendar 2020

Day 19

Slack API種類が多すぎて分からない人のための大雑把な解説

Last updated at Posted at 2020-12-18

はじめに

「Slack API触りたいけど、なんかいっぱいあってよく分からん!」
と言う人が、全体像と、「とりあえずこれをやれば良いんだな」と言うのを理解できるようになるための記事です。
細かい使い方については省いています。

結局何使えばいいの?

とりあえず Web APIEvents API を使えるようになれば大体のことはできるようになります。

Slack APIは大きく分けて2種類

なんか色々と種類があるSlack APIですが、大きく分けると

  • 自分からリクエストを送るAPI
  • Slackからリクエストが送られてくるAPI

この2つだけです。

自分からリクエストを送るAPI

図表-13.jpg.jpeg

用途の例

  • 特定のチャンネルやDMにメッセージ送信
  • チャンネル一覧や、メンバー一覧など、何らかの情報を取ってくる

解説

Slackに能動的に動いてもらいたい場合に使います。

Web APIは多くのことができますが、Incoming Webhookは基本メッセージ送信だけを担当します。
最初はIncoming Webhookを使ってみて、慣れたらWeb APIに移っていきましょう。

Slackからリクエストが送られてくるAPI

図表-15.jpg.jpeg

用途の例

  • 送られたメッセージに対して返信を返す(一般的なチャットボットのイメージ)
  • メッセージ上の出席or欠席ボタンをクリックしたら、出欠がDBに保存されて、返信が返ってくる

解説

Slack上での動作に対して、反応を返して欲しい場合はこちらを使います。
自分がレスポンスを返す側なので、自作のコードをサーバー上に公開しないといけません。
大体難しいのはこっち。

基本はEvents APIを使います。
必要に応じて、コマンドが使いたければSlash Command、リッチなUIが使いたければ、Interactive Componentsを組み合わせていくイメージ。

それぞれのAPIの出来る範囲

図表-17.jpg.jpeg

設定項目6種類について

image.png

色々ありますが、Web APIとEvents APIを使う上で、最低限必要な設定はPermissionsとEvent Subscriptionsだけです。
(Botsはインストールすると自動でチェックが入ります。)

参考

12
5
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
12
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?