I am aware that there are limits to the number of requests per day and the number of requests per second with this API.
Calls per second: 5
Calls per day: 5,000
As part of my code, I launch a single thread per Serial Number query; at the moment this is one Serial Number per query. I sleep between each thread to ensure that I do not exceed the documented requests per second limit (5 per second). Initially, this sleep timer was set to .20 seconds (=5 requests per second). I received random 403 Developer Over QPS (Proxy) Error, which I understand to be the “You have exceeded your API throttle limit” error. I changed this to be .25 seconds, .30 seconds, 1.0 seconds, 3.0 seconds, 3.5 seconds, 5.0 seconds – all with the same random 403 Developer Over QPS (Proxy) errors. The higher the sleep timer, the more stable it becomes. However, 1) I need this job to finish in a reasonable amount of time and 2) The results that I am receiving do not align with the documented requests per second limit.
Any suggestions welcome.