AppSheet Automationでは、Webhookによって他サービスとの連携ができます。
ということはPower Automateとも連携できるはずなので、さっそく試してみました。
Power Automate側のフロー
使用するのは「HTTP 要求の受信時」トリガーで、今回はテスト目的なので「要求本文の JSON スキーマ」を下記のように設定しました。
{ "type": "object", "properties": { "message": { "type": "string" } } }
フローを保存したら「HTTP POST の URL」をコピーしておきます。
AppSheetアプリの設定
Power Automate側の準備ができたら今度はAppSheetの「Automation」から下記のようにタスク設定を行います。
- Event Type:Data Change(Adds and updates)
- Task:Call a webhook
- Preset:Custom
- Url:Power Automateフローの「HTTP POST の URL」
- HTTP Verb:POST
- HTTP Content Type:JSON
- Body:下記JSON
{ "message": "<<[app_name]>>" }
上記JSONの「<<[app_name]>>」部分はAppSheetのテンプレート変数で、「<<[列名]>>」とすることで指定した列の値(今回の場合は「app_name」列)を取得できます。
その他組込み変数も用意されているので、詳細は下記のヘルプページをご参照ください。
アプリを保存したらAppSheet側の準備も完了です。
動作確認
Power AutomateとAppSheet、両方の準備ができたのでデータを更新して動作確認を行います。
結果は上図の通りで、AppSheetアプリからPower Automateフローにデータを渡すことができました。
今回使用した「HTTP 要求の受信時」トリガー(要求コネクタ)はプレミアムなので有償ライセンスが必要となりますが、Power Automateで用意されている膨大なアクションを活用できるので、処理の幅は大きく広がります。
もちろんIFTTT等Webhookに対応しているサービスは他にもあるので、必ずしもPower Automateを使用する必要は無いのですが、デスクトップフロー(Power Automate for desktop)によって、APIに対応していないローカルなアプリケーションともノーコード(ローコード)で連携可能なPower Automateを利用するメリットは、非常に大きいのではないかと思います。
Google Workspace × AppSheet × Power Automate、コストの問題はありますが、中々良い組み合わせかもしれません。
この記事へのコメントはありません。