I was working on serializing some JSON from the item API to build an item cache based on a few of the item properties in the JSON that I cherry picked to my liking.

Anyways, off-hand I've no way to ascertain the upper limit on item id's, so I just assume it to be 100k.

So, I fire off 100k asynchronous tasks to perform the GET requests on every item id URL (1 through 100k). Each task then upon completion updates my db with the necessary queries (queries are pooled on simultaneous connections). Assuming 200 or 404 response, if 503 we keep trying, task bails on any 500.

Anyways, I have a few main questions I couldn't find answered in the API docs:

1. I'm not taxed or limited in anyway by the throttling if I hit the item api, as they are static... correct? (In regards to the 3k request/day limit).

2. What's the max concurrent GET requests I can make of the blizz server? Specifically regarding item API.

3. Is there a JSON I can consume of all the items, rather than making 100k async GET requests?

To put things in perspective, to pull down the JSON, serialize it, and update the DB it's taking me around 30min for all 100k. I'm looking to optimize it as much as I can at this point. Thanks.