技術情報ブログ
Power Platform
2022.05.11

Power Automate:メール送信時にメッセージIDを取得する方法

Power Automate:メール送信時にメッセージIDを取得する方法

こんにちは。アーティサン株式会社の小刀稱(ことね)です。

今回はPower AutomateのTipsの紹介です。

Power Automateでフローを作成する際、「あるフローでメールを送信し、別のフローでそのメールに返信したい」という要望はありませんか?

Power Automateでメールを返信する際、メールに返信するアクションを用います。
また、このアクションを用いる際は、メッセージIDが必須となります。

Power Automateでの「メールを送信する」アクション
Power Automateでの「メールを送信する」アクション

このメッセージIDですが、Power Automateでメールを受信した際には取得することができますが、
Power Automateからメールを送信した際には取得することはできません。

そこで、今回はPower Automateでメールを送信した際にメッセージIDを取得する方法についてお伝えします。
Power Automateでフローを作成したことがある方に向けた記事です。

 

Power Automateでメールを受信した時

最初に、Power Automateでメールを受信した際にメッセージIDを取得する方法についてお伝えします。
こちらはとても簡単です。

作成したフローは以下です。

単純に新しいメールが届いたときというトリガーを用いることで、メッセージIDを取得できます。

Power Automateでメールを受信した際にメッセージIDを取得する方法
Power Automateでメールを受信した際にメッセージIDを取得する方法

 

Power Automateからメールを送信した時

続いて、Power Automateからメールを送信した際にメッセージIDを取得する方法についてお伝えします。

まずはメールを受信した時と同じように、メールの送信アクションからメッセージIDが取得できるか試してみました。 結果としては、メールの送信アクションからメッセージIDは取得できないことが判明しました。

「メールの送信」アクションからメッセージIDは取得できない
「メールの送信」アクションからメッセージIDは取得できない

以下では、上記のフローを一工夫することで、Power Automateからメールを送信した際でもメッセージIDを取得する方法をお伝えします。

 

対策

以下の流れにより、メッセージIDを取得します。

また今回作成したフローを先に紹介します。

Power Automateからメールを送信した際にメッセージIDを取得する方法
Power Automateからメールを送信した際にメッセージIDを取得する方法

以降では、それぞれの手順について説明します。

 

メール送信後、「送信済みアイテム」へメールが格納されるまで待機

大まかな流れとしては、メール送信後、「送信済みアイテム」から送信したメールを抽出すればよいのですが、 メールを送信した後、「送信済みアイテム」へメールが格納されるまで一定時間がかかるため、「遅延」アクションを用いて待機します。

今回は、1分の待機時間を設定しました。

Power Automateからメールを送信した際にメッセージIDを取得する方法:待機
Power Automateからメールを送信した際にメッセージIDを取得する方法:待機

 

「送信済みアイテム」から送信したメールを抽出

続いて、「送信済みアイテム」から先程送信したメールを抽出します。

「メールを取得する」アクションを用いて、検索条件を設定することにより、先程送信したメールを抽出します。
今回は、「件名フィルター」を用いて先程送信したメールを抽出しています。
また、設定する際のポイントとしては、以下点です。

  • フォルダー:「送信済みアイテム」に設定

  • 未読メッセージのみを取得する :「いいえ」に設定

※“未読メッセージのみを取得する”はデフォルトで「はい」となっているため、必ず「いいえ」と設定してください。
(私はこの設定値に気づかず、なぜメールが取得できないのか?と悩みました…)

Power Automateからメールを送信した際にメッセージIDを取得する方法:メールを取得する
Power Automateからメールを送信した際にメッセージIDを取得する方法:メールを取得する

 

メッセージIDを取得

最後に、メッセージIDを取得します。

メールを取得するアクションで得た出力結果は配列となるため、first()関数を用いて、最初の要素のメッセージIDを取得します。

Power Automateからメールを送信した際にメッセージIDを取得する方法:メッセージIDの取得
Power Automateからメールを送信した際にメッセージIDを取得する方法:メッセージIDの取得

first()関数や上記の式を作成するまでの詳細については、以下のブログを参照してください。

こちらでメッセージIDを取得することができました!

 

おわりに

今回はPower Automateでメールを送信した際に、メッセージIDを取得する方法についてお伝えしました。

Power Automateが送信したメールに対して、別のフローからメールを返信する際には、
メールを送信した際にメッセージIDを取得する必要がありますので、こちらの方法をお試しいただければ幸いです。

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当:小刀稱知哉

小刀稱知哉

大分県出身(温泉大好き♥♥)、現在は東京都在住

1990年4月9日生まれ

30才にしてメーカーの技術営業からIT業界にジョブチェンジ!!!

趣味は読書

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当しております!

シェアする
記事カテゴリ
最新記事
2024.04.17

Power Apps・Power Automateの勉強方法(1)

2024.04.03

非エンジニア【(元)自治体職員】が半年間ローコード開発をしてみたら

2024.03.27

Power Automateのベストプラクティス・アンチパターン(5)【Apply to each×コンカレンシー×変数の設定はNG】

2024.03.20

Power Apps×Teams:Teams上からPower Appsを実行する方法

2024.03.13

Power Apps:SharePointリストと連携したカレンダーアプリを自作してみよう

モデル駆動型アプリPower AppsPower PlatformSharePointExcelPower AutomateC#attributevalidationローコードAngularAccessInfoPathMatTableAngular Materialデータ構造SortByColumns関数TypeScriptHTMLEF CoreマイグレーションFramework CoreAttribute directivesO/Rマッパーazure sql databaseCase式HTTP RequestCSSxUnit.Net Core 3.1VSCode.Net Core Test ExplorerDataverse for Teamsitem関数Google MapsMarker ClustererRANK()関数Dynamics 365 SalesMicrosoft TranslatorマーカークラスタリングライブラリtailwindcssマルチテナントドロップダウンメニューBreakpointObserverメディアクエリスマホPCレスポンシブ入門初心者中級者キャンバスアプリDatePickerDropdownviewビューアクセス制限承認リマインドSetForAllUpdateContextロードマップ技術It情報技術メッセージIDメールfirst()関数nest入れ子動的リストcollectionコレクション複数の添付ファイル承認フローformエクスポートインポートカスタマイズcomponentダイアログコンポーネントdialogTips新機能変数検索Microsoft 365グループセキュリティグループ送信元メールの送信差出人インスタントクラウドフロー自動化したクラウドフロー委任VBAエラーエクセルerror復元restorePower BI個人列ユーザー列SharePoint Onlineリスト非表示アプリ[市民開発者構築自動化したクラウド フローフローの種類インスタント クラウド フロースケジュール済みクラウド フローレスポンシブ レイアウトresponsive layoutデータ行の制限引き継ぎ退職所有者を変更異動LoopMicrosoftdesignJSONデザインtemplateテンプレート運用選択肢列参照列ChatGPTOpenAIオープンAIチャットGPTgalleryギャラリースクロールコンテナショートカットキーshortcut keyconcat関数文字制限フロー実行開発環境環境本番環境ライセンス環境構築手順pipelineCI/CDパイプラインDevOpsMicrosoft 365簡易在庫管理時間外通知ファイルフィルター クエリドキュメント ライブラリfilter querysortソートmultiple item複数項目シェアポイント便利機能カレンダーCalendarTeamsローコード開発非エンジニア体験談勉強内製化
PageTop
ページトップに戻る