Picture

HTTP 429 - Throttling

Our APIs are setup with Throttling which protects our backend services from heavy load such as a program that loops across all items.  The API will return a payload such as below which you can defensively program for by utilize the HTTP Header "retry-after".  This header includes the seconds you need to wait before calling back to the API's.  To learn more about HTTP status 429 see https://httpstatues.com/429.

Build for resiliency  

When working with external dependencies in your code such as our API's you should be aware of non-successful API responses (Learn about HTTP Response codes).  To ensure your systems will still function it should be looking for response headers status code and handle retries.

Microsoft provides some guidance on Implementing retry logic with exponential back-off using Polly Framework.

Python has a framework called Celery which will also manage retry with exponential back-off with version 4.2 and up.

Powered by Azure API Management.