Loading...
IT

【PowerAutomate】HTTP経由で複数のフローを連携させるメモ

MS PowerAutomate(旧MS Flow)のメモ。

ぐぐったけど意外と記事が無かったのでメモしておきます。

やりたいこと

PowerAutomateのトリガーである「HTTP要求の受信時」に対してアクションである「HTTP」を用いてキックし2つのフローを連携させます。

イメージ図

イメージはこんな感じ

トリガー:HTTP要求の受信時の設定

まずは上の図の青色のフローで使っている「HTTP要求の受信時」トリガーの設定から行っていこう。
早速答えから出すと以下のような形。

{
    "type": "object",
    "properties": {
        "{要素名}": {
            "type": "{データ型}"
        },
        "{要素名}": {
            "type": "{データ型}"
        },
        "{要素名}": {
            "type": "{データ型}"
        }
    }
}

※要素名:Json上での要素名。このトリガー以下のフローでデータを取り扱う際の変数名にもなります。
※データ型:PowerAutomate上で取り扱うデータ型、int,string,float,array等指定できる、詳しくは公式見てね

トリガーとなるHTTP要求の受信時には上記のような形で設定を行います。
実際の画面にするとこんな感じ。↓

設定初期状態だと「要求本文のJSONスキーマ」が空欄になっている。
上で紹介したJSONスキーマを改変してぶち込んでおけばとりあえず動きます。

設定で来たら「HTTP POSTのURL」を控えておこう。次のアクション設定で必要になります。

・補足:トリガーで入力した変数を後のアクションで使用する場合

本題とは離れるが、ちょっと前までは手入力しないといけなかったHTTP要求の受信時の変数。
現在では「動的なコンテンツ」経由で拾えるようになっているので特に高度なことは気にせず変数指定ができる。

アクション:HTTP

次はイメージ図の橙色のフローで利用するアクションの設定を行っていこう。
といっても何も難しいことはない。

まずは最終的な形から見ていく。

ここの「クエリ」に入力ができればいいのだけど、JSONの記載はBodyに書かないとダメなのでそれはできない。
上の図ではあらかじめ”作成”(変数)のアクションを使ってJson形式のArrayを作成しておき、これをHTTPの本文に代入するという方法を用いている。

なので

CreateArray(Action:作成)の「入力」では成形したJson形式の記述を。
上の例では1つ目と2つ目の変数の中身はTeamsのアダプティブカードから取得し、3つ目の変数は日付を変数から取得している。
データの取得の方法は人それぞれなので自由にしてもらって問題ない。
ただ、当たり前ながら”変数名”の部分はトリガーで設定した「HTTP要求の受信時」のものと同じ名称を利用しないと受け取れないので注意されたし。

HTTPのでは「方法」は”POST”指定、「URI」は先にトリガーの「HTTP要求の受信時」設定後に控えた「HTTP POSTのURI」を入力する。

ここまで設定できれば完成だ。
アクション側(橙色のフロー)のHTTPを動かせばHTTP経由でHTTP要求の受信時トリガーがキックされ青色のフローが起動する。

 

ということで以上、メモでした。