Azure Logic Apps: How to Efficiently Handle Rate Limiting and Retry Logic for API Calls?
I'm prototyping a solution and I'm not sure how to approach I've been banging my head against this for hours. I'm upgrading from an older version and I'm maintaining legacy code that I've looked through the documentation and I'm still confused about I'm currently integrating an external REST API into an Azure Logic App, and I'm working with scenarios with rate limiting imposed by the API provider. The API allows a maximum of 100 requests per minute, and I want to ensure that my Logic App respects this limit while also implementing retry logic for failed requests. I've set up my Logic App to make a simple HTTP GET request as follows: ```json { "definition": { "triggers": { "manual": { "type": "Request", "inputs": { "schema": {} } } }, "actions": { "HTTP": { "type": "Http", "inputs": { "method": "GET", "uri": "https://api.example.com/data" } } } } } ``` However, I'm not sure how to implement a way to pause the Logic App when it reaches the 100 requests limit. I've considered using `Delay` actions, but I’m unsure how to calculate the wait time dynamically based on how many requests have been sent. Additionally, if the API responds with an behavior due to rate limiting (like a 429 status), I want to retry the request after a certain backoff period. I’ve read through the Azure documentation and found some examples, but they seem to lack clarity on handling this specific scenario effectively. Has anyone successfully implemented a strategy for handling rate limits in Azure Logic Apps? Any suggestions on how to set up the Logic App to manage this gracefully would be greatly appreciated! I'm working with Json in a Docker container on macOS. Am I missing something obvious? The stack includes Json and several other technologies. What's the best practice here? What are your experiences with this? This is happening in both development and production on Linux. Is there a simpler solution I'm overlooking? This is my first time working with Json stable. What are your experiences with this?