Power Automate

Microsoft Power Automate is useful for wiring up back-office-type business flows. It’s also full of gotchas, especially when working with SharePoint and Outlook.

Gotchas

Weak uniqueness in SharePoint Lists

String comparison is SharePoint lists is case-insensitive, which means the “unique” constraint on a column doesn’t really mean unique. This can bite you when working with Outlook Event IDs, which tend to return GUID-like strings that differ only by the case of one character.

Expression syntax

Expression syntax is difficult and non-intuitive. Often you have to Peek Code to get at the column names you want to use in expressions.

Deletion vs. SharePoint lists

Deletion from SharePoint lists is tricky. You can subscribe to delete events as a trigger, but by the time you get the trigger, the item in question is deleted. Therefore you’ll need to hack together some kind of alternative way of deleting, like toggling a status column, if you need to know anything about the deleted item.

Throttling

Testing a flow that performs a lot of API calls can end up throttling you on the free tier, which means your next tests might not trigger until hours later in the day.