23

For those of you who use the Amazon Product Advertising API, what experience have you had with running into their throttle? Supposedly, the limit is set at 1 request per second, is that your experience?

I want my site to grow to be nation-wide, but I'm concerned about its capability to make all the Amazon API requests without getting throttled. We cache all the responses for 24 hours, and also throttle our own users who make too many searches within a short period.

Should I be concerned? Any suggestions?

Brian Tompsett - 汤莱恩
  • 5,753
  • 72
  • 57
  • 129
Ben G
  • 26,091
  • 34
  • 103
  • 170

5 Answers5

16

I believe they have changed it. Per this link: https://forums.aws.amazon.com/message.jspa?messageID=199771

Hourly request limit per account = 2,000 + 500 * [Average associate revenue driven per day over the past 30 days period]/24 to a maximum of 25,000 requests per hour.

Shaurav Garg
  • 439
  • 5
  • 12
  • Wow, great that they're taking efficiency into account now. Making you the official answer now. – Ben G Aug 09 '12 at 19:46
  • Are there any ways to know programmaticaly how many request remains? For example, 155 request till end of current hour (or something like that). Or I should just rely on 503 error ? – Vladimir Kishlaly Jan 13 '13 at 14:05
  • 2
    Although there is a limit to the number of request per hour, batch requests allow you to to make multiple requests at the expense of just one. – Logan Besecker Apr 17 '13 at 06:18
  • @LoganBesecker Can you elaborate further and where to get further info w/ example? – Volatil3 Feb 22 '16 at 14:54
  • You can read more about the amazon batch processing requests here: http://docs.aws.amazon.com/AWSECommerceService/latest/DG/PerformingMultipleItemLookupsinOneRequest.html – Nadir Latif Oct 18 '16 at 09:11
10

Here is the latest on request limits that I could find, effective Sept 3rd, 2012.

If your application is trying to submit requests that exceed the maximum request limit for your account, you may receive error messages from Product Advertising API. The request limit for each account is calculated based on revenue performance. Each account used to access the Product Advertising API is allowed an initial usage limit of 1 request per second. Each account will receive an additional 1 request per second (up to a maximum of 10 requests per second) for every $4,600 of shipped item revenue driven per hour in a trailing 30-day period.

https://affiliate-program.amazon.com/gp/advertising/api/detail/faq.html

Bienvenido David
  • 4,118
  • 1
  • 25
  • 16
6

They have updated their guidelines, you now have more requests when you sell more items.

Effective 23-Jan-2019, 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.

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). Your account will receive an additional 1 TPD for every 5 cents or 1 TPS (up to a maximum of 10) for every $4320 of shipped item revenue generated via the use of Product Advertising API for shipments in the last 30 days.

Source: https://docs.aws.amazon.com/AWSECommerceService/latest/DG/TroubleshootingApplications.html

Sebastian Viereck
  • 5,455
  • 53
  • 53
  • As of Feb 16th, 2019, I am being rate limited to around 5 requests per hour on average. Either this is a temporary bug or that initial usage limit only applies to new API keys and, after 30 days, the rate limit is calculated based on revenue. My keys are over a year old, but my site does not generate much revenue (though I have made sales in last 30 days). – deruse Feb 19 '19 at 01:31
  • Do these API throttle limits also get applied to your use on https://webservices.amazon.co.uk/scratchpad/index.html ? I cannot seem to run any requests on the scratchpad due to "You are submitting requests too quickly. Please retry your requests at a slower rate." response everytime. Even if i leave a week between calls to the API! – budda Apr 13 '19 at 00:46
5

Amazon enforces limits on how many calls you can make per hour and per second.

You can increase the former by following the sanctioned route (increase commission revenue) or by privately petitioning Amazon with a valid reason. When whitelisted, your limit will go up to 25,000 calls per hour, which is more than good enough for the vast majority of projects I can think of.

The latter limit is murkier and enforced depending on the type of query you make. My interpretation is that it is meant to keep serial crawlers who do batch item lookups in check. If you are simply doing keyword searches etc., I would not worry so much about it. Otherwise, the solution is to distribute your calls across multiple IPs.

One other point to keep in mind if you are querying multiple locales is to use separate accounts per locale. Some locales are grouped and will count to the same call quota. European Amazons, for instance, form such a pool.

Hakan Ensari
  • 1,969
  • 1
  • 18
  • 32
0

Following are the latest details with Product Advertising API 5.0

TPS – Transactions per second, refers to the maximum number of API calls you can make in one second. Each API call counts as one transaction. For example, if you send 10 ASINs in the request parameter of a GetItems() call, it counts as a single transaction.

TPD – Transactions per day, refers to the maximum number of API calls you can make in one day. If Associate has 1 TPS and 8640 TPD, then maximum of 1 request can be sent per second and 8640 per day. Even if 1 TPS is there, once TPD is exhausted requests will be throttled.

Primary Account – This refers to the Amazon username (email address) and password that you used to create your Associates account and used to generate Product Advertising API 5.0 credentials.

Shipped revenue – This refers to the total sales volume of all items Amazon has shipped from orders resulting from clicks through links you created using Product Advertising API 5.0.

As soon as you create your Product Advertising API 5.0 credentials, you are allowed an initial usage limit up to a maximum of one request per second (one TPS) and a cumulative daily maximum of 8640 requests per day (8640 TPD) for the first 30-day period. This will help you begin your integration with the API, test it out, and start building links and referring products to your readers.

Your PA API usage limit will be adjusted based on your shipped item revenue. Your account will earn a usage limit of one TPD for every five cents or one TPS (up to a maximum of ten TPS) for every $4320 of shipped item revenue generated via the use of Product Advertising API 5.0 for shipments in the previous 30-day period. For correct attribution of shipped item revenue please ensure that you always call Product Advertising API 5.0 with the primary account credentials and retain all the URL parameters that the API returns in its response.

For more details, visit - https://amz.run/6u62

Veeresh Devireddy
  • 1,057
  • 12
  • 24