cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
MKT
Regular Visitor

Collecting List Items and Associated Comments to Display in Email

Hello,

I’m using “GET” to capture all list items that have a ‘canceled’ status.  Then adding a “Send HTTP Request to SharePoint” to capture the associated list comments, for those items.  When my FLOW runs, it only outputs the items that actually have comments and ignores the other canceled items.  I wish to send an email containing ALL canceled items with their associated comments and display N/A, if no comments exist.  Can someone please advise what steps I might be missing here and how I need to adjust my FLOW?  I’m very new to Power Automate, so any assistance, especially with screen shots is appreciated. 

 

MKT_0-1631232226253.png

 

MKT_1-1631232226258.png

 

MKT_2-1631232226260.png

 

MKT_3-1631232226262.png

 

Thank you,

MKT

1 ACCEPTED SOLUTION

Accepted Solutions
ekarim2020
Super User
Super User

Here is a flow that grabs all comments for a SharePoint List and sends them as an email.

ekarim2020_28-1631313503582.png

The body of the email consists of the SharePoint item ID followed by the comments, if any:

ekarim2020_12-1631310970714.png

Here is the high-level flow:

ekarim2020_27-1631313217401.png

Staring with Get items, and initializing variables:

ekarim2020_15-1631311207747.png

(2) Apply to Each loop -  for each SharePoint list item, get the comments using a SharePoint REST API:

ekarim2020_17-1631311291812.png

Use Send HTTP request to SharePoint to get the list item comments:

ekarim2020_19-1631311499650.png

 

 

_api/web/lists/getbytitle('Managers List')/items(@{items('Apply_to_each')?['ID']})/Comments

  "accept": "application/json;odata=verbose",
  "content-type": "application/json;odata=verbose"

 

 

Store the comments in a compose action. Note the comments are returned as an array.

ekarim2020_20-1631311586348.png

 

 

Compose action:
@{outputs('Send_an_HTTP_request_to_SharePoint')?['body/d/results']}

 

 

Now check to see if there are any comments :

ekarim2020_21-1631311773320.png

 

 

length(outputs('Compose_Results'))

 

 

ekarim2020_24-1631312415941.png

Yes, true condition - there are comments:

ekarim2020_26-1631312926825.png

No, false condition - there are NO comments:

ekarim2020_23-1631312355813.png

Finally the send mail action:

ekarim2020_25-1631312541342.png

ekarim2020_12-1631310970714.png

 

Hope this provides some guidance.

Ellis

View solution in original post

23 REPLIES 23
MKT
Regular Visitor

Adding a summary screen shot of entire flow:

MKT_0-1631296989289.png

 

ekarim2020
Super User
Super User

See the following post: Get Microsoft Lists Comments using Flow

https://powerusers.microsoft.com/t5/Building-Flows/Get-Microsoft-Lists-Comments-using-Flow/m-p/78741...

Ellis

Thanks Ellis, I am able to get the comments.  My problem is figuring out how to output items in an email that don't have comments, along with those that do.  

 

Thanks,

MKT

ekarim2020
Super User
Super User

Here is a flow that grabs all comments for a SharePoint List and sends them as an email.

ekarim2020_28-1631313503582.png

The body of the email consists of the SharePoint item ID followed by the comments, if any:

ekarim2020_12-1631310970714.png

Here is the high-level flow:

ekarim2020_27-1631313217401.png

Staring with Get items, and initializing variables:

ekarim2020_15-1631311207747.png

(2) Apply to Each loop -  for each SharePoint list item, get the comments using a SharePoint REST API:

ekarim2020_17-1631311291812.png

Use Send HTTP request to SharePoint to get the list item comments:

ekarim2020_19-1631311499650.png

 

 

_api/web/lists/getbytitle('Managers List')/items(@{items('Apply_to_each')?['ID']})/Comments

  "accept": "application/json;odata=verbose",
  "content-type": "application/json;odata=verbose"

 

 

