Power Automate で下書きメール作成
Power Automate クラウド フローでメールを自動的に送信するアクションを利用するシーンは多くあると思いますが、フロー内で自動的に送信するのではなく下書きフォルダーに入れておきたいケースはないでしょうか。
先日セミナー受講者の方にご質問いただき、また弊社内でも実際に利用している内容なので同様のことを検討される方もいらっしゃるかなと、ご紹介します。
メールを送信する場合は Office 365 Outlook のメールの送信アクションを利用しますが、Office 365 Outlook のアクション群にメールの下書きを作成するアクションはないため、Graph API を利用して設定します。
Graph API でのメール操作 参考 URL → https://docs.microsoft.com/ja-jp/graph/api/user-post-messages によると下書きメールを作成する場合の要求例は以下のようです。
POST https://graph.microsoft.com/v1.0/me/messages
Content-type: application/json
{
"subject":"メール件名",
"importance":"Normal",
"body":{
"contentType":"HTML",
"content":"本文 HTML 形式"
},
"toRecipients":[
{ "emailAddress":{"address":"宛先"} }
]
}
[HTTP 要求を送信します] アクションで次のような設定を行います。件名や本文、宛先は動的コンテンツを差し込む感じになりますね。
ちなみに弊社では受講案内を複数の方に送付しなければいけない場合などに、csv でコース名や日付、宛先の一覧をシステムからダウンロードして用意しておき、まとめて複数の下書きメールを作成しています。実際に送付する前には担当者が最終チェックをしてから手動で送信しています。お問合せ履歴などから特定の方にコメントをメールに追加したいことがあったりと定型文ではない内容をちょい足ししたいことがあるため、いったん下書き保存としています。
全体像はこんな感じで、csv ファイルを取得 → リスト形式に変換 → メールの本文を変数に → csv から読み込んだ内容を Apply each で繰り返し下書き保存を作成する といった形です。
またセミナーでご質問いただいた方は最終的に Power Automate Desktop を用いて自動化されたそうです。他にも PAD で行いたい操作がある場合だとそちらもありですね。PAD にもメールの下書きを作成するアクションはないため、UI 操作を自動化することで設定する形になると思います。
以上、クラウドフローでメール下書き保存のご紹介でした。