Let's POWER Automate

From no-code to low-code

Menu
  • Expressions
  • Filters
  • General
  • Application specific solutions
    • Dataverse
    • Excel
    • Forms
    • Outlook
    • Planner
    • Power Apps
    • SharePoint
    • Teams
  • Triggers
  • Ready to use solutions
    • Approval Process Solution
    • Task Delegation App
    • The Ultimate Power Automate expressions cheat sheet
    • Power Automate HTTP requests to SharePoint cheat sheet
    • Power Automate HTTP requests to Graph API cheat sheet
  • ABOUT ME
  • Get help with your flow
  • POWER PLATFORM SERVICES
Menu

Import Planner tasks with checklists into various buckets (Power Automate)

Posted on May 15, 2022May 15, 2022 by Tom

“I’d like a single template with everything, Planner tasks, checklists, and buckets, what would such Power Automate flow look like?”


Some time ago I wrote articles on importing tasks into Planner using a Power Automate flow. There’s an article on importing tasks from Excel, import of checklist items from a SharePoint list, and an article on importing tasks into various plans/buckets. But there’s one more solution that wasn’t described. It’s a combination of all the solutions – one configuration list with everything. Tasks, checklist items, buckets, and plans, all in a single SharePoint list. What would such solution look like?

Extend the configuration list

Start from the checklist configuration list as created in the previous article and extend it by the additional columns – GroupID, PlanID, and BucketID. Since these columns define the location of the task, it should be the same for each separate task. Fill them out as described in the original article. The final list might look as below – checklist items are unique while the other columns keep the same information for given task.

This example will create 2 tasks in the same plan and group, but in different buckets.

Power Automate Planner tasks checklists buckets

Get the new information in the flow

Follow the original flow until you get to the “Create the unique tasks” section. There’re two actions whose order must be changed – the ‘Create a task’ and ‘Filter array’. Originally you used only the TaskName so it was ok to create the task right away. But now you need also the other information – GroupID, PlanID, and BucketID, and for those you’ll need the whole item – provided as the output of the ‘Filter array’.

Take only the first checklist item

The ‘Filter array’ will return an array with all the checklist items for given task. If the currently processed task is the ‘Task_1’, it’ll give you all the rows below.

That’s 3 times the TaskName, GroupID, PlanID, and BucketID. But you want it only once, you want to create only 1 task for all the checklist items. Use the first(…) expression on the ‘Filter array’ output to take only the first of the rows.

first(body('Filter_array'))

Now, when you’ve got the first row, you can access the values from all the columns. Prepare the expressions to extract them from the JSON.

first(body('Filter_array'))?['GroupID']
first(body('Filter_array'))?['PlanID']
first(body('Filter_array'))?['BucketID']

Note: you must use the columns internal name.

Take these expressions and use them in the Planner ‘Create a task’ action.

Power Automate Planner tasks checklists buckets

From that point you can continue with the flow as it was before.

Power Automate Planner tasks checklists buckets

Summary

It’s possible to use Power Automate to import all the Planner tasks, checklists, and buckets from a single configuration list. But since most of the information will be repeated, you must be careful about how you use it. The task itself should be created only once, that’s why you filter the unique task title and select only the first item to get the GroupID, PlanID, and BucketID.


🚀 Master Power Automate

Join 2,100+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

2 thoughts on “Import Planner tasks with checklists into various buckets (Power Automate)”

  1. Jeanne says:
    July 5, 2023 at 10:31 pm

    Thank you for creating this – it has been a lifesaver for me! Everything is working beautifully, but I need to add one more piece. I have a column in the spreadsheet (I’m using Excel) for the department responsible for the task, and would like to assign labels based on that column.

    In other flows, I have used an expression like this to assign labels:
    if(contains(item()?[‘Department’], ‘Marketing’), True, False)

    Is it possible to somehow nest an if expression with the ‘first’ expression to assign the correct labels?
    first(body(‘Filter_array’))?[‘Department’]

    Thanks so much!
    Jeanne

    Reply
    1. Tom says:
      August 12, 2023 at 11:29 pm

      Hello Jeanne,
      yes, you can combine expressions inside each other (https://tomriha.com/how-to-combine-expressions-in-your-power-automate-flows/):
      if(contains(first(body(‘Filter_array’))?[‘Department’], ‘Marketing’), True, False)

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

🚀 Master Power Automate

Join 2,100+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

Still exchanging emails to get things approved?

Get the Approval Process solution and the Task Delegation App to skip the hard part and deploy an automated, fully functional approval solution on a SharePoint list in minutes! And then the next one, and the next one...

Approval Template Preview ✨ Learn more ✨

Turn ideas into flows with ease!

Grab the complete Power Automate Cheat Sheet Bundle—everything you need to master expressions, SharePoint HTTP calls, and Graph API in Power Automate.

Cheat Sheet Bundle Preview ✨ Get the Cheat Sheets

Didn't find what you were looking for?
Need to adjust a solution to fit your needs?
Or would you just like to get an assistance from somebody with thousands of hours of experience with Power Automate?

Power Automate blogs worth visiting

Damien Bird
Dennis (Expiscornovus)
Paul Murana

©2025 Let's POWER Automate | Theme by SuperbThemes