Third Party Developer Blog

Jun
19

The ESI API is a shared resource, do not abuse it

Team Tech Co | 2018-06-19 16:01

Greetings developers.

As you all know, the ESI API is a shared resource among all of New Eden's citizens, and we work closely with developers to foster good practices and ensure everyone has equal access to it. Team Tech Co has for some time now been monitoring the usage of the /search/ routes, and we are sad to report that several developers are placing disproportionate load on the search service in order to achieve goals that it was never intended to serve.

The goal of the search endpoint is to allow developers to upstream the searching for and autocompletion of the names of various types of entities in the eve universe. This saves third party developers the trouble of implementing their own search whilst also providing a more comprehensive search experience, and makes life better for everyone. Unfortunately, some developers have for some time now been using it as a discovery endpoint for various things by dumping extremely large numbers of carefully structured requests into it. 

When this behavior first started, it was done carefully and relatively well optimized, and we felt we could keep an eye on it and see how the situation developed. It has developed poorly. Since then, the developers doing this have become considerably messier in their use and the situation can no longer be tolerated.

This kind of behavior is exactly why most API's have rate limits, but Team Tech Co. believes strongly that the ESI API is better without a rate limit. In the past we have relied on the error limiter to curb this kind of behavior, but the error limiter does not suit defending against this specific case.

From this point forwards, using the search endpoints as a discovery mechanism will be considered abuse of the API, and will be met with bans. There will be a grace period of 1 week from the release of this blog for people to turn off their scrapers. People who increase the rate of scraping during this week will be banned from the API.

We ask you to respect this ruling. If developers are unable to treat the ESI resources with respect, it may be necessary to reconsider the policy of not using rate limits.

Thanks for your assistance in this matter,

Team Tech Co.

back