“I’d like to update the Planner task checklist by removing some options, but Power Automate keeps just adding new ones!”
When automating management of Planner tasks, you might find that the available actions are quite limited, especially when working with checklists. While it’s easy to add new checklist items, it’s a bit more complicated to update or delete them. Why? And what can you do about it?
Updating the checklist
It is possible to update the existing checklist items with the ‘Update task details’ action. Every time you or the users create a new checklist item, it’ll receive an unique identifier in the given task. If you use this id in the list of checklist items, it’ll update it.
That means, before you can update the checklist item you must find its id. Which is quite straightforward: ‘Get task details’ and ‘Filter array’ to find the corresponding task by the Title. Extract the checklist item id, turn it into an object with the new title, and update it.
[
{
"id": "<existingItemId>",
"title": "<updatedTitle>",
"isChecked": <false/true>
}
]
You can update only that single checklist item, the others will stay untouched.
Deleting a checklist item
Deleting a checklist items is much more complicated than the update. I even came to a conclusion that it’s not possible using Power Automate flow.
While there’s an Graph API endpoint that can do this, I wasn’t able to call it from a flow. The problem is that it needs the etag of the task in the headers – etag that contains the ” characters. That’s the same character Power Automate uses in the JSON.
To not break the request body it then adds a backslash character before the ” in the etag…
…making it invalid. The request you can easily send through Graph explorer won’t work in Power Automate.
That means you’ve got two options how to deal with it.
Recreate the whole task…
The first option is to recreate the whole task. Get the task, get the task details, delete it, and create a new one using the original information. The problem with this solution is that it’ll be a fresh new task. If anybody commented on it, it’ll be lost. If somebody already finished some checklist items, they’ll be open again – that is unless you recreate the closed ones as closed. That sounds like a lot of work.
…or close the checklist items
The other, less drastic option could be to just close the checklist items that are not needed anymore. You can follow the same process as when updating, but instead of changing the title you’ll change the “isChecked” property. The item will still be in the list, but since it’ll be closed nobody should be bothered by it anymore.
Summary
As you can see, there’re some options to update Planner checklist in a Power Automate flow. The update is quite straightforward, you just need the checklist item id and you can update it. With the delete it gets more complicated as I didn’t find any option to delete an item from a flow. But there’re always some workarounds. You can either recreate the task with the updated checklist, or just close the item that’s not needed anymore. Both should do the trick, no users will deal with that checklist item anymore.