API Usage Cost

14 Blood Elf Paladin
I've been working on a guild website that uses a decent amount of data from the API. I read about the 3k/day request limit based on the cost of the request. I saw a thread a few weeks ago asking about a method to check what our current request total for the day was, and I don't recall ever seeing a definitive answer on whether we would be able to do an API request for it. The guild that my website serves has ~430 members, and I'm working on additional functionality for quest tracking and some other things, so I'm looking to pull down quite a bit of data (rep, mounts, pets, achievements, quests, pvp data) for each character. If I go by the average cost of 3 per request, I can see my site easily going well over the 3k/day limit. I noticed in the throttling post that we are responsible for monitoring metrics. So I have a few questions:

1. Is there a way to check our current request total for the day? (using the API or another method)

2. If we are entirely responsible for calculating and monitoring our API usage costs, would it be possible to get a list of the average cost for each type of request, including any reduction for using Last-Modified: headers? For example:
/api/wow/character/test-realm/Peratryn?fields=professions costs 3, Last-Modified costs 2
/api/wow/character/test-realm/Peratryn?fields=professions,quests costs 4, Last-Modified costs 3
I understand you want people to use Last-Modified headers, and I agree that it is good behavior anyways to hit a cache for unchanged data. Would listing only Last-Modified costs be easier/more encouraging for you to do?

3. I did see that registered applications have a higher API daily usage limit, it seems that most registered applications (that were approved) would be for large sites serving multiple guilds/realms. Would a single-realm single-guild site stand a decent chance of getting approval for a registered application? (just in case I end up needing it)

I understand some good practices such as having a request queue, etc., but I would like to be able to keep my data current enough to be useful to people without forcing them to manually refresh their character every time they visit the site, ie, I want my background updates to max out at 70% of the limit, keeping data fresh while allowing room for manual updates or development. Of course, if I'm not using very much of the request limit I don't intend to increase update frequency, I just want to know whether I can fetch more data at the cost of updating it only every 2-3 days.

Thanks for making such a great API!
Reply Quote
90 Human Paladin
You hit it on the head, that it should be thought of as 3k credits, and not 3k requests. Each actual GET request may represent only a fraction of a credit towards this throttle limit. Also, if you should breach the limit all the throttling entails is that your requests will occasionally start getting server busy responses.

A well written app should easily work within this limit even with your user count. Though, if you still think it would not suffice then you should register your app. Read more about that here: http://blizzard.github.com/api-wow-docs/#features/throttling

I'm willing to guess that Blizz cannot offer a means to determine credits remaining due to perhaps it fluctuating or giving people insight as to how their throttling works. Right now, I think it's intended to be more or less a black box to us.
Edited by Laurabelle on 12/7/2012 6:15 AM PST
Reply Quote

Please report any Code of Conduct violations, including:

Threats of violence. We take these seriously and will alert the proper authorities.

Posts containing personal information about other players. This includes physical addresses, e-mail addresses, phone numbers, and inappropriate photos and/or videos.

Harassing or discriminatory language. This will not be tolerated.

Forums Code of Conduct

Report Post # written by

Explain (256 characters max)