Showing results for 
Search instead for 
Did you mean: 

Send a summary email of Microsoft Team Channel conversations/posts to all members on a schedule

Step 1:

Create a Flow using the blank template and select "Recurrence" as the Trigger 









Step 2:

Define the schedule for the Flow trigger to send the summary email for MS Team conversations/posts.

In my scenario I have selected a weekly schedule for sending the summary email (every Monday at 8 am)


Step 3:

Add the Get Messages (Preview) action from the Microsoft Teams connector and select the MS Team and Channel for retrieving the messages



Step 4:

Filter the messages to only retrieve the latest messages (based on the Created Date of the message) .

Use the "Filter array" action to retrieve messages created in last 7 days (weekly).

This can be customized based on your schedule requirements.

Utilize the ticks function to compare dates  as shown in figure below



Filter array From - "Message List" from the "Get messages" action

Filter condition - "@greater(ticks(item()?['CreatedDateTime']), ticks(addDays(utcNow(), -7)))" checks if the message created date time is greater than 7 days from today

Step 5:

List all MS Team (Office 365 group) members using the "List group members" action from the "Office 365 Groups" connector.

Select the Office 365 group related to the Microsoft Team



Step 6:

Create comma separated list of email addresses for each group member retrieved

Use Select action to retrieve only the Mail property from the list of group members

Then utilize the Join action to Join the mail addresses obtained from Select statement with ";" 


Step 7:

Create email message body from filtered array of MS Teams messages

Use Select action to fetch only the required attributes from the filtered array of Messages

Utilize the "Switch to text mode" to create your own email message summary from the "Body" output of the "Filter array" action of the Message list obtained



Map attribute : "Posted By <b> @{item()?['from']?['user']?['displayName']} </b>on @{formatDateTime(item()?['createdDateTime'],'MM-dd-yyyy')}</br></br>@{item()?['body']?['content']}"


The above mapped attribute renders the display name of the user creating the message along with the created date & time and the message body content


Create Join action to combine each message (utilize the Output from the previous select statement)

This creates a string of messages to be sent to the email body


Step 8:

Send the email to the group members

Email to - Output from Join statement of group members list

Body - Output from Join statement of message body


Complete Flow looks like below


And the weekly summary email looks like the followingUntitled.pngThanks for reading!!

About the Author
  • Experienced Consultant with a demonstrated history of working in the information technology and services industry. Skilled in Office 365, Azure, SharePoint Online, PowerShell, Nintex, K2, SharePoint Designer workflow automation, PowerApps, Microsoft Flow, PowerShell, Active Directory, Operating Systems, Networking, and JavaScript. Strong consulting professional with a Bachelor of Engineering (B.E.) focused in Information Technology from Mumbai University.
  • I am a Microsoft Business Applications MVP and a Senior Manager at EY. I am a technology enthusiast and problem solver. I work/speak/blog/Vlog on Microsoft technology, including Office 365, Power Apps, Power Automate, SharePoint, and Teams Etc. I am helping global clients on Power Platform adoption and empowering them with Power Platform possibilities, capabilities, and easiness. I am a leader of the Houston Power Platform User Group and Power Automate community superuser. I love traveling , exploring new places, and meeting people from different cultures.
  • Read more about me and my achievements at: MCT | SharePoint, Microsoft 365 and Power Platform Consultant | Contributor on SharePoint StackExchange, MSFT Techcommunity
  • Encodian Owner / Founder - Ex Microsoft Consulting Services - Architect / Developer - 20 years in SharePoint - PowerPlatform Fan
  • Founder of SKILLFUL SARDINE, a company focused on productivity and the Power Platform. You can find me on LinkedIn: and twitter I also write at, so if you want some Power Automate, SharePoint or Power Apps content I'm your guy 🙂
  • I am the Owner/Principal Architect at Don't Pa..Panic Consulting. I've been working in the information technology industry for over 30 years, and have played key roles in several enterprise SharePoint architectural design review, Intranet deployment, application development, and migration projects. I've been a Microsoft Most Valuable Professional (MVP) 15 consecutive years and am also a Microsoft Certified SharePoint Masters (MCSM) since 2013.
  • Big fan of Power Platform technologies and implemented many solutions.
  • Passionate #Programmer #SharePoint #SPFx #M365 #Power Platform| Microsoft MVP | SharePoint StackOverflow, Github, PnP contributor
  • Web site – Youtube channel -