Customizable API keys goes live for testing | EVE Online

Customizable API keys goes live for testing

2011-05-27 - Von CCP Stillman

Greetings!

As you might recall, some months ago we discussed the prospect of an upgraded API which would support "customizable" API keys. Back then, it was still just in the design phase, and since then we've been hard at work to make this happen. It took a bit longer than hoped, and I'll explain why:

Welcome back to CCP Elerhino!

As you might remember, CCP Elerhino was our API dude for the better part of two years. Unfortunately, he left us for a bit, and CCP Prism X stepped in for him and has been working hard on improving it ever since. As it turns out, CCP Prism X's skills were needed full time on another team. But fear not, CCP Elerhino is once again ready to work on the EVE API and implement all the lovely features you guys want. So welcome back, CCP Elerhino!

So where are we now?

There has been a small transition period for CCP Elerhino to get caught up with the work that Prism X has done. But after having spent night and day for the last two weeks to get a fully working version of the customizable API key system ready, we're getting very close. In fact, so close that we now want to invite you to play with this new version of the API!

A first look

You can now go to //supporttest.eveonline.com/API and log in with your account details, and start using the new customizable API key system together with the Singularity API server (//apitest.eveonline.com).

Once you've created a customizable API key, you can query the API by providing the keyID, the vCode, and if you have not explicitly stated a character to be used with the key, a characterID like in the old system. Like this:

//apitest.eveonline.com/char/CharacterSheet.xml.aspx?keyID=1&vCode=SOSECRETYOUCANTKNOW&characterID=42

Creating keys with specific access

In order to make it easier for programs to instruct a user on how to create a key with the specific needs of the application, we've made a way for applications to send the user to the "Create Key" page with pre-defined data. The URL pattern is like this:

//supporttest.eveonline.com/api/Key/CreatePredefined/{accessMask}/{characterID}/{isCorporationKey(true/false)}               

For character keys the characterID and isCorporationKey are optional but for corporation keys they are mandatory and the specified character must be a CEO. Examples:       

  • Character: //supporttest.eveonline.com/api/Key/CreatePredefined/9830414
  • Character: //supporttest.eveonline.com/api/Key/CreatePredefined/9830414/150145436
  • Character: //supporttest.eveonline.com/api/Key/CreatePredefined/9830414/150145436/false
  • Corporation: //supporttest.eveonline.com/api/Key/CreatePredefined/9830414/150145448/true

Checking key access

Once a user has created a key, we now allow you to validate the access that this key provides, to ensure your application can access everything it needs. By calling //apitest.eveonline.com/account/APIKeyInfo.xml.aspx?keyID=x&vCode=VERYVERYSECRET, you will get a result like this:

Using this, you can tell the user if the key needs more access.

We need your feedback

We're releasing this exciting new feature to Singularity very early on, to gather feedback from everyone at an early stage, so that we can iterate on it quickly and make changes based on your feedback. As such, we rely on your feedback to tell us what's good and what's bad, and any suggestion you might have on how we can improve it.

If you find any bugs, please file them on bugs.eveonline.com. For general feedback, we've created a thread right here, which we'll be reading religiously.

Once we're happy with the state of the feature, we'll be deploying it to Tranquility. Once that is near, expect to hear more from us with an official announcement!

Go forth and customize things. You know you want to!

Stillman