###What are the API request limits?
A single IP address can only make a certain number of API requests per day, depending on the presence of a valid API key.
Default API daily limits:
- Key: 10,000
- No Key: 300
These limit are per-site, per-day. So, with a legitimate key, you can make 10,000 requests a day to each site which exposes the API.
###When should I use a key?
The No Key
limit is meant for light experimentation and simple development work. The instant you need the higher limit, it is acceptable to register for a key. Your application does not need to be in a releasable - even an alpha - state. Remember to update your application registration when you do release your app.
###I'm building a library, should I include a key?
No, your library should instead take a key to use at initialization.
Remember that using a revoked or invalid key on a request will cause that request to not be completed. Consequently, an abusive application using your library could result in all legitimate applications also using your library being banned from the API.
For development purposes it's fine to register for an API key and use it in, say, a test suite or demo application.
###What should I do if I need more requests per day?
Certain types of applications - services and websites to name two - can legitimately have much higher per-day request requirements than typical applications. If you can demonstrate a need for a higher request quota, contact us.
However, the Key
limit should be sufficient for development so please only request an increased quota when your application is live and has a non-trivial number of users.
###What if I share an IP with another [app]?
You should assume this is the case for any client side [app]s, and put great effort into reducing your query rate accordingly. Don't think of it as your [app] quota, but as the user's quota.
If your [app] runs on a server, you may be able to get it authorized. This puts it on a non-IP based quota, see [this faq for more details. Be aware that authorization isn't something you should plan for, if you can get a dedicated IP without great effort that is the correct thing to do for a server [app].