Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

EVE Stable Infrastructure: Difference between revisions

From EVE University Wiki
m update category to a better one
Add example section, add section about rate limits
Line 1: Line 1:
{{Update|Need more information on the endpoints, and fleshing out some how-to guides}}
{{Update|Need more information on the endpoints, and fleshing out some how-to guides}}
EVE Swagger Interface (ESI) is an API that can be used by [[Third-party tools|third party applications]] to interact with data from the EVE game servers. It replaces CREST and the XML API which were shut down on May 8th, 2018.<ref>https://developers.eveonline.com/blog/article/important-information-on-the-future-of-the-eve-api</ref>
EVE Swagger Interface (ESI) is an API that can be used by [[Third-party tools|third party applications]] to interact with data from the EVE game servers. It replaces CREST and the XML API which were shut down on May 8th, 2018.<ref>https://developers.eveonline.com/blog/article/important-information-on-the-future-of-the-eve-api</ref> The data returned by ESI is in the JSON format.


ESI has both public-data and authenticated endpoints, the latter of which require a character to log in via [[EVE SSO]] to their character account to gain access to information specific to their character or, provided they have the appropriate corporate roles, their corporation. As of March 2025 there are 76 public-data and 119 Authenticated endpoints (195 total).
ESI has both public-data and authenticated endpoints, the latter of which require a character to log in via [[EVE SSO]] to their character account to gain access to information specific to their character or, provided they have the appropriate corporate roles, their corporation. As of March 2025 there are 76 public-data and 119 Authenticated endpoints (195 total).
Line 77: Line 77:
| Wars || 3 || || Details on all wars that have happened in the game, including their killmails.
| Wars || 3 || || Details on all wars that have happened in the game, including their killmails.
|}
|}
== Examples ==
To get a list of all alliances in EVE, the  <code>/v2/alliances</code> endpoint can be used. It lists the alliance ID of all alliances. Since it is a public endpoint, it is even possible to a look at it in the browser, although the data comes is in machine-readable JSON: https://esi.evetech.net/latest/alliances/
Some endpoints also support parameter in the URL. For example the type endpoint <code>/v3/universe/types/{type_id}/</code> returns information about a type ID. The rifter has type ID 587. To look up informations like its description, the <code>{type_id}</code> part in the URL is replaced with the type ID. The full URL would then be https://esi.evetech.net/latest/universe/types/587/
If possible, CCP requests that users add a descriptive user agent to any ESI request, including a contact email, so that they can be contacted instead of being banned for e.g. causing too much load on the ESI servers. <ref>https://developers.eveonline.com/docs/services/esi/#user-agent</ref>
== Tips & Tricks ==
Most ESI endpoints don't have rate-limits, but are error-limited instead, meaning an ESI application is blocked if it makes too many erroneous requests. However, there are two notable exceptions: The <code>/v2/characters/{character_id}/corporationhistory/<code>  and the <code>/v1/markets/{region_id}/history/<code> endpoints have rate limits of 300 requests per IP per minute.<ref>https://forums.eveonline.com/t/resolved-esi-characters-corporation-history/391132/27</ref><ref>https://www.eveonline.com/news/view/eve-evolved-the-future-of-eves-api</ref> This rate limit is unfortunately not documented in the ESI docs.


== Resources For Developers ==
== Resources For Developers ==