kintone Webhook & Microsoft Power Automate を使って Slack に投稿する

目次

はじめに

便利なコミュニケーション手段として、 Slack (External link) を利用している企業やプロジェクトチームも多いのではないでしょうか?
kintone アプリでのレコード登録やプロセス更新のタイミングによって、kintone Webhook を利用した Slack の Channel(グループ)に通知してみましょう。
環境がそろっていると 3 分で連携できました。
Webhook とは、Web アプリケーションでイベントが実行された際、外部サービスに HTTP で通知するしくみです。
Web アプリケーション同士を連携するときの考え方のひとつです。

Webhook を使ったしくみ

今回は、 Microsoft Power Automate (External link) を利用した連携を実現してみたいと思います。

完成形の画面

準備

利用するサービス、API

各サービスの環境はご準備ください。

Slack

Channel を作成

今回は「demo」チャンネルを作成します。

Microsoft Power Automate

事前にサインアップをしたうえでフローを作成してください。

フローの作成

フローを作成するメニューから、手動でフローのトリガーを与える「インスタントクラウドフロー」を選択します。

「HTTP 要求の受信時」トリガーの選択

「このフローをトリガーする方法を選択します」から「HTTP 要求の受信時」を選択し、「作成」ボタンをクリックします。

「要求本文の JSON スキーマ」

今回はレコード登録時のメッセージを Slack で投稿するため、次の JSON をコピーします。
JSON は JSONschema.net (External link) の Schema に準拠したものです。各プロパティの詳細は以下のとおりです。

  • app > name :アプリ名
  • recordTitle :レコードタイトル
  • url :レコードへ移動できる URL
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "type": "object",
  "properties": {
    "app": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        }
      }
    },
    "recordTitle": {
      "type": "string"
    },
    "url": {
      "type": "string"
    }
  }
}

貼り付け後のイメージ

グレーアウトされている URL 欄は保存後に生成されます。

「Slack」アクションの追加

「新しいステップ」をクリックし、「Slack」を検索して「メッセージの投稿(V2)」を選択します。
Slack アクションの追加後、投稿先アカウントの認証を求められます。

投稿メッセージの情報入力

メッセージテキストは文字を入力しつつ、右側の要求リストから動的なコンテンツを選びます。

  • チャネル名:#demo
  • ボット名:kintone-bot(任意)

フローの作成と保存

フロー名を「kintone > Slack 投稿メッセージ」に変更し、「保存」をクリックします。

HTTP POST の URL の確認

保存することで、HTTP POST URL が確定するため、マイフローから作成したフローを開き、「HTTP POST の URL」をコピーします。
この URL は、kintone の Webhook 機能で利用します。

kintone Webhook

事前に準備したアプリの設定画面を操作し、レコード追加して完成です。

Webhook の追加

アプリの設定画面に移動し、 Webhook > Webhook の追加画面を表示し、Microsoft Power Automate でコピーした URL を設定します。
kintone の「Webhook URL」の入力欄には、コピーした文字列の https:// 以外の部分をコピーしてください。
Webhook 保存後は、必ずアプリの設定画面に移動し、「アプリを更新」をクリックします。

レコードを追加して Slack で通知

kintone アプリに戻り、レコードを入力して保存すると、Slack で投稿されます。

おわりに

いかがでしょうか。
今回は、Microsoft Power Automate の「HTTP 要求の受信時」トリガーと Slack の「メッセージの投稿」アクションを使って、
kintone から Slack への投稿を実現してみました。
JSON 形式を設定することにはなりますが、ノンプログラミングで数分以内に連携できると思います。

参考

Slack Incoming Webhook を利用して、kintone アプリから JavaScript で活用したプログラム Tips もあります。

information

この Tips は、2022 年 2 月版 kintone で動作を確認しています。