投稿する
📚 n8n補助教材

Slack連携!n8nでメンションBOTを作る方法

n8nなどの自動化ツールを活用し、SlackでBotがメンションされた際にワークフローを自動開始させるための設定手順を解説します。

学習ポイント

  • Slack連携に必要なAPIトークン(Bot Token)の取得と権限設定の方法
  • Webhook URLを用いたSlackイベントサブスクリプションの認証手順
  • 特定のチャンネルにBotを招待してメンションを正常に受信・取得する方法

この動画では、SlackでBotがメンション(@Bot名)されたことを検知して、ワークフローを開始するための「Slackトリガー」の具体的な設定手順について解説しています。

1. Slackアプリの作成とスコープ設定

まずSlack APIの管理画面から「Create New App」を選択し、新規アプリを作成します。その後、「OAuth & Permissions」メニューから以下のスコープ(権限)をBot Token Scopesに追加します。

  • `app_mentions:read`: メンションを取得するために必須

  • `channels:read` / `channels:join`: チャンネル情報の読み取りや参加に必要

  • `chat:write` / `chat:write.public`: メッセージを送信するために必要

設定後、「Install to Workspace」をクリックしてアクセストークンを取得し、n8n側の認証情報に貼り付けます。

2. Webhook URLによるイベントサブスクリプションの設定

n8nのSlackトリガーノードで発行される「Test URL」をコピーします。Slack API管理画面の「Event Subscriptions」をONにし、「Request URL」の欄にコピーしたURLを貼り付けます。この際、n8n側を「Listen(待ち受け)」状態にしてから、Slack側で「Retry」や「Challenge」を行うことで正常に認証が完了します。

3. イベントの登録と疎通確認

「Subscribe to bot events」セクションにて、`app_mention`イベントを追加して保存します。最後に、Botを動作させたいSlackのチャンネルに `/invite @Bot名` で招待します。招待された状態でBot宛にメッセージを送ると、n8n側へ「こんにちは」などの送信内容がリアルタイムで届くようになります。