I had a good discussion with two colleagues this week on limits and performance when using logic apps to send proactive messages with Teams.
Of course the logic apps alternative is not the fastest and most efficient way to send proactive messages, but for sure is one of the easiest ways to workaround the imposed limits of the Teams connector in logic apps and power automate.
But are there limits with logic apps? Yea we have. But those are much higher than the ones we have with the Teams connector.
I did some tests separating the routine to collect chat ids in another flow and leaving just the steps to send messages to cached chat ids.
Then I tested with up 10k sending operations. No errors, not reached the limit yet. With the Teams connector or graph API calls, I would be blocked for sure after ~1k messages.
Here are my results for reference:
10 3.39 s
500 1.8 m
1000 2.4 m
3000 12.12 m
5000 19.86 m
10000 41.03 m
As a conclusion. The alternative using logic apps is not for someone looking for performance. If you want to send the maximum number of messages in the shortest period of time, go and create custom code.
The use of logic apps is for you looking for an easy way to send proactive messages without writing custom code, but make sure you can live with the performance penalty imposed by the choice.
There is no free lunch… 🙂
Stay safe… Cristiano