Table of Contents
This post is also available in: Deutsch (German)
Over the past months and years, Amazon affiliate partners have had to accept a number of restrictions that have confronted quite a few with the collapse of their business model overnight. Since the situation has worsened since the beginning of the year 2019 with another restriction on the use of the Amazon Product Advertising API, I would like to summarize the most striking facts in this article.
Error: RequestThrottled – The “Efficiency” Guidelines Lock Out Many Longtime Amazon Supporters
On 23 January 2019 Amazon activated an update of its Efficiency Guidelines. It says: “…the request limit for each account is calculated based on revenue performance attributed to calls to the Product Advertising API (PA API) during the last 30 days.” And further: “Each account used for Product Advertising API is allowed an initial usage limit of 8640 requests per day (TPD) subject to a maximum of 1 request per second (TPS).”
Suppose I want to run my Amazon Affiliate website as best as possible and update the product data every hour to save me the price disclaimer ads, this means I can use a maximum of 360 products on my site. Because the allowed 8640 requests to the API divided by the 24 hours of one day results in 360. For a hobby project to improve the pocket money this may be ok, for ambitious projects this means that they are forced to start small.
Furthermore, the maximum of one request per second poses a challenge to the technology. Uncontrolled sending of requests would lead to parallel and therefore too frequent requests, which would lead to the error message “Error: RequestThrottled: AWS Access Key ID: ######. You are submitting requests too quickly.” at an initial limit of 1 per second, which would lead to products no longer being displayed and the income of the affiliate partner would subsequently stop or be reduced.
To avoid the request throttled error, you should only send one request to the API every 10 seconds for 360 permitted requests per hour (10 secs * 360 = 3600 secs ~ 1 hour). This is not easy to implement on the server side, because cronjobs can only be executed on a per-minute interval basis. So a cronjob would have to be executed every minute and update a maximum of 6 products with a pause of 10 seconds. With ASA2’s Cronjob and its “Limit” option in combination with the option “Max requests per second” this is possible, but for the beginner it is too big a technical hurdle.
Amazon API calculates request limit incorrectly
In addition, the new regulation of the Efficiency Guidelines of 23 January 2019 obviously still has problems with the correct calculation of requests per second. I have several reports from users who have already received the “RequestThrottled” error during the setup of ASA1 or ASA2. It has been proven that ASA only sends a single request to the API at this point. Therefore, this error makes no sense at all, because less than one request cannot be sent.
That it is a problem of the Amazon API is proven by reports of the mentioned users that they also get this error with other plugins.
Furthermore, several reports in the AWS Forum prove that the problem lies on the API side. There experiences are described, which were made completely without plugins or WordPress and e.g. report: “I can confirm that my script is sending one request every 4 seconds to amazon.de. The requests are still being throttled randomly.”
The following screenshot is from a real case of a user who gets the RequestThrottled response although there is a pause of 3 seconds between the API requests in the ASA2 cronjob.
A request to the responsible persons of the Amazon Partner Program
Of course, I can understand that the use of the Amazon Product Advertising API should not be unrestricted and immediately accessible to everyone. The deployment and the traffic finally cause cost.
On the other hand, it is not acceptable that these restrictions are so severe and partially still immature that established, long-time users suddenly face immense problems and revenue losses, for which there is no acceptable solution especially in the case of the RequestThrottled API bug.
Especially for longtime users I think the new coupling of the allowed requests to the revenue performance of the last 30 days is excessive. For seasonally dependent websites, such as test pages for grills, this would mean that you would be able to send fewer requests to the API in autumn and winter and would therefore be confronted with technical problems that make it difficult to update the site and might therefore lose good SEO rankings until the next barbecue season.
In my opinion, there is a lack of sensitivity here. We Amazon affiliates have been making sure for years that visitors to our websites become new Amazon customers and we have had to struggle with new restrictions in the recent past in order to be able to continue to provide this service optimally.
Therefore I would be pleased about a reform of the Request Limit restriction and above all that it works correctly for the time being.
API access only after three months
Anyone who registers for the Amazon Partner Program knows this: Access to the Amazon Product Advertising API is only granted after 180 days if at least three qualified sales via your own links have taken place within this period. It behaves like an admission procedure.
The problem I see is the fact that the professional, efficient use of the partner program is only possible with the API. Only with the API you can present regularly updated product data, such as prices, on your own website in a technically reasonable way. Without API, the use of Amazon SiteStripe remains, which is equivalent to manual maintenance.
Maintaining products in large numbers on many pages in these 180 days becomes a task one would like to automate to save life time. After all, this is what API and tools like ASA are for. So you have to work out a completely manual first workflow and then, if you’re lucky enough to get access after 180 days, you have to create a second workflow for automation. What a waste of time!
In my opinion, a better solution would be to grant access to the API immediately after registration, but with the request limit restrictions described above that have been in effect since the end of January 2019. If you have achieved enough conversions after 180 days, these restrictions will be relaxed to allow you to technically expand.
For long-time users who have monthly conversions, the request limit should generally be waived or at least considerably extended in order not to unnecessarily curb them and constantly cause them technical problems.
Disabling or changing RSS feeds without announcement
The use of data feeds is addressed in the policies. These are a great way to automatically process regularly updated product lists on the basis of RSS feeds. Great only if they work. Because for some time now, URLs like these simply don’t work anymore: https://www.amazon.com/gp/rss/bestsellers/home-garden/14162641/
Many Amazon affiliates have made use of RSS feeds and built applications on their websites around them. Suddenly these feeds are simply switched off or changed by Amazon without informing them. I already made a request on this topic in the AWS Forum at the end of last year without having received any feedback.
Again, I wonder why Amazon Affiliates are taken the tools out of our hands.
These are just the most serious issues currently affecting Amazon Affiliates’ lives. There would be more…
If I could give advice to those at Amazon responsible for the Product Advertising API, it would be:
“Please value your affiliates again,
because they work for you!”
- ASA2 update 1.17.0 – Improved transparency and error handling during product updates and many more - August 20, 2023
- New ASA2 update fixes many issues. Additionally redesigned options section. - July 5, 2023
- ASA update 1.16.5 released - March 5, 2023
This post is also available in: Deutsch (German)