How it works

If you are running into the dreaded RequestThrottled error [You are submitting requests too quickly. Please retry your requests at a slower rate], we have built a shared cache to give you unthrottled access to Amazon product feed.

Lets say, user 1 makes an API call to our server to fetch browse node: 1000 (Books). The first time such request is made, our server will make an API call to Amazon using user 1's AWS key. Once we get the response back, we will cache the result and send back the result to user 1. When user 2 makes the request for the same browse node 1000 (Books), we will not hit Amazon server again. Instead, we will get the cached data from our database and send it back to the user 2 without using his/her AWS key.

This way the number of API calls made will be less than one per second for a user. In rare cases where it exceeds more than one request per second, our server will take care of retrying with exponential backoff and serving them. So, you don't have to deal with RequestThrottled error and build a clean application with good user exerience. We also take of cache expiry of old data and keep the fresh copy of data by sharing it with other users.