Tuesday, May 17, 2016

Re-Introducing EveKit



EveKit was introduced in mid 2014 via this forum post.  Since that time, the features of EveKit have changed a bit and the service itself was shut down for several months as I reconsidered whether it was even worth running.  As I wrote about a month ago, I almost immediately regretted not having the full history of my EVE API data available somewhere online.  So I started on the path of bringing it back in a more sustainable way.  I may still be the only user, but my hope is that others will find the code useful, as well as the various applications I plan to build on top of EveKit.  EveKit is 100% open source.  You can find all the code on our GitHub site, along with basic instructions for running it yourself.

And so, without further ado, I'm happy to announce that EveKit is officially back in business.  The new site is located here:  https://evekit.orbital.enterprises.

The rest of this entry will describe the basic features of EveKit.  The site has pointers to more detailed documentation as well as "get started" guide right on the front page.  I'll also be updating the few videos I produced around the function of EveKit.

What is EveKit?

EveKit is a web application which downloads your EVE API data to a backend server and gives you access to your data through a REST interface, or via a bulk download (a zip of CSV files).  The hope is that EveKit will serve as a platform for other third party developers.  To that end, EveKit provides the following key features:

  • EveKit stores data for both characters and corporations.  You tell EveKit what kind of data to store when you add an EVE API key.
  • EveKit can pull data from the EVE servers on demand, or continuously (at least as often as the EVE API allows).  You can change this setting for an account at any time.
  • EveKit versions all data.  When a new version of some data item is downloaded, the old version is stored away with a pair of time stamps indicating the range over which it was "current".
  • EveKit data can be accessed through a standard REST API.  We also provide a Swagger specification to make it easy to use our API from various programming languages.
  • EveKit data can also be downloaded as a daily snapshot, which stores your data as a zip archive of CSV files.
  • EveKit lets you share your data with others using EveKit API keys.  These keys are similar to EVE API keys in that they can be used to limit accessibility.

What do all these features give you?
  • an always up to date and comprehensive copy of your API data.  No more worrying that you may miss data because your desktop application hasn't contacted the API in a while.
  • a complete history of your API data.  Want to know what your character sheet looked like several months ago?  No problem, just ask EveKit to return a view of your data at a given time.
  • a web accessible copy of your data, either for backup, or for use in other tools.  EveKit provides its own API keys for accessing the data it stores.  These keys can be provided to other applications for accessing your data.

How Do I Use EveKit?

The front page of the site has a "Getting Started" checklist, but the steps amount to this:

  1. Login using one of the following mechanisms (these all use OAuth, EveKit doesn't store user credentials):
    1. Your EVE Online account;
    2. A Google account; or
    3. A Twitter account.
  2. Create a new "Sync Account" (via the "Sync Accounts" menu).  You'll need a valid EVE API key for this step.
  3. Wait for your data to sync for the first time, either on-demand (if you chose manual sync), or within a few minutes (if you chose auto sync).

Using the APIs to access your data take a bit more work, but the gist is that you need to create at least one EveKit API key, then use the REST APIs with the credentials from your EveKit key to access your data.  Creating an EveKit API key is straightforward:

  1. Use the "Data Access Keys" drop down to select the account you want to create a key for (this menu is only visible if you are logged in).
  2. Click the "Create New Access Key" button.
  3. Follow the instructions on the new key page (e.g. name your key, drag over one or more sections you wish to allow access to).
  4. Keys are usable immediately once they have been saved.
Your model data is accessible using a REST API and the access key you just created.  Since we've annotated the API using Swagger, we can provide documentation using the Swagger UI.  You can view this documentation by selecting the "Model API" link (under the "API" menu).  That version of the documentation requires you to copy your API access key and credential in to each call.  If you want to browse the API with key and credential pre-populated with one of your keys, use the "Data Access Keys" menu to navigate to the list of keys for one of your accounts.  Then click the "Explore" button on the appropriate key.  This will bring up a version of the Swagger UI pre-populated with the appropriate key and credential.

Need More Help?

There are short videos on the EveKit Guides, Videos and Tutorials page that cover the account creation and data access instructions above.  You'll also find other useful information on that page, such as how to use Swagger to instantiate a model client in your favorite language.

If you have questions, or otherwise need more help, feel free to drop a comment here or post in the appropriate section of the Orbital Enterprises forum.

0 comments:

Post a Comment