Power Automateで承認依頼をTeamsに送る方法|アダプティブカードでその場で承認

はじめに
この記事では、Power Automate で承認依頼を Microsoft Teams に送り、上長がその場で承認/却下できる仕組みの作り方を、画像付きで解説します。
申請メールがメールボックスに埋もれて承認が止まる――そんな課題は、承認依頼を Teams に飛ばし、カード上のボタンで即決裁できるようにすれば解決します。
この記事を読めば、次の2通りの作り方が分かります。
- 方法①(かんたん版):
承認コネクタの「開始して承認を待機」だけで、Teams/Outlook に自動で承認カードが届く最短ルート - 方法②(本格版):アダプティブカードを自作し、Teams にボタン付きカードを投稿して応答を待ち受ける方法
このフローの全体像
題材は「休暇申請」です。申請者が Microsoft Forms で申請すると、上長の Teams に承認依頼が届き、ボタンを押すだけで承認/却下が完了。結果は申請者の Teams に自動で通知されます。
① Microsoft Forms に申請が送信される → ② 応答の詳細を取得 → ③ 開始して承認を待機(Teams にカード配信) → ④ 条件で承認/却下を分岐 → ⑤ 申請者の Teams へ結果を通知

事前準備
- ライセンス:承認(Approvals)は標準コネクタのため、Microsoft 365 があれば追加費用なしで利用可
- 申請の受け口:今回は Microsoft Forms の「休暇申請」フォーム(氏名・メールアドレス・休暇開始日・休暇終了日・休暇の種類)を使用
- 承認者:承認を行う上長のメールアドレス(社内ユーザー)
方法①:かんたん版「開始して承認を待機」
まずは標準コネクタだけで作る最短ルートです。承認 コネクタの「開始して承認を待機」を使うと、承認カードが 自動的に Teams(と Outlook)に配信されます。
Power Automate で「作成」→「自動化したクラウドフロー」を選びます。

トリガーに Microsoft Forms の「新しい応答が送信されるとき」を選び、対象フォーム(休暇申請)を指定します。

「応答の詳細を取得する」アクションを追加し、フォームIDと、トリガーの「応答 ID」を設定します。これで氏名・休暇種類などの回答内容を後続で使えます。

承認 コネクタから「開始して承認を待機」を追加します。

承認の種類は「承認/拒否 – 最初に応答」、タイトルに申請者の氏名(動的コンテンツ)、担当者に上長のメールアドレスを設定します。

承認結果で分岐させる(条件アクション)
承認の後に「条件」アクションを追加し、承認アクションの出力 「結果」が Approve と等しいかで分岐させます。

「はい(True)」と「いいえ(False)」のそれぞれに、後述の Teams 通知アクションを配置します。
申請者へ Teams で結果を自動通知
Teams コネクタの「チャットまたはチャネルでメッセージを投稿する」を使い、投稿先を「フロー ボットとチャットをする」、宛先を申請者にして結果を送ります。

同様に「いいえ(却下時)」の分岐にも、却下を伝えるメッセージを設定します。

動作確認
フローを保存し、Forms から休暇申請を送信してみます。

すると、承認者の Teams(承認アプリ)に承認依頼カードが届きます。タイトルに申請者名が反映されています。

コメントを入力して「承認」を押すと、承認が確定します。

続いて、フローの条件分岐が動き、申請者の Teams に「✅ 承認されました」という結果通知が自動で届きます。

Power Automate の実行履歴でも「成功」を確認できます。


ここまでが「かんたん版」。承認カードの体裁を細かく作り込まなくても、標準コネクタだけで申請→承認→通知まで一気通貫で動きます。
方法②:本格版 アダプティブカードで承認カードを自作
カードの見た目やボタン文言を自由にしたい場合は、Teams コネクタの「フローボットがチャットまたはチャネルにアダプティブカードを投稿し、応答を待機」を使います。カードの中身は JSON で定義します。

カードのJSONを設定する
アクションの「メッセージ」欄に、承認/却下ボタンを持つアダプティブカードの JSON を貼り付けます。各ボタン(Action.Submit)の data に action 値を持たせるのがポイントです。
{
"type": "AdaptiveCard",
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"version": "1.4",
"body": [
{ "type": "TextBlock", "text": "休暇申請の承認", "weight": "Bolder", "size": "Medium" },
{ "type": "TextBlock", "text": "〇〇さんから休暇申請が届いています。承認または却下を選択してください。", "wrap": true }
],
"actions": [
{ "type": "Action.Submit", "title": "承認", "data": { "action": "approve" } },
{ "type": "Action.Submit", "title": "却下", "data": { "action": "reject" } }
]
}
ボタンの応答値で分岐する
カードの後に「条件」を追加し、応答の動的コンテンツ body/data/action が approve と等しいかで分岐させます。これが、押されたボタンの値です。

動作確認
フローを実行すると、Teams に自作カードが届きます。承認/却下のボタンが並んでいます。

「承認」を押すとカードは「応答が送信されました」に変わり、フローの分岐が動いて結果通知が届きます。
つまずきやすいポイント
- カードが届かない:承認者・宛先には社内ユーザーのメールアドレスを指定する。外部ユーザーには届きません。
- ボタンを押しても進まない:方法②では条件の参照先を
body/data/actionにする(カード JSON のdataキーと一致させる)。 - 承認アクションの設定欄が出ない:先に「承認の種類」を選ぶと、タイトル・担当者などの欄が表示されます。
- 承認カードの場所:方法①のカードは Teams の「承認(Approvals)」アプリに届きます。チャットだけ見て「来ない」と勘違いしないように。
もっと発展させたいとき
承認まわりは、目的に応じて次の記事と組み合わせると一気に実用的になります。
メールで承認する基本形から学びたい方は「Power Automateで承認フローを作る方法|休暇申請をテンプレートから自動化」

課長→部長のように多段階で承認したい場合は 「Power Automateで多段階承認フローを作る方法|金額分岐」

承認以外の通知も Teams へ自動投稿したい場合は「Power AutomateでTeamsに定期メッセージを自動投稿する方法」

まとめ
- かんたん版は「開始して承認を待機」だけで Teams に承認カードが自動配信(標準コネクタ・プレミアム不要)
- 本格版はアダプティブカードを自作し、
body/data/actionの応答値で分岐 - 承認結果は条件アクションで分岐し、申請者の Teams に自動通知できる
申請者が Teams でその場で承認できるようになると、承認の滞留が一気に減ります。まずは標準コネクタのかんたん版から試し、カードを作り込みたくなったらアダプティブカード版へ。ノーコードで「Teamsで即決裁」の仕組みを作ってみてください。




