Hey everyone!
I was advised today that there was a change made on Friday to:
GET esi-characters/characters/{character_id}/
route, AKA the get character information route. The change was that the cache time has been updated from 1 day to 7 days in response to an increase in the number of projects scraping it.
Apologies the messaging for this one wasn’t made sooner, I’m endeavoring to try and get as much messaging about ESI changes as quickly as we’re made aware of them.
e: Via @CCP_Swift
I will add a bit more context as to some of the ESI failures, as it’s, unfortunately, more widespread than this endpoint. he Market data endpoint has been down, and now two relating to character corporation history (though afaik not alliance history), are down or impaired.
The TL;DR for why these endpoints were taken offline is that there is a third-party developer, or a series of third-party devs, using AWS and requesting information from these endpoints so frequently that it puts the rest of the server at risk. These are on the scale of a 6,000% increase in hourly requests. Typically we’d use IP bans to stop the attack and then players would reach out to us, however, that strategy is no longer working in a climate where AWS can assign another IP immediately.
The team is aware of how severe these outages are and are actively pursuing solutions that will restore functionality and give us more tools to block errant programs or bad actors without taking the entire service offline.
e: back from @CCP_Zelus
We have adjusted this back from 7 days to 1, which was what it originally was this afternoon. This may again be increased in the future if the requests are found to impair the server.
A recommendation from the team also suggests using as many of the auth’d endpoints as possible for future development, as those are easier to maintain uptime for. For this case, the affiliation endpoint may prove to be more beneficial in the long run!