HowTo — LogicApp API connections throttling
An interface solution design where we can potentially have 50 logic app. All the logic apps have hundreds of messages to process and almost similar data flow moving different data updates from source to destination based on dynamice365 business events.
There are four major API connections in Logic App
- BusinessEvent source API connection
- Email Notification Office 365 Outlook connection
- Destination HTTP calls
- Blob Storage API calls for storing messages
I can create one API connection for each of the types above and use this across all LogicApp. This will all work fine but can potentially fail in production. But the question is what can potentially fail?
If you read through the link [ https://docs.microsoft.com/en-us/connectors/office365/#limits ] Office 365 Outlook has throttling limits
Now in heavy load scenario ( 50 logic apps), we can potentially hit this 300 calls limit.
We have three solution options:
- Use common API connection for all 50 logic apps and hope the above case will not happen in the production.
- Create separate API connections for all 50 logic app.
- Create common API connections for small groups of LogicApp based on load projections.
Both Option 2 and Option 3 look good, Option2 looks feasible only when you use DevOps to deploy API connection else Option3 gives a balanced approach.
Also from Azure DevOps we cannot validate the “Office 365 Outlook” API connection (at least I am not aware of any approach), we have to do that manually, so the more the number of API connections more manual steps.
Idea is to be aware of throttling limits of API connection and based on the volume of messages in production design your solution and define boundaries.