Store the comments in a compose action. Note the comments are returned as an array.

ekarim2020_20-1631311586348.png

 

 

Compose action:
@{outputs('Send_an_HTTP_request_to_SharePoint')?['body/d/results']}

 

 

Now check to see if there are any comments :

ekarim2020_21-1631311773320.png

 

 

length(outputs('Compose_Results'))

 

 

ekarim2020_24-1631312415941.png

Yes, true condition - there are comments:

ekarim2020_26-1631312926825.png

No, false condition - there are NO comments:

ekarim2020_23-1631312355813.png

Finally the send mail action:

ekarim2020_25-1631312541342.png

ekarim2020_12-1631310970714.png

 

Hope this provides some guidance.

Ellis

  • Thanks for all the detail Ellis, this worked perfectly.  Appreciate your help! 

Great solution! I'm running into a problem though: Comments are returned in a massive "blob" (HTML?). I tried to fix it by using a "Convert html to text" action in my flow, but got the same result...

caheynen
Frequent Visitor

When the "@" Mention is used, the comments return with jibberish.

This was sent to @James Shew and it comes back as @mention{0} 

 

 

Thank you! That helped!

Thanks Ellis, This worked like a charm.

When I run this I get the first 100 or so list ID's comments but I have a sharepoint list with ~300 items. Seems like its only picking up the 1st page in the HTTP request. Is there a way of getting it to look at the entire list? Regards Gerry

Hi @Gezza ,

 

By default, the Get items action only returns 100 items.

For your case you can increase a setting called the Pagination threshold to 500:

Snag_1b4657eb.png

 

Snag_1b4a49af.png

See also:

https://alextofan.com/2019/08/22/how-to-get-more-than-5000-item-from-sharepoint-online-in-flow/

https://www.tachytelic.net/2020/04/many-ways-get-sharepoint-items-power-automate/

Ellis

 

Gezza
Frequent Visitor

THanks again Ellis,

Changed the Get Items>Top Count  to 5000.

Now picks up all items

Champion!

Cheers Gerry 

Gezza
Frequent Visitor

PS Also changed the pagination settings for get items to pagination on and threshold 5000. 

@ekarim2020  - Good Morning, I am having some issues with using this as I'm new to Automate and feel this is way too complicated beyond my expertise - I only have a grasp of basic basics.

 

Do you have any scope code I could copy and paste into my clipboard in Automate please and just tweak this to my Microsoft List and use it to extract the comments? 

 

Sorry this is beyond cheeky! 🙂 

Hi @pigsinblankets ,

 

The solutions in this post do use some advanced concepts ☹️. There isn't going to be a general template or code that can simply be copied and pasted.  You will need to know how to enter expressions and basic JSON knowledge.

 

Please create a brand new post for your specific issue and we can take a look.  Please include describe what you are trying to achieve and post any screen shots of the current flow you are working on and where you are stuck.

 

Regards,

 

Ellis

ChristianDias
Frequent Visitor

Hi @ekarim2020,

 

I believe I've copied your flow exactly with some changes to the HTTP request to match my site and list and testing posting comments to a channel in teams. Screenshot below:

ChristianDias_0-1674579788927.jpeg

 

The flow can't seem to get past  the condition and throw this error

 

Error: Action 'Condition' failed

Error Details: Unable to process template language expressions for action 'Condition' at line '0' and column '0': 'The template language function 'length' expects its parameter to be an array or a string. The provided value is of type 'Null'. Please see https://aka.ms/logicexpressions#length for usage details.'.

 

Screenshot below:

ChristianDias_1-1674579913390.png

 

Any ideas?

Hi @ChristianDias ,

 

Please show the expression and runtime output of the Compose Results action.

 

Ellis

Hi @ekarim2020, thank you for this.  I been looking everywhere for this kind of solution.  I'm fairly new to Power Automate.  Can you please share a flow of how to retrieve comments for a single list item in this same friendly format?

Hi @mguzmanBSC_2023 ,

 

