ESI March News
This blog post is part of a series of blogs examining best practices for ESI development. Each blog will be published on the 8th of each month during the journey towards XML API and CREST’s termination date. The legacy APIs will be terminated on May 8th, 2018.
March has been a busy month for ESI so this blog will cover all the ESI news relevant to third party developers from the previous month.
A/B Testing
As some of you may know if you follow our twitter or participate in the #esi slack channel, ESI began proxying a percentage of requests from its current cloud provider (Google Cloud) to its new cloud provider (Amazon AWS) on March 27th.
The decision to migrate to AWS through means of A/B testing was made after Tech Co. originally dove head first into the deep end on March 15th when 100% of requests to https://esi.tech.ccp.is were redirected to https://esi.evetech.net (the URL for ESI's AWS infrastructure). Unfortunately, after about 12 hours of smooth sailing, things went downhill and we were forced to roll back to our Google Cloud infrastructure.
Following a retrospective about what went wrong, Team Tech Co. decided to take a more gentle approach and begin by only sending a small percentage of ESI requests to AWS. Thus, on March 27th, 2% of ESI requests began returning the HTTP header X-Esi-Ab-Test: 1
signifying their travels to AWS and back.
After fixing a small hiccup, ESI on AWS ingested 2% of requests with grace. On April 3rd the percentage of requests sent to AWS was bumped to 5% which is where things sit currently at the writing of this blog. The goal is to send 100% of requests to AWS by the end of April.
What does this mean for third party developers? Hopefully nothing! If things go smoothly you should not notice. However, do keep an eye out for the HTTP header X-Esi-Ab-Test: 1
in responses from ESI and please mention if it was present when you submit issues to esi-issues.
changelog.md
During ESI's lifetime, we've been keeping you up to date with future plans through our esi-issues Github project board. However, this month we hit the 50 column limit and were forced to think about how to continue letting you know about ESI updates going into the future. Instead of making a new project board, we decided it would be easier for both you and us to put all changes to ESI in a file called changelog.md at the root of our esi-issues Github repository. Enjoy!
Prioritizing esi-issues
Now that there is only one XML API -> ESI parity issue currently in progress this means that we'll be able to finally start on your never ending stream of feature requests. However, we need your help deciding what to tackle first. We would like to start a new system where thumbs up emojis are king. We are going to begin sorting feature requests by "thumbs ups", so please find the feature requests you care about and add a thumbs up to the parent comment.
ESI and chat channels
Since the release of EVE's new chat backend the ESI route /v1/characters/{character_id}/chat_channels/ ceased to return any new data. The route still functions but will only return stale data at this time. Tech Co. is working with the team behind these changes to fix this route but no ETA is known yet for when this will be fixed.
XML API Issues
Starting on March 26th the XML API started having unexpected issues and stopped being able to process a large percentage of its requests. It was brought back up on the night of March 26th and ran smoothly until March 31st, when it once again stopped being able to process any requests. After bringing it back online from this downtime it was only able to process a small percentage of requests. Since then we have put as many resources as we feel the XML API warrants but have not been able to get it recovered to its previous state.
We understand this is frustrating to those who are still transitioning from the XML API to ESI and apologize for this inconvenience. We will keep putting as many resources as we think is reasonable into fixing this problem before May 8th, but be prepared for a rocky month with the XML API.
Conclusion
There is only one month left until the official death of the XML API and CREST on May 8th. Good luck with all your XML -> ESI migrations and see you at Fanfest!
o7
-- Team Tech Co.
Appendix
The following routes have been added or updated in ESI since the previous blog:
New routes:
New versions of existing routes:
- GET /dev/characters/{character_id}/wallet/journal/ (v4)
- GET /dev/corporations/{corporation_id}/wallets/{division}/journal/ (v3)
Bumped routes:
- GET /latest/corporations/{corporation_id}/containers/logs/ (v2)
- GET /latest/corporations/{corporation_id}/blueprints/ (v2)
- GET /latest/characters/{character_id}/notifications/ (v2)
- GET /latest/corporations/{corporation_id}/assets/ (v3)
Removed routes:
-
GET /v1/corporations/{corporation_id}/assets/
Updates to existing routes:
-
system_id
added to/v1/markets/{region_id}/orders/
-
asteroid_belts
added toplanets
object in response from/v3/universe/systems/{system_id}/
Get a sneak peek at what's coming to ESI by watching our changelog.
New to ESI? Check out our ESI quick reference.
Migrating from the XML API? Find equivalent ESI endpoints to the XML API.
Migrating from CREST? Find Equivalent ESI endpoints to CREST.