To get a single list item's comments:

 

Snag_8367e96.png

 

Snag_82d2873.png

 

Method: GET

Uri: _api/web/lists/getbytitle('<list name>')/items(<item-ID>)/Comments

accept: application/json;odata=verbose

content-type: "application/json;odata=verbose

 

Snag_83e9ef8.png

 

outputs('Send_an_HTTP_request_to_SharePoint')?['body']['d']['results']

 

 

Snag_84a4266.png

 

  "Name": item()['author']['name']
  "Date": formatdateTime(item()?['createdDate'], 'dd MMM yy')
  "Text": item()?['text']

 

 

Sample runtime output:

Snag_844464b.png

 

Snag_8456028.png


Ellis
____________________________________
If I have answered your question, please mark the post as ☑️ Solved.
If you like my response, please give it a Thumbs Up.
My Blog Site

Thank you @ekarim2020 .  This works great. The step-by-step instructions are extremely helpful. But how do I get it into the body of an email, similar to the flow from your initial response?  I have a flow that retrieves the data from a single list item, composing an HTML, then converting to PDF.  I would like to capture the comments associated with the list item in this nice format.  

Helpful resources

Announcements

Celebrating the May Super User of the Month: Laurens Martens

  @LaurensM  is an exceptional contributor to the Power Platform Community. Super Users like Laurens inspire others through their example, encouragement, and active participation. We are excited to celebrated Laurens as our Super User of the Month for May 2024.   Consistent Engagement:  He consistently engages with the community by answering forum questions, sharing insights, and providing solutions. Laurens dedication helps other users find answers and overcome challenges.   Community Expertise: As a Super User, Laurens plays a crucial role in maintaining a knowledge sharing environment. Always ensuring a positive experience for everyone.   Leadership: He shares valuable insights on community growth, engagement, and future trends. Their contributions help shape the Power Platform Community.   Congratulations, Laurens Martens, for your outstanding work! Keep inspiring others and making a difference in the community!   Keep up the fantastic work!        

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!    

Welcome to the Power Automate Community

You are now a part of a fast-growing vibrant group of peers and industry experts who are here to network, share knowledge, and even have a little fun.   Now that you are a member, you can enjoy the following resources:   Welcome to the Community   News & Announcements: The is your place to get all the latest news around community events and announcements. This is where we share with the community what is going on and how to participate.  Be sure to subscribe to this board and not miss an announcement.   Get Help with Power Automate Forums: If you're looking for support with any part of Power Automate, our forums are the place to go. From General Power Automate forums to Using Connectors, Building Flows and Using Flows.  You will find thousands of technical professionals, and Super Users with years of experience who are ready and eager to answer your questions. You now have the ability to post, reply and give "kudos" on the Power Automate community forums. Make sure you conduct a quick search before creating a new post because your question may have already been asked and answered. Galleries: The galleries are full of content and can assist you with information on creating a flow in our Webinars and Video Gallery, and the ability to share the flows you have created in the Power Automate Cookbook.  Stay connected with the Community Connections & How-To Videos from the Microsoft Community Team. Check out the awesome content being shared there today.   Power Automate Community Blog: Over the years, more than 700 Power Automate Community Blog articles have been written and published by our thriving community. Our community members have learned some excellent tips and have keen insights on the future of process automation. In the Power Automate Community Blog, you can read the latest Power Automate-related posts from our community blog authors around the world. Let us know if you'd like to become an author and contribute your own writing — everything Power Automate-related is welcome.   Community Support: Check out and learn more about Using the Community for tips & tricks. Let us know in the Community Feedback  board if you have any questions or comments about your community experience. Again, we are so excited to welcome you to the Microsoft Power Automate community family. Whether you are brand new to the world of process automation or you are a seasoned Power Automate veteran - our goal is to shape the community to be your 'go to' for support, networking, education, inspiration and encouragement as we enjoy this adventure together.     Power Automate Community Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Users online (4,994)