Home

Welcome to the Third-Party Developer(s) Documentation for EVE Online.

This is a new community supported repository for instructions and guidance that is useful for those making third-party tools for EVE.

It is intended to always be a living document, and the plan is for it to be frequently updated to reflect changes in the APIs and/or services. At present it is very much a work in progress and much of the content is yet to be written. The main focus so far has been on the SSO and CREST, as these are new services, which have not yet had extensive third party documentation efforts, and get asked about frequently on the technology lab forums.

Contributing

There is a lot of work to be done on this site and any contributions are welcome. The docs are hosted on a GitHub repository, where anyone can fork it, commit changes and submit a pull request to get your changes onto the site.

The source files are written in markdown, which is very easy to get started using. There is a fairly good introduction to markdown available from GitHub.

There is a contributors file, as well as more info on contributing to the documentation on the repository.

Guidelines and References

Developer License

All use of Authenticated CREST is subject to the terms of the Developer License.

To use Authenticated CREST, you will need to enable your account on the developer site. You must have paid for eve at some point in the past and you will need to agree to the Developer License.

Licensing FAQs
  1. Can I charge people real life money for my application? A) No.
  2. Can I charge people ISK (the in-game currency) for access to my application? A) Yes.
  3. Can I generate revenue via ads in my application? A) Yes, however you must follow CCP’s guidelines for monetization of videos
  4. Am I allowed to collect donations from users of my application? A) Yes, as long as they are purely voluntary. “Donations” may not be mandatory, and you cannot require a donation to unlock premium access or special items.

Guidelines

  1. If you want to do something and have to ask “I know this is bad but maybe they will let me do it anyways.” Just don’t do it.
  2. Obey the posted rate limits, especially true for the XML API as that requires us to manually un-ban you, which will take more time.
  3. Obey the cachedUntil values on the XML API.
  4. Provide a good User-Agent header.

Quick Reference

URLs
Tranquility
Singularity (Test Server)

Formulas

Warp-in Points

A warp-in point is where your ship will land in space when warping to an object.

Many external factors may disrupt a warp, e.g. warp disruption fields, insufficient electrical capacity, warp jitter, etc.; these formulas do not account for these phenomenas, they assume perfect conditions.

Ordinary Objects

An ordinary object is any object that does not fall withing any of the other categories described below.

Let the 3D vectors \( p_d \) and \( p_s \) represent the object’s position and the warp’s origin, respectively; and \( \vec{v} \) the directional vector from \( p_s \) to \( p_d \). Let \( r \) be the object’s radius.

The object’s warp-in point is the vector \( p_s + \vec{v} - r\hat{v} \).

Large Objects

A large object is any celestial body whose radius exceeds 90 kilometres (180 kilometres in diameter), except planets.

Let \( x \), \( y \), and \( z \) represent the object’s coordinates. Let \( r \) be the object’s radius.

The object’s warp-in point is the vector \( \left(x + (r + 5000000)\cos{r} \\, y + 1.3r - 7500 \\, z - (r + 5000000)\sin{r} \\ \right). \)

Planets

The warp-in point of a planet is determined by the planet’s ID, its location, and radius.

Let \( x \), \( y \), and \( z \) represent the planet’s coordinates. Let \( r \) be the planet’s radius.

The planet’s warp-in point is the vector \( \left(x + d \sin{\theta}, y + \frac{1}{2} r \sin{j}, z - d \cos{\theta}\right) \) where:

\[d = r(s + 1) + 1000000 \]
\[ \theta = \sin^{-1}\left(\frac{x}{|x|} \cdot \frac{z}{\sqrt{x^2 + z^2}}\right) + j \]
\[ s|_{0.5 \leq s \leq 10.5} = 20\left(\frac{1}{40}\left(10\log_{10}\left(\frac{r}{10^6}\right) - 39\right)\right)^{20} + \frac{1}{2} \]

Now, \( j \) is a special snowflake. Its value is the Python equivalent of
(random.Random(planetID).random() - 1.0) / 3.0.

Example Implementation
import math
import random

def warpin(id, x, y, z, r):
    j = (random.Random(id).random() - 1.0) / 3.0
    t = math.asin(x/abs(x) * (z/math.sqrt(x**2 + z**2))) + j
    s = 20.0 * (1.0/40.0 * (10 * math.log10(r/10**6) - 39))**20.0 + 1.0/2.0
    s = max(0.5, min(s, 10.5))
    d = r*(s + 1) + 1000000

    return (x + d * math.sin(t), y + 1.0/2.0 * r * math.sin(j), z - d * math.cos(t))

Single Sign-On (SS0)

Introduction

What is the SSO

Simply put, SSOs are a way for users to log into one web site using their username and password from another web site. For example, if go to https://www.goodreads.com/ and try to sign in they will ask you if you want to sign in with Facebook, Twitter, Google, or even Amazon. For Goodreads this is great because it means they don’t have to worry about trying to manage your username and password information. It also has the nice advantage of making it a lot easier for you as a user to sign into their site as you don’t need to register or keep track of multiple extra account names and passwords.

For EVE Online, the SSO means that you can sign into a web site that has integrated the EVE SSO and confirm you are a specific character. While signing into a site you will be asked which character you wish to authenticate with and the web site that let you sign in with the EVE SSO will get confirmation from CCP that you own that character. The original web site will only ever get your character, they never see your account name or password. The original web site will not know what account that character is on or have any way, from us at least, of linking that character to any other character on the same account.

Registering for the SSO

To use the SSO in your app, you must first register it at the developers’ site. When you create a new application here it will give you a client ID and secret key, which are used in the authentication flow.

You are required to supply a callback URL and this is the only location the login server will redirect back to after the user has authorised the login (see the authentication flow for details).

You will also be asked to select what authentication scopes your application will ask for. At present, the only one is publicData, which gives access to market orders.

Errors

Please note:

If too many HTTP requests are done to an SSO endpoint within a set time interval the SSO will return a HTTP 409 response (being vague on the number of requests and time on purpose as we will be tuning these values).

Test Server

All instances of https://login.eveonline.com can be swapped for https://sisilogin.testeveonline.com when trying to use Sisi.

Login Images

When creating a button to direct users to login to your site or application with the EVE SSO please use one of the following images for the button. This helps create consistency for EVE players and when they view your site or application will more easily be able to quickly identify that it supports the EVE SSO.

EVE SSO Login Buttons Large White EVE SSO Login Buttons Large Black EVE SSO Login Buttons Small White EVE SSO Login Buttons Small Black

Authentication Flow

Implementing the SSO

The recommended flow for web applications where the client secret can be stored on a server is the Authorization Code Grant documented here.

For those users that don’t feel like reading the standard the authentication is really just a series of HTTPS requests and redirects described in this document.

Redirect to the SSO

When a user clicks the “login” button on a your website you need to redirect the user with HTTP 302 redirect to https://login.eveonline.com/oauth/authorize with the following query string parameters:

  • response_type - Must be set to “code”.
  • redirect_uri - After authentication the user will be redirected to this URL on your website, it must match the definition on file in the SSO.P
  • client_id - A string identifier for the client, provided by CCP.
  • scope - The requested scopes as a space delimited string.
  • state (OPTIONAL but recommended) - An opaque value used by the client to maintain state between the request and callback. The SSO includes this value when redirecting back to the 3rd party website. While not required, it is important to use this for security reasons. http://www.thread-safe.com/2014/05/the-correct-use-of-state-parameter-in.html explains why the state parameter is needed.

Example URL: https://login.eveonline.com/oauth/authorize/?response_type=code&redirect_uri=https://3rdpartysite.com/callback&client_id=3rdpartyClientId&scope=&state=uniquestate123

The user will need to authenticate with a username/password on the SSO and select the character that your web site will be given access to. If the user has previously logged in to some other website the authentication has already been done, this is single sign-on after all, and they will just need to select a character and approve the required scopes.

The SSO will redirect the user back to the provided callback_uri with an authorization code and the state as query string parameters.

That will look something like this: https://3rdpartysite.com/callback?code=gEyuYF_rf...ofM0&state=uniquestate123

  • code - The Authorization code.
  • state - The state parameter that was sent in the original request to the SSO.
Verify the authorization code

At this point in time your website has the authorization code. The only thing the authorization code is good for is to obtain an access token.

It is also important to note that the authorization code is single use only.

The you need to make an HTTP POST to https://login.eveonline.com/oauth/token to exchange the authorization code with an access token, and it looks like this:

POST https://login.eveonline.com/oauth/token HTTP/1.1

Authorization: Basic bG9...ZXQ=
Content-Type: application/x-www-form-urlencoded
Host: login.eveonline.com

grant_type=authorization_code&code=gEyuYF_rf...ofM0
  • Authorization HTTP header: This is the string “Basic” plus the string {client_id}:{client_secret} Base64 encoded
    • NOTE: It is very important to make sure there are no spaces or newline characters in the string that is being Base64 encoded. If in doubt, try to Base64 encode these sample values and compare to the one below.
    • Example values:
      • client_id = 3rdparty_clientid
      • client_secret=jkfopwkmif90e0womkepowe9irkjo3p9mkfwe
      • Concatenated to become: 3rdparty_clientid:jkfopwkmif90e0womkepowe9irkjo3p9mkfwe
    • Resulting in Base64-encoded Authorization header
      • Authorization: Basic M3JkcGFydHlfY2xpZW50aWQ6amtmb3B3a21pZjkwZTB3b21rZXBvd2U5aXJram8zcDlta2Z3ZQ==
  • grant_type=authorization_code: This is fixed and doesn’t change
  • code: The authorization code obtained in Step 1. Make sure there are no extra spaces or newline characters at the end of the HTTP body.

A successful verification request will yield a response in JSON format similar to the following:

{
    "access_token": "uNEEh...a\_WpiaA2",
    "token_type": "Bearer",
    "expires_in": 300,
    "refresh_token": null
}

The access token returned is valid for 1200 seconds, or 20 minutes.

Refresh Tokens

If any valid scope was requested in the initial redirect to the SSO, a refresh token will be returned by the token endpoint, along with the access token. While the access token will expire after a set interval - currently 20 minutes, the refresh token can be stored and used indefinitely. (Users can revoke access for individual apps on the support site)

To get a new access token you make a POST request to “https://login.eveonline.com/oauth/token” with the following params:

grant_type=refresh_token&refresh_token=USERS_REFRESH_TOKEN

You also need to include the same Authentication header (base64 encoded) as you used for the first call to the token endpoint. Example:

Authorization: Basic [Base64 encoded client_id:client_secret]

So your call will look like

POST https://login.eveonline.com/oauth/token HTTP/1.1

Authorization: Basic bG9...ZXQ=
Content-Type: application/x-www-form-urlencoded
Host: login.eveonline.com

grant_type=refresh_token&refresh_token=gEyuYF_rf...ofM0

The json formatted response should contain a new access token for that user, along with the time until it expires.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

SSO For Browser Apps

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Non-Browser Apps

Obtaining Character ID

Once you have obtained an access token, you can ask the login server for some details of the character that was used to authenticate.

This step is entirely optional, as all you need to authenticate to CREST is the access token and these details can also be obtained from CREST by going CREST root -> TokenDecode -> Character.

To get the character ID from the SSO server make an HTTP GET request to https://login.eveonline.com/oauth/verify that looks like this:

GET https://login.eveonline.com/oauth/verify HTTP/1.1

User-Agent: ...
Authorization: Bearer uNEEh...a_WpiaA2
Host: login.eveonline.com

Important parameters are:

Authorization header - “Bearer” plus the access token from step 2 A successful request will yield a response in JSON format similar to the following:

{
    "CharacterID": 273042051,
    "CharacterName": "CCP illurkall",
    "ExpiresOn": "2014-05-23T15:01:15.182864Z",
    "Scopes": " ",
    "TokenType": "Character",
    "CharacterOwnerHash": "XM4D...FoY="
}

The response should be mostly self explanatory except for the CharacterOwnerHash which is a unique hash of the user, the character and salts and secrets all done in secret. But effectively this is unique and doesn’t change while the character belongs to the same user account. The CharacterOwnerHash will change if the character is transferred to a different user account and that is the only thing it is useful for, it cannot be used to obtain the user id for a character and it cannot be used to determine if two different characters belong to the same user. 3rd party applications can use this if they are sensitive to characters changing owners, if not this can be safely ignored.

CREST

Introduction

CREST is the new RESTfull API, destined to replace the older XML API. Currently there is far less data available on CREST, so the XML API is not going away for a long time. The main selling points of CREST include:

  • CREST is capable of allowing write access, as well as read.
  • CREST communicates directly with the game servers, rather than the backend database, so can better reflect the current state of the game.
  • CREST is built with high traffic and complex loads in mind and has strong caching. Expect shorter cache timers and better performance and reliability.
Public CREST

Public CREST is a version of the API that is available without authenticating through the SSO.

At present, most endpoints are available through public CREST, however as more are added, the majority are likely to require authentication. Specifically, write access will only be available on Authenticated CREST.

The list of endpoints available from the CREST root, as well as other references to other resources in the API include links to endpoints that require authentication. Trying to follow these links will return a 403:Forbidden HTTP response. It is important to note that this is true regardless of what authentication headers you might try to send, authentication is only available on the authed CREST server (A different root url).

Walking

CREST is designed to be a properly RESTful API with good support for versioning and changes. As such, a well designed app will not break when things are changed on the API (most of the time!). To enable this one of the things your app should do is generate links to endpoints dynamically. The only hard coded URL will be to the root resource. Here you will find a list of all the other top level endpoints, with href elements for each.

To get the list of endpoints, you simply need to make an HTTP GET request to the appropriate root (SISI or TQ).

For more details on walking through endpoints, see the appropriate section of these docs.

Other Information
Rate Limits
Public CREST
  • General Rate Limit: 150 requests per second
  • Burst Size: 400
  • Concurrent Connections: 20

Authentication and Scopes

Authenticated CREST

When designing your application you will need to decide what information you require from CREST and if any of that information requires authentication.

Currently most data is available from public crest, so does not require authentication. Anything that does will be listed under a scope

Once you have decided what scopes you require for your app, you will need to follow the instructions in the SSO section to register your app on the dev site and then to get an access token.

Scopes

When designing your application you will need to decide what information you require from CREST and if any of that information requires authentication.

Currently most data is available from public crest, so does not require authentication. Anything that is not public will have a scope attached. In order to access these endpoints, your app must have been set up with that scope enabled on the dev site and you must have requested that scope when getting your access token from the SSO.

publicData

The first scope released. It allows access to live market orders data for any region. CCP FoxFour has said that this data will probably moved to Public CREST soon, so this scope may well become deprecated.

characterContactsRead

Allows access to reading your character’s contacts.

characterContactsWrite

Allows access to create and update your character’s contacts.

characterFittingsRead

Allows an application to read all of the saved fits for a character.

characterFittingsWrite

Allows an application to create new saved fits as well as delete existing ones.

characterLocationRead

Allows an application to read your character’s current location.

characterNavigationWrite

Allows an application to set your auto-pilot waypoints on your client.

Using your access token

Once you have a valid access token from the SSO, you can make calls to authenticated CREST by adding an Authorization header and using the auth’d crest endpoint.

Authorization: Bearer [Your access token]

An authenticated call that lists all regions would look like this (note that the url here should have been obtained dynamically from the root endpoint, rather than being hardcoded):

POST https://crest-tq.eveonline.com/regions/ HTTP/1.1

Authorization: Bearer bG9...ZXQ=
Accept: application/vnd.ccp.eve.RegionCollection-v1+json
Host: crest-tq.eveonline.com

For information on the Accept header used here, see the Versioning section.

Versioning

Accept and Content-Type Headers

In order to help app developers preserve compatibility across updates to the CREST API, whenever an endpoint receives a breaking change, a new version is created and the old version remains available.

In order to request a specific version, you should send an Accept header, containing the appropriate Content-Type for the resource. It is good practice to always send this header in production, so that your app will continue to use a version of the resource that is known to work, regardless of changes made to CREST.

The easiest way to find the latest Content-Type for the endpoint is to make a request with no Accept header. If no such header is sent, the latest version is always returned. For example, a call to the Public CREST root, with no headers attached will contain the following in the response headers:

Content-Type: application/vnd.ccp.eve.Api-v3+json; charset=utf-8

In order to ensure that you always receive this version, you simply need to add this header to your POST (ignore the charset for versioning):

Accept: application/vnd.ccp.eve.Api-v3+json

If you need version 2 of this resource, you can send this header instead:

Accept: application/vnd.ccp.eve.Api-v2+json
The X-Deprecated Header

To help you find out when a resource is updated, old versions will send an X-Deprecated header. It is up to you to decide what to do with this in your app to help alert you to update it.

Breaking Changes

Not all API changes will trigger a new version. Specifically it has been announced that new items can be added to endpoints without changing the version. Because of this, your app should not rely on there only being certain items in the json of a response.

Any change that removes something from the result, or changes the format of data will normally be made in a new version.

Calls

Character
Contacts and Contact

The character contacts resource allows an application to both read and write a characters contacts.

Contacts
Route

/characters/<characterID:characterIdType>/contacts/

GET
  • Cache: 5 minutes
  • Scope: characterContactsRead

It is important to remember that adding or deleting a contact will not invalidate this cache. It is recommended that so long as you get the proper response code from CREST when you POST a new contact that you update any local cache at least temporarily.

{
    "totalCount_str": "1024",
    "pageCount": 6,
    "items": [
        {
            "standing": 3.5,
            "character": {
                "name": "0men666",
                "corporation": {
                    "name": "Far-East Corporation",
                    "isNPC": false,
                    "href": "https://api-sisi.testeveonline.com/corporations/98196279/",
                    "id_str": "98196279",
                    "logo": {
                        "32x32": {
                            "href": "https://image.testeveonline.com/Corporation/98196279_32.png"
                        },
                        "64x64": {
                            "href": "https://image.testeveonline.com/Corporation/98196279_64.png"
                        },
                        "128x128": {
                            "href": "https://image.testeveonline.com/Corporation/98196279_128.png"
                        },
                        "256x256": {
                            "href": "https://image.testeveonline.com/Corporation/98196279_256.png"
                        }
                    },
                    "id": 98196279
                },
                "isNPC": false,
                "href": "https://api-sisi.testeveonline.com/characters/1600000294/",
                "capsuleer": {
                    "href": "https://api-sisi.testeveonline.com/characters/1600000294/capsuleer/"
                },
                "portrait": {
                    "32x32": {
                        "href": "https://image.testeveonline.com/Character/1600000294_32.jpg"
                    },
                    "64x64": {
                        "href": "https://image.testeveonline.com/Character/1600000294_64.jpg"
                    },
                    "128x128": {
                        "href": "https://image.testeveonline.com/Character/1600000294_128.jpg"
                    },
                    "256x256": {
                        "href": "https://image.testeveonline.com/Character/1600000294_256.jpg"
                    }
                },
                "id": 1600000294,
                "id_str": "1600000294"
            },
            "contact": {
                "id_str": "1600000294",
                "href": "https://api-sisi.testeveonline.com/characters/1600000294/",
                "name": "0men666",
                "id": 1600000294
            },
            "href": "https://api-sisi.testeveonline.com/characters/92095466/contacts/1600000294/",
            "contactType": "Character",
            "watched": true,
            "blocked": false
        }
    ],
    "next": {
        "href": "https://api-sisi.testeveonline.com/characters/92095466/contacts/?page=2"
    },
    "totalCount": 1024,
    "pageCount_str": "6"
}
POST
  • Scope: characterContactsWrite

Returns the Location of the newly created contact in the Location header (also when contact already exists)

{
    "standing": 3.5,
    "contactType": "Character",
    "contact": {
        "id_str": "1600000294",
        "href": "https://api-sisi.testeveonline.com/characters/1600000294/",
        "name": "0men666",
        "id": 1600000294
    },
    "watched": true
}
Contact
Route

/characters/<characterID:characterIdType>/contact/<contactID:contactIdType>/

GET
  • Cache: 5 minutes
  • Scope: characterContactsRead
    Not Implemented!
PUT
  • Scope: characterContactsWrite

Used like adding, just set to the values you want to adjust.

{
    "contactType": "Character",
    "contact": {
        "id_str": "1600000294",
        "href": "https://api-sisi.testeveonline.com/characters/1600000294/",
        "name": "0men666",
        "id": 1600000294
    },
    "watched": false
}
DELETE

No content required for this request. Expect it to delete whatever resource it is sent to.

Errors

Each of these errors should be presented to the user so they can take the required action.

ContactsAddFull
  • Message: “The contact list you are adding to is full. Please consider trimming your current list.”
  • Note: You can currently have no more than 1024 personal contacts.
Fittings and Fitting

The character fittings resource allows an application to both read and write to the saved fitting service. This does not have anything to do with actually fitting a ship, just the saved fits.

One of the really nice things about the CREST fitting service is that when a fit is added or deleted a notification is sent to any connected clients. This means if a character has their fitting window open and a fit is added through CREST the fitting window should be updated almost immediately.

Fittings
Route

/characters/<characterID:characterIdType>/fittings/

GET
  • Cache: 15 minutes
  • Scope: characterFittingsRead

It is important to remember that adding or deleting a fit will not invalidate this cache. It is recommended that so long as you get the proper response code from CREST when you POST a new fit that you update any local cache at least temporarily.

{
  "totalCount_str": "1",
  "items": [
    {
      "description": "THIS IS A TEST FIT DESCRIPTION!",
      "fittingID_str": "258",
      "items": [
        {
          "flag": 11,
          "quantity_str": "1",
          "type": {
            "id_str": "518",
            "href": "http://crest.regner.dev/types/518/",
            "id": 518,
            "name": "Basic Gyrostabilizer"
          },
          "flag_str": "11",
          "quantity": 1
        }
      ],
      "fittingID": 258,
      "href": "http://crest.regner.dev/characters/90000001/fittings/258/",
      "ship": {
        "id_str": "587",
        "href": "http://crest.regner.dev/types/587/",
        "id": 587,
        "name": "Rifter"
      },
      "name": "THIS IS A TEST FIT NAME!"
    },
  ],
  "pageCount": 1,
  "pageCount_str": "1",
  "totalCount": 1
}
POST
  • Scope: characterFittingsWrite
{
  "name": "Name here...",
  "description": "Description here...",
  "items": [{
    "type": {
        "id": 518,
        "name": "Basic Gyrostabilizer",
        "href": "http://crest.regner.dev/types/518/"
    },
    "flag": 11,
    "quantity": 1
  }],
  "ship": {
    "id": 587,
    "name": "Rifter",
    "href": "http://crest.regner.dev/types/374/"
  }
}
Fitting
Route

/characters/<characterID:characterIdType>/fittings/<fittingID:fittingIdType>/

GET
  • Cache: 15 minutes
  • Scope: characterFittingsRead
{
  "description": "THIS IS A TEST FIT DESCRIPTION!",
  "fittingID_str": "258",
  "items": [
    {
      "flag": 11,
      "quantity_str": "1",
      "type": {
        "id_str": "518",
        "href": "http://crest.regner.dev/types/518/",
        "id": 518,
        "name": "Basic Gyrostabilizer"
      },
      "flag_str": "11",
      "quantity": 1
    }
  ],
  "fittingID": 258,
  "href": "http://crest.regner.dev/characters/90000001/fittings/258/",
  "ship": {
      "id_str": "587",
      "href": "http://crest.regner.dev/types/587/",
      "id": 587,
      "name": "Rifter"
  },
  "name": "THIS IS A TEST FIT NAME!"
}
DELETE

No content required for this request. Expect it to delete whatever resource it is sent to.

Errors

Each of these errors should be presented to the user so they can take the required action.

FittingsStopSpamming
  • Message: “Spamming the fitting service.”
  • Note: The fitting service is rate limited outside of CREST. This applies to all applications trying to access it, including the client. Stop for 15 seconds and wait.
OwnerMaxFittings
  • Message: “Maximum fittings of {} reached.”
FittingNameTooLong
  • Message: “Maximum fitting name length is {}.”
FittingDescriptionTooLong
  • Message: “Maximum fitting description length is {}”
Waypoints

The characters waypoints resource allows an application to write a characters waypoints.

Route

/characters/<characterID:characterIdType>/navigation/waypoints/

POST
  • Scope: characterNavigationWrite

Body format:

{
  "clearOtherWaypoints": false,
  "first": false,
  "solarSystem": {
    "href": "https://public-crest.eveonline.com/solarsystems/30000003/",
    "id": 30000003
  }
}

There is no response, you should look at response code to know if action succeeded. There also isn’t any response if you set same waypoint twice (like in game voice).

Location

The characters location resource allows an application to read a characters location.

Route

/characters/<characterID:characterIdType>/location/

GET
  • Cache: 10 seconds
  • Scope: characterLocationRead

User has to be online to see his location, if he is offline than response is empty.

{
  "solarSystem": {
    "id_str": "30002782",
    "href": "https://crest-tq.eveonline.com/solarsystems/30002782/",
    "id": 30002782,
    "name": "Kamio"
  }
}
Map
Constellations and Constellation

The constellations resource allows an application to read constellations.

Constellations
Route

/constellations/

GET
  • Cache: 1 hour
{
  "totalCount_str": "1120",
  "items": [
    {
      "id_str": "20000001",
      "href": "https://public-crest.eveonline.com/constellations/20000001/",
      "id": 20000001,
      "name": "San Matar"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "pageCount": 1,
  "pageCount_str": "1",
  "totalCount": 1120
}
Constellation
Route

/constellations/<constellationID:constellationIdType>/

GET
  • Cache: 1 hour
{
  "position": {
    "y": 1423857875901778200,
    "x": 7849376741752832000,
    "z": -9760976595570807000
  },
  "region": {
    "href": "https://public-crest.eveonline.com/regions/11000016/"
  },
  "systems": [
    {
      "href": "https://public-crest.eveonline.com/solarsystems/31002538/",
      "id": 31002538,
      "id_str": "31002538"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "name": "D-C00328"
}
Planets and Planet

The planets resource allows an application to read planets data.

Planets
Route

/planets/

GET
  • Cache: 1 hour
    Not implemented!
Planet
Route

/planets/<planetID:planetIdType>/

GET
  • Cache: 1 hour
{
  "position": {
    "y": 286901742,
    "x": -26423794568,
    "z": 49900095982
  },
  "type": {
    "href": "https://public-crest.eveonline.com/types/2016/"
  },
  "system": {
    "href": "https://public-crest.eveonline.com/solarsystems/30000032/",
    "name": "Hasiari"
  },
  "name": "Hasiari I"
}
Regions and Region

The regions resource allows an application to read regions.

Regions
Route

/regions/

GET
  • Cache: 1 hour
{
  "totalCount_str": "100",
  "items": [
    {
      "id_str": "11000001",
      "href": "https://public-crest.eveonline.com/regions/11000001/",
      "id": 11000001,
      "name": "A-R00001"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "pageCount": 1,
  "pageCount_str": "1",
  "totalCount": 100
}
Region
Route

/regions/<regionID:regionIdType>/

GET
  • Cache: 1 hour
{
  "description": "It has long been an established fact of civilization [...]",
  "marketBuyOrders": {
    "href": "https://public-crest.eveonline.com/market/10000042/orders/buy/"
  },
  "constellations": [
    {
      "href": "https://public-crest.eveonline.com/constellations/20000302/",
      "id": 20000302,
      "id_str": "20000302"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "name": "Metropolis",
  "id_str": "10000042",
  "id": 10000042,
  "marketSellOrders": {
    "href": "https://public-crest.eveonline.com/market/10000042/orders/sell/"
  }
}
Solar Systems and Solar System

The solar systems resource allows an application to read solar systems.

Solar Systems
Route

/solarsystems/

GET
  • Cache: 1 hour
{
  "totalCount_str": "8035",
  "items": [
    {
      "id_str": "30000001",
      "href": "https://public-crest.eveonline.com/solarsystems/30000001/",
      "id": 30000001,
      "name": "Tanoo"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "pageCount": 1,
  "pageCount_str": "1",
  "totalCount": 8035
}
Solar System
Route

/solarsystems/<solarsystemID:solarsystemIdType>/

GET
  • Cache: 1 hour
{
  "stats": {
    "href": "https://public-crest.eveonline.com/solarsystems/30000032/stats/"
  },
  "name": "Hasiari",
  "securityStatus": 0.7981876134872437,
  "securityClass": "B",
  "href": "https://public-crest.eveonline.com/solarsystems/30000032/",
  "id_str": "30000032",
  "planets": [
    {
      "href": "https://public-crest.eveonline.com/planets/40002133/"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "position": {
    "y": 39062466382135416,
    "x": -87895710227609470,
    "z": -26800575462533416
  },
  "sovereignty": {
    "id_str": "500007",
    "href": "https://public-crest.eveonline.com/alliances/500007/",
    "id": 500007,
    "name": "Ammatar Mandate"
  },
  "constellation": {
    "href": "https://public-crest.eveonline.com/constellations/20000005/",
    "id": 20000005,
    "id_str": "20000005"
  },
  "id": 30000032
}
Eve
Alliances and Alliance

The alliances resource allows an application to read alliances data.

Alliances
Route

/alliances/

GET
  • Cache: 30 minutes
{
    "totalCount_str" : 2989,
    "pageCount" : 12,
    "items" : [
        {
            "id_str" : 99000006,
            "shortName" : 666,
            "href" : "https://public-crest.eveonline.com/alliances/99000006/",
            "id" : 99000006,
            "name" : "Everto Rex Regis"
        },
        { "..." },
        { "..." },
        { "..." },
        { "..." }
    ],
    "next" : {
        "href" : "https://public-crest.eveonline.com/alliances/?page=2"
    },
    "totalCount" : 2989,
    "pageCount_str" : 12
}
Alliance
Route

/alliances/<allianceId:allianceIdType>/

GET
  • Cache: 30 minutes
{
    "startDate" : "2010-11-08T03:34:00",
    "corporationsCount" : 11,
    "description" : ,
    "executorCorporation" : { "..." },
    "corporationsCount_str" : 11,
    "deleted" : false,
    "creatorCorporation" : {
        "name" : "Covenant of the Phoenix",
        "isNPC" : false,
        "href" : "https://public-crest.eveonline.com/corporations/98001096/",
        "id_str" : 98001096,
        "logo" : {
            "32x32" : {
                "href" : "http://imageserver.eveonline.com/Corporation/98001096_32.png"
            },
            "64x64" : {
                "href" : "http://imageserver.eveonline.com/Corporation/98001096_64.png"
            },
            "128x128" : {
                "href" : "http://imageserver.eveonline.com/Corporation/98001096_128.png"
            },
            "256x256" : {
                "href" : "http://imageserver.eveonline.com/Corporation/98001096_256.png"
            }
        },
        "id" : 98001096
    },
    "url" : ,
    "id_str" : 99000020,
    "creatorCharacter" : {
        "name" : "Jan Shan",
        "isNPC" : false,
        "href" : "https://public-crest.eveonline.com/characters/681594178/",
        "capsuleer" : {
            "href" : "https://public-crest.eveonline.com/characters/681594178/capsuleer/"
        },
        "portrait" : {
            "32x32" : {
                "href" : "http://imageserver.eveonline.com/Character/681594178_32.jpg"
            },
            "64x64" : {
                "href" : "http://imageserver.eveonline.com/Character/681594178_64.jpg"
            },
            "128x128" : {
                "href" : "http://imageserver.eveonline.com/Character/681594178_128.jpg"
            },
            "256x256" : {
                "href" : "http://imageserver.eveonline.com/Character/681594178_256.jpg"
            }
        },
        "id" : 681594178,
        "id_str" : 681594178
    },
    "corporations" : [
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." },
        { "..." }
    ],
    "shortName" : "COTP",
    "id" : 99000020,
    "name" : "Covenant of the Phoenix Alliance"
}
Dogma Attributes and Attribute

The dogma attributes resource allows an application to read dogma attributes.

Attributes
Route

/dogma/attributes/

GET
  • Cache: 1 hour
{
  "totalCount_str": "1939",
  "pageCount": 4,
  "items": [
    {
      "id_str": "2",
      "href": "https://public-crest.eveonline.com/dogma/attributes/2/",
      "id": 2,
      "name": "isOnline"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "next": {
    "href": "https://public-crest.eveonline.com/dogma/attributes/?page=2"
  },
  "totalCount": 1939,
  "pageCount_str": "4"
}
Attribute
Route

/dogma/attributes/<attributeID:attributeIdType>/

GET
  • Cache: 1 hour
{
  "description": "Factor by which topspeed increases.",
  "unitID_str": "124",
  "displayName": "Maximum Velocity Bonus",
  "name": "speedFactor",
  "iconID": 1389,
  "unitID": 124,
  "iconID_str": "1389",
  "id": 20,
  "id_str": "20",
  "highIsGood": true,
  "stackable": false,
  "defaultValue": 1,
  "published": true
}
Dogma Effects and Effect

The dogma effects resource allows an application to read dogma effects.

Effects
Route

/dogma/effects/

GET
  • Cache: 1 hour
{
  "totalCount_str": "3896",
  "pageCount": 8,
  "items": [
    {
      "id_str": "4",
      "href": "https://public-crest.eveonline.com/dogma/effects/4/",
      "id": 4,
      "name": "shieldBoosting"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "next": {
    "href": "https://public-crest.eveonline.com/dogma/effects/?page=2"
  },
  "totalCount": 3896,
  "pageCount_str": "8"
}
Effect
Route

/dogma/effects/<effectID:effectIdType>/

GET
  • Cache: 1 hour
{
  "effectCategory_str": "0",
  "postExpression_str": "501",
  "isAssistance": false,
  "description": "",
  "isOffensive": false,
  "disallowAutoRepeat": false,
  "isWarpSafe": false,
  "preExpression_str": "500",
  "electronicChance": false,
  "rangeChance": false,
  "effectCategory": 0,
  "id_str": "61",
  "postExpression": 501,
  "published": false,
  "preExpression": 500,
  "displayName": "",
  "id": 61,
  "name": "agilityBonus"
}
Types and Type

The types resource allows an application to read types.

Types
Route

/types/

GET
  • Cache: 1 hour
{
  "totalCount_str": "28370",
  "pageCount": 29,
  "items": [
    {
      "id_str": "0",
      "href": "https://public-crest.eveonline.com/types/0/",
      "id": 0,
      "name": "#System"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "next": {
    "href": "https://public-crest.eveonline.com/types/?page=2"
  },
  "totalCount": 28370,
  "pageCount_str": "29"
}
Type
Route

/types/<typeID:typeIdType>/

GET
  • Cache: 1 hour
{
  "capacity": 0,
  "description": "This upgrade increases the ore resources available in a system.",
  "portionSize_str": "1",
  "iconID": 3948,
  "portionSize": 1,
  "iconID_str": "3948",
  "volume": 5000,
  "dogma": {
    "attributes": [
      {
        "attribute": {
          "id_str": "4",
          "href": "https://public-crest.eveonline.com/dogma/attributes/4/",
          "id": 4,
          "name": "mass"
        },
        "value": 1000
      },
      { "..." },
      { "..." },
      { "..." },
      { "..." },
    ]
  },
  "radius": 1,
  "id_str": "2040",
  "published": true,
  "mass": 1000,
  "id": 2040,
  "name": "Ore Prospecting Array 1"
}

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Industry Facilities and Facility
Wars and War

The wars resource allows an application to read wars data.

Wars
Route

/wars/

GET
  • Cache: 1 day
{
  "totalCount_str": "477886",
  "pageCount": 239,
  "items": [
    {
      "href": "https://public-crest.eveonline.com/wars/1/",
      "id": 1,
      "id_str": "1"
    },
    { "..." },
    { "..." },
    { "..." },
    { "..." },
   ],
  "next": {
    "href": "https://public-crest.eveonline.com/wars/?page=2"
  },
  "totalCount": 477886,
  "pageCount_str": "239"
}
War
Route

/wars/<warID:warIdType>/

GET
  • Cache: 1 hour
{
  "timeFinished": "2007-10-29T14:29:00",
  "openForAllies": false,
  "timeStarted": "2007-10-22T13:36:00",
  "allyCount": 0,
  "timeDeclared": "2007-10-21T13:36:00",
  "aggressor": {
    "shipsKilled": 0,
    "shipsKilled_str": "0",
    "name": "Privateer Alliance",
    "href": "https://public-crest.eveonline.com/alliances/753644383/",
    "id_str": "753644383",
    "icon": {
      "href": "http://imageserver.eveonline.com/Alliance/753644383_128.png"
    },
    "id": 753644383,
    "iskKilled": 0
  },
  "mutual": false,
  "allyCount_str": "0",
  "killmails": "https://public-crest.eveonline.com/wars/42000/killmails/all/",
  "id_str": "42000",
  "defender": {
    "shipsKilled": 0,
    "shipsKilled_str": "0",
    "name": "Ka-Tet",
    "href": "https://public-crest.eveonline.com/alliances/389924442/",
    "id_str": "389924442",
    "icon": {
      "href": "http://imageserver.eveonline.com/Alliance/389924442_128.png"
    },
    "id": 389924442,
    "iskKilled": 0
  },
  "id": 42000
}

XML API

Introduction

The EVE XML API is an HTTP read only API to the EVE Universe. The API has both publicly accessible information and private character/corporation information. Using the API does not require any kind of registration, simply point your HTTP requests to the correct locations, or use one of the many third-party libraries, and away you go.

Accessing The API

As the XML API is an HTTP API you can access it by simply pointing your browser at the correct endpoints. An example of this would be: https://api.eveonline.com/eve/CharacterInfo.xml.aspx?characterID={character_id_here}

The above will take you to the public character information for the specific character ID.

If you would like to access private information you will need an API key and can then do it like so: https://api.eveonline.com/corp/IndustryJobsHistory.xml.aspx?keyID={api_key_id_here}&vCode={api_verification_code_here}

It is highly recommended that you consider using an existing library to make accessing the API easier.

You can also find some examples for getting started with the API over here.

Other Information
Rate Limits
  • General Rate Limit: 30 requests per second
  • Error Rate Limit - Max Exceptions: 300
  • Error Rate Limit - Exception Interval: 3 minutes
  • Error Rate Limit - Block For: 15 minutes

The error rate limit means that if your application generates more than 300 exceptions within 3 minutes you will automatically be banned from the API for 15 minutes.

If for some reason you require more than 30 requests per second on the API please feel free to contact us and we can discuss giving you a higher limit. For the most part very few people should need that, 30 requests per second is a fairly large number. The white listing is not an excuse for you as a developer being lazy or ignoring the cache timers.

User-Agent

Consuming the XML API does not require you as a developer to register or pass any unique identification with each request. While this is makes getting into and developing with the API very easy, it means aside from the IP address CCP has very little way in identifying who the requests are coming from.

We ask that if you are going to consume the API that you pass a custom User-Agent header along with your requests. The User-Agent should primarily include information on how we can contact you, but it is also a good idea to include your application name and version.

If at all possible if something goes wrong with you application and we are considering banning it from the API, we will attempt to contact you first before banning. There are of course other reasons for us to contact you, but that is the primary one.

A good User-Agent header makes CCP very happy.

Schema

The returned response of the XML API follows the following schema:

<eveapi version="2">
    <currentTime>DateTime</currentTime>
    <result>
        Various result schemas
    </result>
    <cachedUntil>DateTime</cachedUntil>
</eveapi>

The DateTime is always of the format yyyy-MM-dd HH:mm:ss.

The result schema can have various combinations like:

<result>
    <xmlElement>Some text</xmlElement>
    ...
    <xmlElement>
        <xmlElement>Some text</xmlElement>
        ...
    </xmlElement>
</result>

or

<result>
    <xmlElement>Some text</xmlElement>
    ...
</result>

or

<result>
    <rowset name="" key="" columns="">
        <row attributte1="" attributte2="" attributte3="" attributte4=""/>
        ...
    </rowset>
</result>

or a combination of all above schemas.

The Sample Response in each call page, displays the result schema.

Test Server

The Singularity test server has the XML API running and is in most cases updated before Tranquility. We do highly encourage third-party developers to test new API features on Singularity and provide feedback.

New features being deployed to Singularity will often be announced in the dev blogs of the developer web site and/or the technology lab forums section.

Journal Walking

Corporation and character journals are configured to provide up to one month of data. Since each journal request returns at most 2560 entries, you may need to “walk” the journal forward or backward to retrieve all entries for a given month. Journal walking is based on a reference ID (wallet journal) or transaction ID (wallet transactions) which is used to bound the journal entries or transactions returned by an API call. Note: the sort order for the rows returned by a journal API call is undefined. More often than not, the rows will be ordered “new to old”, but this can’t be relied upon for determining the minimum or maximum ID for journal walking.

Walking Forward

Walking forward is normally done by omitting the “fromID” parameter from a journal API call. That is, walking forward occurs automatically with each new request that does not specify a fromID.

Walking Backward

Walking backward is normally performed by setting “fromID” to the lowest reference ID (wallet journal) or transaction ID (wallet transaction) from your previous journal API request. You will then receive the latest journal entries or transactions prior to “fromID”. You can not walk backwards more than one month.

Journal Walking Pseudo-Code

The following pseudo-code illustrates a simple way to implement journal walking to collect all entries for a given month:

  let entries = []
  let next = get_entries(limit=2560)
  while (next.size > 0)
    entries += next
    next = get_entries(limit=2560)
  let from = minID(entries)
  next = get_entries(limit=2560, fromID=from)
  while (next.size > 0)
    entries += next
    from = min(from, minID(next))
    next = get_entries(limit=2560, fromID=from)

Authentication

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Cached Until Values

Please very much to the best of your ability obey the cachedUntil values. This is generally best accomplished with some kind of local caching mechanism.

Response Data Constants

Constant values are used in certain response data columns to represent enumerated types. These constants are defined in the tables below.

Order State
Value Meaning
0 Open or Active
1 Closed
2 Expired or Fulfilled
3 Cancelled
4 Pending
5 Character Deleted
Applies to
MarketOrders

Retrieve character Market Orders.

  • Path: /char/MarketOrders.xml.aspx

  • Access mask: 4096

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character. Optional only if the key is character specific, otherwise mandatory.
    orderID long Optional order ID of order to retrieve. If omitted, retrieves an order batch (see notes).
Sample Response
<result>
    <rowset name="orders" key="orderID" columns="orderID,charID,stationID,volEntered,volRemaining,minVolume,orderState,typeID,range,accountKey,duration,escrow,price,bid,issued">
        <row orderID="4053334100" charID="1801683792" stationID="60005686" volEntered="340000" volRemaining="245705" minVolume="1" orderState="0" typeID="24488" range="32767" accountKey="1000" duration="90" escrow="0.00" price="92.00" bid="0" issued="2015-05-19 03:16:16"/>
        <row orderID="4097983513" charID="1801683792" stationID="60005686" volEntered="390" volRemaining="336" minVolume="1" orderState="0" typeID="3568" range="32767" accountKey="1000" duration="14" escrow="0.00" price="480000.00" bid="0" issued="2015-05-20 03:40:06"/>
        <row orderID="4111136138" charID="1801683792" stationID="60005701" volEntered="27" volRemaining="0" minVolume="1" orderState="2" typeID="20417" range="-1" accountKey="1000" duration="0" escrow="0.00" price="122000.00" bid="1" issued="2015-05-16 04:16:28"/>
        <row orderID="4111136288" charID="1801683792" stationID="60007294" volEntered="79" volRemaining="0" minVolume="1" orderState="2" typeID="20417" range="-1" accountKey="1000" duration="0" escrow="0.00" price="130000.00" bid="1" issued="2015-05-16 04:16:37"/>
    </rowset>
</result>
Result Data
orders rowset Rowset containing 1 row per market order.
orderID long Unique order ID.
charID long Character ID of the character which placed this order.
stationID int [1], [2], [3], [4] Station ID where order was placed.
volEntered int Quantity of items required or offered at time order was placed.
volRemaining int Quantity of items still required or offered.
minVolume int For bids (buy orders), the minimum quantity that will be accepted in a matching offer (sell order).
orderState int [1] Current order state.
typeID int [1], [2], [3], [4], [5] The type ID of the item transacted in this order.
range int [1] Valid order range.
accountKey int Wallet division for the buyer or seller of this order. Always 1000 for characters. Currently 1000 through 1006 for corporations.
duration int Numer of days for which order is valid (starting from the issued date). An order expires at time issued + duration.
escrow decimal For buy orders, the amount of ISK in escrow.
price decimal Cost per unit for this order.
bid bool True (1) for a bid (buy) order. False (0) for an offer (sell) order.
issued datetime Date and time when this order was issued.
Notes
  • If order ID is omitted, this call will return an order “batch” for the current month, which consists of:
    • All open “limit” orders (the first two rows in the example above). These are orders which were placed with a particular price target and were not fulfilled immediately.
    • All completed “market” orders (the last two rows in the example above). These are orders which were matched immediately when they were placed.
  • An open “limit” order which is later fulfilled or otherwise closed will no longer be provided in the order batch. To discover the state of such an order, you will need to pass the order ID explicitly.
MarketOrders
  • Path: /corp/MarketOrders.xml.aspx

  • Access mask: 4096

  • Cache timer: 1 hour (assumed from /char/MarketOrders.xml.aspx)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character. Optional only if the key is character specific, otherwise mandatory.
    orderID long Optional order ID of order to retrieve. If omitted, retrieves an order batch (see notes).
Sample Response
<result>
    <rowset name="orders" key="orderID" columns="orderID,charID,stationID,volEntered,volRemaining,minVolume,orderState,typeID,range,accountKey,duration,escrow,price,bid,issued">
        <row orderID="4053334100" charID="1801683792" stationID="60005686" volEntered="340000" volRemaining="245705" minVolume="1" orderState="0" typeID="24488" range="32767" accountKey="1000" duration="90" escrow="0.00" price="92.00" bid="0" issued="2015-05-19 03:16:16"/>
        <row orderID="4097983513" charID="1801683792" stationID="60005686" volEntered="390" volRemaining="336" minVolume="1" orderState="0" typeID="3568" range="32767" accountKey="1000" duration="14" escrow="0.00" price="480000.00" bid="0" issued="2015-05-20 03:40:06"/>
        <row orderID="4111136138" charID="1801683792" stationID="60005701" volEntered="27" volRemaining="0" minVolume="1" orderState="2" typeID="20417" range="-1" accountKey="1000" duration="0" escrow="0.00" price="122000.00" bid="1" issued="2015-05-16 04:16:28"/>
        <row orderID="4111136288" charID="1801683792" stationID="60007294" volEntered="79" volRemaining="0" minVolume="1" orderState="2" typeID="20417" range="-1" accountKey="1000" duration="0" escrow="0.00" price="130000.00" bid="1" issued="2015-05-16 04:16:37"/>
    </rowset>
</result>
Result Data
orders rowset Rowset containing 1 row per market order.
orderID long Unique order ID.
charID long Character ID of the character which placed this order.
stationID int [1], [2], [3], [4] Station ID where order was placed.
volEntered int Quantity of items required or offered at time order was placed.
volRemaining int Quantity of items still required or offered.
minVolume int For bids (buy orders), the minimum quantity that will be accepted in a matching offer (sell order).
orderState int [1] Current order state.
typeID int [1], [2], [3], [4], [5] The type ID of the item transacted in this order.
range int [1] Valid order range.
accountKey int Wallet division for the buyer or seller of this order. Always 1000 for characters. Currently 1000 through 1006 for corporations.
duration int Numer of days for which order is valid (starting from the issued date). An order expires at time issued + duration.
escrow decimal For buy orders, the amount of ISK in escrow.
price decimal Cost per unit for this order.
bid bool True (1) for a bid (buy) order. False (0) for an offer (sell) order.
issued datetime Date and time when this order was issued.
Notes
  • If order ID is omitted, this call will return an order “batch” for the current month, which consists of:
    • All open “limit” orders (the first two rows in the example above). These are orders which were placed with a particular price target and were not fulfilled immediately.
    • All completed “market” orders (the last two rows in the example above). These are orders which were matched immediately when they were placed.
  • An open “limit” order which is later fulfilled or otherwise closed will no longer be provided in the order batch. To discover the state of such an order, you will need to pass the order ID explicitly.
Order Range
Value Meaning
32767 Region (buy order). Default value for all sell orders.
-1 Station (buy order)
0 Solar System (buy order)
5, 10, 20, or 40 Jumps from station where order was placed (buy order)
Applies to
Raw Quantity
Value Meaning
-1 Every item except blueprints: Singleton (=non-stackable)
-1 Blueprint Original
-2 Blueprint Copy
Applies to
AssetList

Lists everything a character owns.

  • Path: /char/AssetList.xml.aspx

  • Access mask: 2

  • Cache timer: ca. 2 hours (XML cache), 6 hours (data cache)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
    flat bool 0 (False, default) - return a nested assets list
    1 (True) - return flat assets list
Sample Response
(Nested response)
<eveapi version="2">
    <currentTime>2015-07-10 10:32:32</currentTime>
        <result>
            <rowset name="assets" key="itemID" columns="itemID,locationID,typeID,quantity,flag,singleton">
                <row itemID="1018649971138" locationID="60001864" typeID="1319" quantity="5" flag="4" singleton="0" />
                <row itemID="1787288209" locationID="60003760" typeID="12743" quantity="1" flag="4" singleton="1" rawQuantity="-1">
                    <rowset name="contents" key="itemID" columns="itemID,typeID,quantity,flag,singleton">
                        <row itemID="589965999" typeID="8433" quantity="1" flag="20" singleton="1" rawQuantity="-1" />
                        <row itemID="824051273" typeID="26060" quantity="1" flag="92" singleton="1" rawQuantity="-1" />
                        <row itemID="1017307387" typeID="1319" quantity="1" flag="5" singleton="1" rawQuantity="-1" />
                        <row itemID="1018184692465" typeID="25589" quantity="2" flag="5" singleton="0" />
                        <row itemID="1018563763395" typeID="11132" quantity="1" flag="5" singleton="0" />
                    </rowset>
                </row>
                <row itemID="1017933248702" locationID="60003760" typeID="24594" quantity="89000" flag="4" singleton="0" />
                <row itemID="1018046062102" locationID="60003760" typeID="16247" quantity="17" flag="4" singleton="0" />
                <row itemID="1018482760487" locationID="60003760" typeID="24595" quantity="46604" flag="4" singleton="0" />
            </rowset>
        </result>
    <cachedUntil>2015-07-10 12:14:50</cachedUntil>
</eveapi>
Sample Response
(Flat response)
<result>
    <rowset name="assets" key="itemID" columns="itemID,locationID,typeID,quantity,flag,singleton">
        <row itemID="1787288209" locationID="60003760" typeID="12743" quantity="1" flag="4" singleton="1" rawQuantity="-1" />
        <row itemID="1018046062102" locationID="60003760" typeID="16247" quantity="17" flag="4" singleton="0" />
        <row itemID="1018482760487" locationID="60003760" typeID="24595" quantity="51207" flag="4" singleton="0" />
        <row itemID="1018510338105" locationID="60003760" typeID="24593" quantity="62656" flag="4" singleton="0" />
        <row itemID="1018511379483" locationID="60003760" typeID="19689" quantity="19" flag="4" singleton="0" />
        <row itemID="1018526577354" locationID="60003760" typeID="21918" quantity="348589" flag="4" singleton="0" />
    </rowset>
</result>
Result Data
Name Data type Description
itemID long Unique ID for this item. The ID of an item is stable if that item is not repackaged, stacked, detached from a stack, assembled, or otherwise altered. If an item is changed in one of these ways, then the ID will also change (see notes below).
locationID long References a solar system or station. Note that in the nested XML response this column is not present in the sub-asset lists, as those share the locationID of their parent node. Example: a module in a container in a ship in a station.. Whereas the flat XML returns a locationID for each item. (See the notes on how to resolve the locationID to a solar system or station)
typeID int [1] The type of this item.
quantity long How many items are in this stack.
flag int Indicates something about this item's storage location. The flag is used to differentiate between hangar divisions, drone bay, fitting location, and similar. Please see the Inventory Flags documentation.
singleton bool If True (1), indicates that this item is a singleton. This means that the item is not packaged.
rawQuantity long Items in the AssetList (and ContractItems) now include a rawQuantity attribute if the quantity in the DB is negative (see notes).
Notes
  • locationID:
    • officeID to stationID conversion
      To convert locationIDs greater than or equal to 66000000 and less than 67000000 to stationIDs from staStations subtract 6000001 from the locationID. To convert locationIDs greater than or equal to 67000000 and less than 68000000 to stationIDs from ConquerableStationList subtract 6000000 from the locationID.
    • locationID to StationID/itemID conversion
      The locationID is not always an officeID (for example, when you never had an office there, but have items in the Deliveries area for items bought/sold (flag=62). In cases like these the officeID to stationID conversion above will not always work. There is a small group of dbo.staStations.stationID mapReferences, or locationIDs that are part of the ConquerableStationList and less than the 61000000 base for Player Outposts. Basically, when 60000000 < locationID < 61000000 the mapReference (eveName, mapDenormailze, staStations) will give you the name of the object. The exception is the range 60014861 through (including) 60014928. This is the range of stationID’s that are actually the conquerableStations that pre-date player Outposts. When the locationID is greater than or equal to 66000000 the the officeID conversion works. When the locationID is greater than 61000000 and less than 66000000 then it is a ConquerableOutpost. When the locationID < 60000000 then the asset is somewhere in space - I have only seen solarSystem numbers.
  • rawQuantity:
    Items in the AssetList (and ContractItems) include a rawQuantity attribute if the quantity in the DB is negative. Negative quantities are in fact codes, -1 indicates that the item is a singleton (non-stackable). If the item happens to be a blueprint, -1 is an Original and -2 is a blueprint Copy.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

AssetList
ContractItems

Lists Items and details of a particular contract.

  • Path: /char/ContractItems.xml.aspx

  • Access mask: 67108864

  • Cache timer: 10 years

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
    contractID long ID of the contract
Sample Response
<result>
    <rowset columns="recordID,typeID,quantity,rawQuantity,singleton,included" key="recordID" name="itemList">
        <row included="1" singleton="0" quantity="1" typeID="4310" recordID="1737516979"/>
        <row included="1" singleton="0" quantity="1" typeID="35659" recordID="1737516980"/>
        <row included="1" singleton="0" quantity="1" typeID="519" recordID="1737516981"/>
        <row included="1" singleton="0" quantity="2" typeID="28999" recordID="1737516982"/>
        <row included="1" singleton="0" quantity="1" typeID="2961" recordID="1737516983"/>
        <row included="1" singleton="0" quantity="1" typeID="2048" recordID="1737516984"/>
        <row included="1" singleton="0" quantity="2" typeID="29001" recordID="1737516985"/>
        <row included="1" singleton="0" quantity="1" typeID="2961" recordID="1737516986"/>
        <row included="1" singleton="0" quantity="2000" typeID="21894" recordID="1737516987"/>
        <row included="1" singleton="0" quantity="1" typeID="2961" recordID="1737516988"/>
        <row included="1" singleton="0" quantity="1" typeID="1952" recordID="1737516989"/>
        <row included="1" singleton="0" quantity="1" typeID="29009" recordID="1737516990"/>
        <row included="1" singleton="0" quantity="1" typeID="2961" recordID="1737516991"/>
        <row included="1" singleton="0" quantity="1" typeID="1978" recordID="1737516992"/>
        <row included="1" singleton="0" quantity="1" typeID="29011" recordID="1737516993"/>
        <row included="1" singleton="0" quantity="1" typeID="9491" recordID="1737516994"/>
        <row included="1" singleton="0" quantity="1" typeID="1978" recordID="1737516995"/>
        <row included="1" singleton="0" quantity="1" typeID="9491" recordID="1737516996"/>
        <row included="1" singleton="0" quantity="1" typeID="2605" recordID="1737516997"/>
        <row included="1" singleton="0" quantity="1" typeID="2961" recordID="1737516998"/>
        <row included="1" singleton="0" quantity="1" typeID="9491" recordID="1737516999"/>
        <row included="1" singleton="0" quantity="1" typeID="31360" recordID="1737517000"/>
        <row included="1" singleton="0" quantity="1" typeID="8529" recordID="1737517001"/>
        <row included="1" singleton="0" quantity="1" typeID="519" recordID="1737517002"/>
        <row included="1" singleton="0" quantity="1" typeID="31360" recordID="1737517003"/>
        <row included="1" singleton="0" quantity="1" typeID="31113" recordID="1737517004"/>
    </rowset>
</result>
Result Data
Name Data type Description
recordID long Unique ID for the item.
typeID long [1] Type ID for item.
quantity long Number of items in the stack.
rawQuantity long [2] This attribute will only show up if the quantity is a negative number in the DB. Negative quantities are in fact codes, -1 indicates that the item is a singleton (non-stackable). If the item happens to be a Blueprint, -1 is an Original and -2 is a Blueprint Copy.
singleton long T1 if this is a singleton item, 0 if not.
included long 1 if the contract issuer has submitted this item with the contract, 0 if the isser is asking for this item in the contract.
Notes
  • This page returns only contract items from a contractID that is accessible from within their scope. These can be found in Contracts

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

ContractItems
Inventory Flags

These are the flags used by the inventory system. This data is available in the EVE SDE invFlags table. They define hangars or slots where an item may reside. It should be noted that ingame items may have multiple flags, but the API will only show a single flag.

Applies to
Blueprints

Lists blueprints in characters inventory

  • Path: /char/Blueprints.xml.aspx

  • Access mask: 2

  • Cache timer: 720 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset columns="itemID,locationID,typeID,typeName,flagID,quantity,timeEfficiency,materialEfficiency,runs" key="itemID" name="blueprints">
        <row runs="1" materialEfficiency="0" timeEfficiency="0" quantity="-2" flagID="4" typeName="Rattlesnake Victory Edition Blueprint" typeID="34153" locationID="60003466" itemID="1014573377908"/>
        <row runs="10" materialEfficiency="0" timeEfficiency="0" quantity="-2" flagID="4" typeName="Council Diplomatic Shuttle Blueprint" typeID="34497" locationID="60003466" itemID="1012538208557"/>
        <row runs="1" materialEfficiency="0" timeEfficiency="0" quantity="-2" flagID="4" typeName="Victorieux Luxury Yacht Blueprint" typeID="34591" locationID="60003466" itemID="1017147043703"/>
    </rowset>
</result>
Result Data
Name Data type Description
itemID long Unique ID for this item. The ID of an item is stable if that item is not repackaged, stacked, detached from a stack, assembled, or otherwise altered. If an item is changed in one of these ways, then the ID will also change (see notes below).
locationID long References a solar system, station or itemID if this blueprint is located within a container. If an itemID the Character - AssetList API must be queried to find the container using the itemID, from which the correct location of the Blueprint can be derived.
typeID int [1] The type of this item.
typeName string The name of this item.
quantity long Typically will be -1 or -2 designating a singleton item, where -1 is an original and -2 is a copy. It can be a positive integer if it is a stack of blueprint originals fresh from the market (no activities performed on them yet).
flagID long [1] Indicates something about this item's storage location. The flag is used to differentiate between hangar divisions, drone bay, fitting location, and similar. Please see the Inventory Flags documentation.
timeEfficiency long Time Efficiency Level of the blueprint, can be any even integer between 0 and 20.
materialEfficiency long Material Efficiency Level of the blueprint, can be any integer between 0 and 10.
runs long Number of runs remaining if the blueprint is a copy, -1 if it is an original.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Blueprints
Reference Type
refTypeID Name argName1 argID1 reason comment
1 Player Trading Station name StationID [1] Location of direct player trade. See Stations Table.
2 Market Transaction transactionID [1] [2] 0 See Character - WalletTransactions or Corporation - WalletTransactions.
10 Player Donation 0 "DESC:" + player entered text Player donation with text entered by the donator appearing in the "reason" field.
17 Bounty Prize (historical) NPC Name NPC ID Relaced with refTypeID 85 in Trinity release.
19 Insurance Destroyed Ship Type ID [1] 0 See Inventory Types file.
35 CONCORD Spam Prevention Act (CSPA) Player name Player character ID Player name refers to the player you're trying to contact.
37 Corp Account Withdrawal Player name that performed withdrawal Player character ID that performed withdrawal Player entered text Corp account withdrawal with text entered by the withdrawing player appearing in the "reason" field.
46 Broker Fee EVE System 1 Tags the market order commission fee for a market transaction. The ownerName2 field indicates to whom the fee was paid.
56 Manufacturing Job ID [1] [2] 0 Fee for industry manufacturing job. See Character - IndustryJobs or Corporation - IndustryJobs.
63, 64, 71, 72, 73, 74, 79, 80, 81, 82 Various contract types Contract ID? 0
85 Bounty Prizes solarSystemID [1] NPC ID:quantity killed[,id:qty[,...]] Arg1ID provides the solar system ID where the bounty was acquired. For each type of NPC killed, its typeID is followed by a colon and the quantity killed. These pairs are seperated by commas, and if there are too many (more than about 60 characters' worth) the list is ended with a literal ",..." to indicate that more have been left off the list.
97 Customs Office Export Duty Planet name Planet ID [1] "Export Duty for " + planet name Customs office export duty for the named planet. The duty was paid to the entity with ownerID2.
Applies to
WalletJournal

Retrieve character wallet journal.

  • Path: /char/WalletJournal.xml.aspx

  • Access mask: 2097152

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode string API verification code
    characterID long Character ID for which journal entries will be requested
    accountKey int Account key of the wallet for which journal entries will be returned. This is optional for character accounts which only have one wallet (accountKey = 1000). However, corporations have seven wallets with accountKeys numbered from 1000 through 1006. The Corporation - AccountBalance call can be used to map corporation wallet to appropriate accountKey.
    fromID long Optional upper bound for the ref ID of returned journal entries. This argument is normally used to walk to the journal backwards. See Journal Walking for more information.
    rowCount int Optional limit on number of rows to return. Default is 1000. Maximum is 2560.
Sample Response
<result>
    <rowset name="transactions" key="refID" columns="date,refID,refTypeID,ownerName1,ownerID1,ownerName2,ownerID2,argName1,argID1,amount,balance,reason,taxReceiverID,taxAmount">
        <row date="2012-12-16 14:47:03" refID="6709813912" refTypeID="15" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="Wiyrkomi Corporation" ownerID2="1000011" argName1="EVE System" argID1="1" amount="-9250.00" balance="385574791.30" reason="" taxReceiverID="" taxAmount="" />
        <row date="2012-12-15 18:53:29" refID="6705533817" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk VI" argID1="40215551" amount="-206000.00" balance="385584041.30" reason="Export Duty for Vorsk VI" taxReceiverID="" taxAmount="" />
        <row date="2012-12-15 18:53:05" refID="6705532062" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk III" argID1="40215546" amount="-254000.00" balance="385790041.30" reason="Export Duty for Vorsk III" taxReceiverID="" taxAmount="" />
        <row date="2012-12-15 18:52:38" refID="6705529857" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk II" argID1="40215545" amount="-160000.00" balance="386044041.30" reason="Export Duty for Vorsk II" taxReceiverID="" taxAmount="" />
        <row date="2012-12-15 18:51:50" refID="6705526089" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk I" argID1="40215544" amount="-183000.00" balance="386204041.30" reason="Export Duty for Vorsk I" taxReceiverID="" taxAmount="" />
        <row date="2012-12-13 10:37:13" refID="6694409579" refTypeID="15" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="Wiyrkomi Corporation" ownerID2="1000011" argName1="EVE System" argID1="1" amount="-21275.00" balance="386387041.30" reason="" taxReceiverID="" taxAmount="" />
        <row date="2012-12-13 01:02:16" refID="6692943658" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk VI" argID1="40215551" amount="-259000.00" balance="386408316.30" reason="Export Duty for Vorsk VI" taxReceiverID="" taxAmount="" />
        <row date="2012-12-13 01:01:32" refID="6692941689" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk III" argID1="40215546" amount="-317000.00" balance="386667316.30" reason="Export Duty for Vorsk III" taxReceiverID="" taxAmount="" />
        <row date="2012-12-13 01:01:24" refID="6692941373" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk II" argID1="40215545" amount="-171000.00" balance="386984316.30" reason="Export Duty for Vorsk II" taxReceiverID="" taxAmount="" />
        <row date="2012-12-13 01:00:37" refID="6692939153" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk I" argID1="40215544" amount="-248000.00" balance="387155316.30" reason="Export Duty for Vorsk I" taxReceiverID="" taxAmount="" />
        <row date="2012-11-22 12:49:07" refID="6607375119" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk II" argID1="40215545" amount="-213000.00" balance="446826716.30" reason="Export Duty for Vorsk II" taxReceiverID="" taxAmount="" />
        <row date="2012-11-22 12:48:59" refID="6607374952" refTypeID="97" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="CONCORD" ownerID2="1000125" argName1="Vorsk I" argID1="40215544" amount="-228000.00" balance="447039716.30" reason="Export Duty for Vorsk I" taxReceiverID="" taxAmount="" />
    </rowset>
</result>
Result Data
transactions rowset Rowset containing 1 row per journal entry.
date datetime Date and time of transaction.
refID long Unique journal reference ID.
refTypeID int [1] Transaction type.
ownerName1 string Name of first party in transaction.
ownerID1 long [1] Character or corporation ID of first party. For NPC corporations, see the appropriate cross reference.
ownerName2 string Name of second party in transaction.
ownerID2 long [1] Character or corporation ID of second party. For NPC corporations, see the appropriate cross reference.
argName1 variable Ref type dependent argument name. See the Reference Type table.
argID1 int Ref type dependent argument value. See the Reference Type table.
amount decimal Transaction amount. Positive when value transferred to the first owner. Negative otherwise.
balance decimal Wallet balance after transaction occurred.
reason string Ref type dependent reason. See the Reference Type table.
taxReceiverID long [1] For tax related transactions, gives the corporation ID of the entity receiving the tax.
taxAmount decimal Tax amount received for tax related transactions.
References
WalletJournal

Retrieve corporation wallet journal.

  • Path: /corp/WalletJournal.xml.aspx

  • Access mask: 1048576

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode string API verification code
    accountKey int Account key of the wallet for which journal entries will be returned. Corporations have seven wallets numbered from 1000 through 1006. The Corporation - AccountBalance call can be used to map corporation wallet to appropriate accountKey.
    fromID long Optional upper bound for the ref ID of returned journal entries. This argument is normally used to walk to the journal backwards. See Journal Walking for more information.
    rowCount int Optional limit on number of rows to return. Default is 1000. Maximum is 2560.
Sample Response
<result>
    <rowset name="entries" key="refID" columns="date,refID,refTypeID,ownerName1,ownerID1,ownerName2,ownerID2,argName1,argID1,amount,balance,reason">
        <row date="2012-12-19 12:51:22" refID="6723384310" refTypeID="54" ownerName1="trek apace" ownerID1="90251444" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="0" amount="-17700.00" balance="7140579224.62" reason="" />
        <row date="2012-12-19 12:51:22" refID="6723384309" refTypeID="2" ownerName1="Ilasia Lynn" ownerID1="92690397" ownerName2="trek apace" ownerID2="90251444" argName1="2682037889" argID1="0" amount="1180000.00" balance="7140596924.62" reason="" />
        <row date="2012-12-19 12:50:52" refID="6723383243" refTypeID="54" ownerName1="trek apace" ownerID1="90251444" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="0" amount="-26550.00" balance="7139416924.62" reason="" />
        <row date="2012-12-19 12:50:52" refID="6723383242" refTypeID="2" ownerName1="Ilasia Lynn" ownerID1="92690397" ownerName2="trek apace" ownerID2="90251444" argName1="2682037615" argID1="0" amount="1770000.00" balance="7139443474.62" reason="" />
        <row date="2012-12-19 11:52:55" refID="6723264857" refTypeID="54" ownerName1="trek apace" ownerID1="90251444" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="0" amount="-42300.00" balance="7137673474.62" reason="" />
        <row date="2012-12-19 11:52:55" refID="6723264856" refTypeID="2" ownerName1="Pacak Zanjoahir" ownerID1="90500646" ownerName2="trek apace" ownerID2="90251444" argName1="2682011072" argID1="0" amount="2820000.00" balance="7137715774.62" reason="" />
        <row date="2012-12-19 10:20:54" refID="6723140427" refTypeID="80" ownerName1="reygar burnt" ownerID1="1801683792" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="62440569" argID1="0" amount="-10000.00" balance="7134895774.62" reason="" />
        <row date="2012-12-19 10:17:06" refID="6723131004" refTypeID="46" ownerName1="trek apace" ownerID1="90251444" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="EVE System" argID1="1" amount="-100.00" balance="7134905774.62" reason="" />
        <row date="2012-12-19 03:19:08" refID="6722119077" refTypeID="54" ownerName1="trek apace" ownerID1="90251444" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="0" amount="-38070.00" balance="7134905874.62" reason="" />
        <row date="2012-12-19 03:19:08" refID="6722119076" refTypeID="2" ownerName1="rusherl" ownerID1="1785921690" ownerName2="trek apace" ownerID2="90251444" argName1="2681763072" argID1="0" amount="2538000.00" balance="7134943944.62" reason="" />
    </rowset>
</result>
Result Data
transactions rowset Rowset containing 1 row per journal entry.
date datetime Date and time of transaction.
refID long Unique journal reference ID.
refTypeID int [1] Transaction type.
ownerName1 string Name of first party in transaction.
ownerID1 long [1] Character or corporation ID of first party. For NPC corporations, see the appropriate cross reference.
ownerName2 string Name of second party in transaction.
ownerID2 long [1] Character or corporation ID of second party. For NPC corporations, see the appropriate cross reference.
argName1 variable Ref type dependent argument name. See the Reference Type table.
argID1 int Ref type dependent argument value. See the Reference Type table.
amount decimal Transaction amount. Positive when value transferred to the first owner. Negative otherwise.
balance decimal Wallet balance after transaction occurred.
reason string Ref type dependent reason. See the Reference Type table.
References
Notification Type
TypeID Description Structured Data
1 Legacy TBD
2 Character deleted TBD
3 Give medal to character TBD
4 Alliance maintenance bill TBD
5 Alliance war declared againstID: 00000000
cost: 0
declaredByID: 00000001
delayHours: 24
hostileState: 1
6 Alliance war surrender TBD
7 Alliance war retracted TBD
8 Alliance war invalidated by Concord againstID: 00000000
cost: null
declaredByID: 00000001
delayHours: null
hostileState: null
9 Bill issued to a character TBD
10 Bill issued to corporation or alliance amount: 20000000
billTypeID: 2
creditorID: 00000000
currentDate: 130764012924912532
debtorID: 00000000
dueDate: 130789932230000000
externalID: 27
externalID2: 62300459
11 Bill not paid because there's not enough ISK available TBD
12 Bill, issued by a character, paid TBD
13 Bill, issued by a corporation or alliance, paid amount: 25000000
dueDate: 130765575000000000
14 Bounty claimed amount: 8508.5
charID: 90610935
15 Clone activated TBD
16 New corp member application applicationText: 'hey there, let me join!'
charID: 90610935
corpID: 00000000
17 Corp application rejected TBD
18 Corp application accepted TBD
19 Corp tax rate changed corpID: 00000000
newTaxRate: 0.10
oldTaxRate: 1.00
20 Corp news report, typically for shareholders TBD
21 Player leaves corp TBD
22 Corp news, new CEO TBD
23 Corp dividend/liquidation, sent to shareholders TBD
24 Corp dividend payout, sent to shareholders TBD
25 Corp vote created TBD
26 Corp CEO votes revoked during voting TBD
27 Corp declares war TBD
28 Corp war has started TBD
29 Corp surrenders war TBD
30 Corp retracts war TBD
31 Corp war invalidated by Concord TBD
32 Container password retrieval TBD
33 Contraband or low standings cause an attack or items being confiscated TBD
34 First ship insurance isHouseWarmingGift: 1
shipTypeID: 596
35 Ship destroyed, insurance payed amount: 512304.80000000005
itemID: 1017375674103
payout: 1
36 Insurance contract invalidated/runs out TBD
37 Sovereignty claim fails (alliance) TBD
38 Sovereignty claim fails (corporation) TBD
39 Sovereignty bill late (alliance) TBD
40 Sovereignty bill late (corporation) TBD
41 Sovereignty claim lost (alliance) TBD
42 Sovereignty claim lost (corporation) TBD
43 Sovereignty claim acquired (alliance) TBD
44 Sovereignty claim acquired (corporation) TBD
45 Alliance anchoring alert allianceID: 00000000
corpID: 00000000
corpsPresent:
- allianceID: 00000000
  corpID: 00000000
  towers:
  - moonID: 40009081
    typeID: 20062
- allianceID: 00000000
  corpID: 00000000
  towers:
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
- allianceID: 00000000
  corpID: 00000000
  towers:
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
  - moonID: 40009081
    typeID: 16213
- allianceID: 00000000
  corpID: 00000000
  towers:
  - moonID: 40009081
    typeID: 27532
- allianceID: 00000000
  corpID: 00000000
  towers:
  - moonID: 40009081
    typeID: 16214
moonID: 40009081
solarSystemID: 30000142
typeID: 20064
46 Alliance structure turns vulnerable TBD
47 Alliance structure turns invulnerable TBD
48 Sovereignty disruptor anchored TBD
49 Structure won/lost TBD
50 Corp office lease expiration notice TBD
51 Clone contract revoked by station manager TBD
52 Corp member clones moved between stations charsInCorpID: 90610935
corpID: 00000000
newStationID: 60000004
stationID: 60000007
53 Clone contract revoked by station manager TBD
54 Insurance contract expired endDate: 130739439920000000
shipID: 1015328647115
shipName: Tengu
startDate: 130666863920000000
55 Insurance contract issued endDate: 130837996425414355
itemID: 1018232075103
level: 99.99999999999999
numWeeks: 12
shipName: Ishtar
startDate: 130765420425414355
typeID: 12005
56 Jump clone destroyed TBD
57 Jump clone destroyed TBD
58 Corporation joining factional warfare TBD
59 Corporation leaving factional warfare TBD
60 Corporation kicked from factional warfare on startup because of too low standing to the faction TBD
61 Character kicked from factional warfare on startup because of too low standing to the faction TBD
62 Corporation in factional warfare warned on startup because of too low standing to the faction TBD
63 Character in factional warfare warned on startup because of too low standing to the faction TBD
64 Character loses factional warfare rank TBD
65 Character gains factional warfare rank TBD
66 Agent has moved TBD
67 Mass transaction reversal message TBD
68 Reimbursement message TBD
69 Agent locates a character TBD
70 Research mission becomes available from an agent TBD
71 Agent mission offer expires TBD
72 Agent mission times out TBD
73 Agent offers a storyline mission TBD
74 Tutorial message sent on character creation TBD
75 Tower alert aggressorAllianceID: 00000000
aggressorCorpID: 00000000
aggressorID: 90610935
armorValue: 1.0
hullValue: 1.0
moonID: 40009081
shieldValue: 0.9999482233068171
solarSystemID: 30000142
typeID: 16213
76 Tower resource alert allianceID: 00000000
corpID: 00000000
moonID: 40009081
solarSystemID: 30000142
typeID: 20063
wants:
- quantity: 432
  typeID: 4312
77 Station aggression message aggressorCorpID: null
aggressorID: null
shieldValue: 0.9978610653837826
solarSystemID: 30000142
stationID: 60003757
typeID: 28156
78 Station state change message TBD
79 Station conquered message TBD
80 Station aggression message TBD
81 Corporation requests joining factional warfare TBD
82 Corporation requests leaving factional warfare TBD
83 Corporation withdrawing a request to join factional warfare TBD
84 Corporation withdrawing a request to leave factional warfare TBD
85 Corporation liquidation TBD
86 Territorial Claim Unit under attack TBD
87 Sovereignty Blockade Unit under attack aggressorAllianceID: 00000000
aggressorCorpID: 00000000
aggressorID: 90610935
armorValue: 1.0
hullValue: 1.0
shieldValue: 0.999942577300314
solarSystemID: 30000142
88 Infrastructure Hub under attack aggressorAllianceID: 00000000
aggressorCorpID: 00000000
aggressorID: 90610935
armorValue: 1.0
hullValue: 1.0
shieldValue: 0.9999601081022226
solarSystemID: 30000142
89 Contact add notification TBD
90 Contact edit notification TBD
91 Incursion Completed TBD
92 Corp Kicked TBD
93 Customs office has been attacked aggressorAllianceID: 00000000
aggressorCorpID: 00000000
aggressorID: 90610935
planetID: 40009081
planetTypeID: 2063
shieldLevel: 0.0
solarSystemID: 30000142
typeID: 2233
94 Customs office has entered reinforced TBD
95 Customs office has been transferred characterLinkData:
- showinfo
- 1375
- 90610935
characterName: CCP Guard
fromCorporationLinkData:
- showinfo
- 2
- 00000000
fromCorporationName: Foo Bar Corp
solarSystemLinkData:
- showinfo
- 5
- 30000142
solarSystemName: Jita
structureLinkData:
- showinfo
- 32226
- 1008433208457
structureName: Some random POCO
toCorporationLinkData:
- showinfo
- 2
- 00000001
toCorporationName: Bar Foo Corp
96 FW Alliance Warning TBD
97 FW Alliance Kick TBD
98 AllWarCorpJoined Msg TBD
99 Ally Joined Defender TBD
100 Ally Has Joined a War Aggressor TBD
101 Ally Joined War Ally TBD
102 New war system: entity is offering assistance in a war. TBD
103 War Surrender Offer TBD
104 War Surrender Declined TBD
105 FacWar LP Payout Kill TBD
106 FacWar LP Payout Event TBD
107 FacWar LP Disqualified Eventd TBD
108 FacWar LP Disqualified Kill TBD
109 Alliance Contract Cancelled TBD
110 War Ally Declined Offer TBD
111 Your Bounty Was Claimed TBD
112 Bounty placed (Char) TBD
113 Bounty Placed (Corp) TBD
114 Bounty Placed (Alliance) TBD
115 Kill Right Available TBD
116 Kill right Available Open TBD
117 Kill Right Earned TBD
118 Kill right Used TBD
119 Kill Right Unavailable TBD
120 Kill Right Unavailable Open TBD
121 Declare War TBD
122 Offered Surrender TBD
123 Accepted Surrender TBD
124 Made War Mutual TBD
125 Retracts War TBD
126 Offered To Ally TBD
127 Accepted Ally TBD
128 Character Application Accept applicationText: Hey, this is my alt.
charID: 900000000
corpID: 000000001
129 Character Application Reject TBD
130 Character Application Withdraw TBD
138 Clone activated cloneStationID: 60000000
corpStationID: 60000001
lastCloned: 130975015800000000
podKillerID: 100000000
140 Kill report available killMailHash: aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434d
killMailID: 00000000
victimShipTypeID: 596
141 TBD killMailHash: a415ab5cc17c8c093c015ccdb7e552aee7911aa4
killMailID: 00000000
victimID: 000000001
victimShipTypeID: 596
147 Entosis Link started solarSystemID: 30000142
structureTypeID: 28159
148 Entosis Link enabled a module solarSystemID: 30000142
structureTypeID: 28159
149 Entosis Link disabled a module solarSystemID: 30000142
structureTypeID: 28159
Applies to
Notifications

Retrieve character notification headers.

  • Path: /char/Notifications.xml.aspx

  • Access mask: 16384

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which notification headers will be retrieved
Sample Response
<result>
  <rowset name="notifications" key="notificationID" columns="notificationID,typeID,senderID,senderName,sentDate,read">
    <row notificationID="399058968" typeID="73" senderID="3017794" senderName="Some guy" sentDate="2012-12-22 23:34:00" read="0" />
  </rowset>
</result>
Result Data
notifications rowset Rowset containing 1 row per notification header.
notificationID long Unique notification ID.
typeID int [1] Type ID describing the notification.
senderID long ID of entity which sent notification.
senderName string Name of entity which sent notification.
sentDate datetime Date when notification was sent.
read boolean 1 if this notification has been read in the EVE client, 0 otherwise.
Notes
  • The first call to this endpoint returns the latest 200 notifications received by the character within the last week.
  • Subsequent requests return only the new items received since the last request.
  • You can request new items every 30 minutes.
  • To “reset the timer” and retrieve from the start, you’ll need to wait 6 hours before calling this endpoint.
Known POS States
State Name Notes
0 Unanchored Also unanchoring? Has valid stateTimestamp. Note that moonID is zero for unanchored Towers, but locationID will still yield the solar system ID.
1 Anchored / Offline No time information stored.
2 Onlining Will be online at time = onlineTimestamp.
3 Reinforced Until time = stateTimestamp.
4 Online Continuously since time = onlineTimestamp.
Applies to
Starbase List

Returns list of corporation starbases.

  • Path: /corp/StarbaseList.xml.aspx

  • Access mask: 524288

  • Cache timer: 6 hours

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="starbases" key="itemID" columns="itemID,typeID,locationID,moonID,state,stateTimestamp,onlineTimestamp,standingOwnerID">
        <row itemID="100449451" typeID="27538" locationID="30000163" moonID="40010395" state="4" stateTimestamp="2011-12-08 20:03:41" onlineTimestamp="2009-06-04 07:00:51" standingOwnerID="673381830"/>
        <row itemID="638317993" typeID="27538" locationID="30000163" moonID="40010366" state="4" stateTimestamp="2011-12-08 19:33:36" onlineTimestamp="2008-09-17 03:52:55" standingOwnerID="673381830"/>
    </rowset>
</result>
Result Data
Name Data Type Description
itemID long Unique ID for this POS. This is used to request details via the StarbaseDetail API page.
typeID long Type ID. References the invTypes table.
locationID long Solar system ID. References the mapSolarSystems and mapDenormalize tables.
moonID long Celestial object ID. References the mapDenormalize table.
state int Mode of the POS. See known POS states.
stateTimestamp datetime Depends on the state. See known POS states.
onlineTimestamp datetime When the POS will be online or most recently was put online. See known POS states.
standingOwnerID long ID of standings holder - corporation or alliance
StarbaseDetail

Returns details for specified starbase.

  • Path: /corp/StarbaseDetail.xml.aspx

  • Access mask: 131072

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    itemID long ItemID of the POS as given in the starbase list
Sample Response
<result>
    <state>4</state>
    <stateTimestamp>2009-05-02 21:31:36</stateTimestamp>
    <onlineTimestamp>2009-04-18 23:30:29</onlineTimestamp>
    <generalSettings>
        <usageFlags>3</usageFlags>
        <deployFlags>0</deployFlags>
        <allowCorporationMembers>1</allowCorporationMembers>
        <allowAllianceMembers>1</allowAllianceMembers>
    </generalSettings>
    <combatSettings>
        <useStandingsFrom ownerID="154683985" />
        <onStandingDrop standing="990" />
        <onStatusDrop enabled="0" standing="0" />
        <onAggression enabled="0" />
        <onCorporationWar enabled="1" />
    </combatSettings>
    <rowset name="fuel" key="typeID" columns="typeID,quantity">
        <row typeID="16275" quantity="2447" />
        <row typeID="16274" quantity="18758" />
        <row typeID="9848" quantity="166" />
        <row typeID="9832" quantity="332" />
        <row typeID="3689" quantity="332" />
        <row typeID="44" quantity="166" />
        <row typeID="16273" quantity="6142" />
        <row typeID="16272" quantity="5644" />
        <row typeID="3683" quantity="1162" />
    </rowset>
</result>
ResultData
Name Data type Description
state int Current POS state. See known POS states.
stateTimestamp datetime Depend on current POS stete. See known POS states.
onlineTimestamp datetime When the POS will be online or most recently was put online. See known POS states.
generalSettings
usageFlags int Access restrictions to the POS fuel bay are encoded in this 4 bit field. See flags description.
deployFlags int Access restrictions to who is able to operate this POS are encoded in this 8 bit field. See flags description.
allowCorporationMembers int POS Usage restriction for corporation members. 1- allowed, 0 - not allowed.
allowAllianceMembers int POS Usage restriction for alliance members. 1- allowed, 0 - not allowed.
combatSettings
useStandingsFrom Represents POS "Use alliance standings" settings.
ownerID long ID of standings holder - corporation or alliance.
onStandingDrop Represents POS "Attack if standings lower than" settings.
standing int Standing below that POS will attack targets.
onStatusDrop Represents POS "Attack if security status lower than" and "Attack if other security status is dropping" settings.
standing int Represents POS "Attack if security status lower than" settings.
enabled int "Attack if other security status is dropping" 1 = enabled, 0 = disabled
onAggression Represents POS "Attack if agression" setting
enabled int 1 = enabled, 0 = disabled
onCorporationWar Represents POS "Attack if at war" settings
enabled int 1 = enabled, 0 = disabled
rowset fuel
typeID long typeID of fuel that presents in POS fuel bay or strontium bay
quantity int quantity of specified fuel type in POS fuel bay or strontium bay
Flags Description
  • Access Restrictions: They store access restrictions to the POS facilities on 2 bits:

    1. 'Starbase Config'
    2. 'Starbase Fuel Tech'
    3. 'Corporation Members'
    4. 'Alliance Members'
  • Usage Flags: access restrictions to the POS fuel bay are encoded in this 4 bit field.

if usageFlags == 9 == 0b1001   -->   10    01
                                    view  take
    0b10 == 2 --> 'Corporation Members' can view
    0b01 == 1 --> 'Starbase Fuel Tech' can take
  • Deploy Flags: access restrictions to who is able to operate this POS are encoded in this 8 bit field.
if usageFlags == 68 == 0b01000100  -->   01       00       01      00
                                        anchor  unanchor  online  offline
    0b01 == 1 --> 'Starbase Fuel Tech' can anchor
    0b00 == 0 --> 'Starbase Config' can unanchor
    0b01 == 1 --> 'Starbase Fuel Tech' can online
    0b00 == 0 --> 'Starbase Config' can offline
Industry Job Status
Value Meaning
1 Active
2 Paused (Facility Offline)
3 Ready
101 Delivered
102 Cancelled
103 Reverted
Applies to
IndustryJobs

Retrieve unfinished character industry jobs.

  • Path: /char/IndustryJobs.xml.aspx

  • Access mask: 128

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character. Optional only if the key is character specific, otherwise mandatory.
Sample Response
<result>
    <rowset name="jobs" key="jobID" columns="jobID,installerID,installerName,facilityID,solarSystemID,solarSystemName,stationID,activityID,blueprintID,blueprintTypeID,blueprintTypeName,blueprintLocationID,outputLocationID,runs,cost,teamID,licensedRuns,probability,productTypeID,productTypeName,status,timeInSeconds,startDate,endDate,pauseDate,completedDate,completedCharacterID,successfulRuns">
        <row jobID="229136101" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="1" blueprintID="1015116533326"
             blueprintTypeID="2047" blueprintTypeName="Damage Control I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="118.00" teamID="0" licensedRuns="200" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="548"
             startDate="2014-07-19 15:47:06" endDate="2014-07-19 15:56:14" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="1"/>
        <row jobID="229135883" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194"
             solarSystemName="Cleyd" stationID="60006382" activityID="3" blueprintID="1015321999447" 
             blueprintTypeID="25862" blueprintTypeName="Salvager I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="29.00" teamID="0" licensedRuns="60" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="702" 
             startDate="2014-07-19 13:40:59" endDate="2014-07-19 13:52:41" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="2"/>
        <row jobID="229135882" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="4" blueprintID="1015322244720" 
             blueprintTypeID="785" blueprintTypeName="Miner I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="8.00" teamID="0" licensedRuns="200" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="225" 
             startDate="2014-07-19 13:40:32" endDate="2014-07-19 13:44:17" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="3"/>
        <row jobID="229135868" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="5" blueprintID="1015322013688" blueprintTypeID="10040" 
             blueprintTypeName="Civilian Shield Booster Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="23" cost="2768.00" teamID="0" licensedRuns="99" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="389367" 
             startDate="2014-07-19 13:22:51" endDate="2014-07-24 01:32:18" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="4"/>
        <row jobID="229136102" installerID="498338451" installerName="Qoi" facilityID="1015338129652" solarSystemID="30005195"
             solarSystemName="Vecamia" stationID="1015338119317" activityID="7" blueprintID="1015338143203" blueprintTypeID="30614"
             blueprintTypeName="Intact Armor Nanobot" blueprintLocationID="1015338129652"
             outputLocationID="1015338129652" runs="1" cost="641.00" teamID="0" licensedRuns="300" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="3600"
             startDate="2014-07-19 15:48:33" endDate="2014-07-19 16:48:33" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="5"/>
        <row jobID="229136071" installerID="498338451" installerName="Qoi" facilityID="1015338129650" solarSystemID="30005195" 
             solarSystemName="Vecamia" stationID="1015338119317" activityID="8" blueprintID="1015338137468" blueprintTypeID="1137" 
             blueprintTypeName="Antimatter Charge S Blueprint" blueprintLocationID="1015338129650"
             outputLocationID="1015338129650" runs="1" cost="4.00" teamID="0" licensedRuns="600" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="11400" 
             startDate="2014-07-19 15:22:40" endDate="2014-07-19 18:32:40" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="6"/>
    </rowset>
</result>
Result Data
jobs rowset Rowset containing 1 row per industry job.
jobID long Unique job ID.
installerID long Character ID of the character which installed this job.
installerName char Name of character which installed this job.
facilityID int [1], [2], [3] Facility ID where this job is running (see cross-references).
solarSystemID int [1] Solar system where facility is located.
solarSystemName string Name of solar system where facility is located.
stationID int [1], [2], [3], [4] Station ID where industry facility is located.
activityID int [1] Job activity ID (see cross-reference).
blueprintID long [1] Blueprint asset item ID.
blueprintTypeID int [1], [2], [3], [4], [5] Blueprint type ID.
blueprintTypeName char Name of installed blueprint.
blueprintLocationID int Location ID of the location from which the blueprint was installed. Normally a station ID, but can also be an asset (e.g. container) or corporation facility.
outputLocationID int Location ID of the location to which the output of the job will be delivered. Normally a station ID, but can also be a corporation facility.
runs int Number of runs for a manufacturing job, or number of copies to make for a blueprint copy.
cost decimal The sume of job installation fee and industry facility tax.
teamID int N/A - retired in Proteus
licensedRuns int Number of runs blueprint is licensed for.
probability float Chance of success for invention.
productTypeID int [1], [2], [3], [4], [5] Type ID of product (manufactured, copied or invented).
productTypeName int Type name of product (manufactured, copied or invented).
status int [1] Job status (see cross-reference).
timeInSeconds int Job duration in seconds.
startDate datetime Time when this job started.
endDate datetime Time when this job finished.
pauseDate datetime Time when this job was paused (i.e. time when the facility where this job was installed went offline).
completedDate datetime Time when this job was completed.
completedCharacterID long Character ID of character which completed this job.
successfulRuns int Number of successful runs for this job. Equal to runs unless this is an invention job.
Notes
  • This endpoint returns unfinished character jobs (e.g. started from a personal hangar). Use Character - IndustryJobsHistory to retrieve finished jobs.
  • This endpoint returns a maximum of 10000 rows and at most 90 days worth of data.
  • If a job is cancelled manually, then the completedCharacterID identifies the character who cancelled the job.
  • If a job is cancelled because the facility was unanchored, then completedCharacterID is 0.
Known Bugs
  • The licensedRuns field is showing undefined values for Manufacturing from a BPO, Reverse Engineering, Invention, ME, TE research.
  • productTypeID and productTypeName for invention jobs with only one possible output type will remain empty until the job finishes.
  • Status does not appear to change for a “ready” job, you must inspect timestamps to find when the job finishes.
IndustryJobsHistory

Retrieve finished character industry jobs.

  • Path: /char/IndustryJobsHistory.xml.aspx

  • Access mask: 128

  • Cache timer: 6 hours

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character. Optional only if the key is character specific, otherwise mandatory.
Sample Response
<result>
    <rowset name="jobs" key="jobID" columns="jobID,installerID,installerName,facilityID,solarSystemID,solarSystemName,stationID,activityID,blueprintID,blueprintTypeID,blueprintTypeName,blueprintLocationID,outputLocationID,runs,cost,teamID,licensedRuns,probability,productTypeID,productTypeName,status,timeInSeconds,startDate,endDate,pauseDate,completedDate,completedCharacterID,successfulRuns">
        <row jobID="229136101" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="1" blueprintID="1015116533326"
             blueprintTypeID="2047" blueprintTypeName="Damage Control I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="118.00" teamID="0" licensedRuns="200" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="548"
             startDate="2014-07-19 15:47:06" endDate="2014-07-19 15:56:14" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="1"/>
        <row jobID="229135883" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194"
             solarSystemName="Cleyd" stationID="60006382" activityID="3" blueprintID="1015321999447" 
             blueprintTypeID="25862" blueprintTypeName="Salvager I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="29.00" teamID="0" licensedRuns="60" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="702" 
             startDate="2014-07-19 13:40:59" endDate="2014-07-19 13:52:41" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="2"/>
        <row jobID="229135882" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="4" blueprintID="1015322244720" 
             blueprintTypeID="785" blueprintTypeName="Miner I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="8.00" teamID="0" licensedRuns="200" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="225" 
             startDate="2014-07-19 13:40:32" endDate="2014-07-19 13:44:17" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="3"/>
        <row jobID="229135868" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="5" blueprintID="1015322013688" blueprintTypeID="10040" 
             blueprintTypeName="Civilian Shield Booster Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="23" cost="2768.00" teamID="0" licensedRuns="99" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="389367" 
             startDate="2014-07-19 13:22:51" endDate="2014-07-24 01:32:18" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="4"/>
        <row jobID="229136102" installerID="498338451" installerName="Qoi" facilityID="1015338129652" solarSystemID="30005195"
             solarSystemName="Vecamia" stationID="1015338119317" activityID="7" blueprintID="1015338143203" blueprintTypeID="30614"
             blueprintTypeName="Intact Armor Nanobot" blueprintLocationID="1015338129652"
             outputLocationID="1015338129652" runs="1" cost="641.00" teamID="0" licensedRuns="300" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="3600"
             startDate="2014-07-19 15:48:33" endDate="2014-07-19 16:48:33" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="5"/>
        <row jobID="229136071" installerID="498338451" installerName="Qoi" facilityID="1015338129650" solarSystemID="30005195" 
             solarSystemName="Vecamia" stationID="1015338119317" activityID="8" blueprintID="1015338137468" blueprintTypeID="1137" 
             blueprintTypeName="Antimatter Charge S Blueprint" blueprintLocationID="1015338129650"
             outputLocationID="1015338129650" runs="1" cost="4.00" teamID="0" licensedRuns="600" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="11400" 
             startDate="2014-07-19 15:22:40" endDate="2014-07-19 18:32:40" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="6"/>
    </rowset>
</result>
Result Data
jobs rowset Rowset containing 1 row per industry job.
jobID long Unique job ID.
installerID long Character ID of the character which installed this job.
installerName char Name of character which installed this job.
facilityID int [1], [2], [3] Facility ID where this job is running (see cross-references).
solarSystemID int [1] Solar system where facility is located.
solarSystemName string Name of solar system where facility is located.
stationID int [1], [2], [3], [4] Station ID where industry facility is located.
activityID int [1] Job activity ID (see cross-reference).
blueprintID long [1] Blueprint asset item ID.
blueprintTypeID int [1], [2], [3], [4], [5] Blueprint type ID.
blueprintTypeName char Name of installed blueprint.
blueprintLocationID int Location ID of the location from which the blueprint was installed. Normally a station ID, but can also be an asset (e.g. container) or corporation facility.
outputLocationID int Location ID of the location to which the output of the job will be delivered. Normally a station ID, but can also be a corporation facility.
runs int Number of runs for a manufacturing job, or number of copies to make for a blueprint copy.
cost decimal The sume of job installation fee and industry facility tax.
teamID int N/A - retired in Proteus
licensedRuns int Number of runs blueprint is licensed for.
probability float Chance of success for invention.
productTypeID int [1], [2], [3], [4], [5] Type ID of product (manufactured, copied or invented).
productTypeName int Type name of product (manufactured, copied or invented).
status int [1] Job status (see cross-reference).
timeInSeconds int Job duration in seconds.
startDate datetime Time when this job started.
endDate datetime Time when this job finished.
pauseDate datetime Time when this job was paused (i.e. time when the facility where this job was installed went offline).
completedDate datetime Time when this job was completed.
completedCharacterID long Character ID of character which completed this job.
successfulRuns int Number of successful runs for this job. Equal to runs unless this is an invention job.
Notes
  • This endpoint returns finished character jobs (e.g. started from a personal hangar). Use Character - IndustryJobs to retrieve unfinished jobs.
  • This endpoint returns a maximum of 10000 rows and at most 90 days worth of data.
  • If a job is cancelled manually, then the completedCharacterID identifies the character who cancelled the job.
  • If a job is cancelled because the facility was unanchored, then completedCharacterID is 0.
Known Bugs
  • The licensedRuns field is showing undefined values for Manufacturing from a BPO, Reverse Engineering, Invention, ME, TE research.
  • productTypeID and productTypeName for invention jobs with only one possible output type will remain empty until the job finishes.
  • Status does not appear to change for a “ready” job, you must inspect timestamps to find when the job finishes.
IndustryJobs

Retrieve unfinished corporation industry jobs.

  • Path: /corp/IndustryJobs.xml.aspx

  • Access mask: 128

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="jobs" key="jobID" columns="jobID,installerID,installerName,facilityID,solarSystemID,solarSystemName,stationID,activityID,blueprintID,blueprintTypeID,blueprintTypeName,blueprintLocationID,outputLocationID,runs,cost,teamID,licensedRuns,probability,productTypeID,productTypeName,status,timeInSeconds,startDate,endDate,pauseDate,completedDate,completedCharacterID,successfulRuns">
        <row jobID="229136101" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="1" blueprintID="1015116533326"
             blueprintTypeID="2047" blueprintTypeName="Damage Control I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="118.00" teamID="0" licensedRuns="200" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="548"
             startDate="2014-07-19 15:47:06" endDate="2014-07-19 15:56:14" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="1"/>
        <row jobID="229135883" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194"
             solarSystemName="Cleyd" stationID="60006382" activityID="3" blueprintID="1015321999447" 
             blueprintTypeID="25862" blueprintTypeName="Salvager I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="29.00" teamID="0" licensedRuns="60" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="702" 
             startDate="2014-07-19 13:40:59" endDate="2014-07-19 13:52:41" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="2"/>
        <row jobID="229135882" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="4" blueprintID="1015322244720" 
             blueprintTypeID="785" blueprintTypeName="Miner I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="8.00" teamID="0" licensedRuns="200" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="225" 
             startDate="2014-07-19 13:40:32" endDate="2014-07-19 13:44:17" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="3"/>
        <row jobID="229135868" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="5" blueprintID="1015322013688" blueprintTypeID="10040" 
             blueprintTypeName="Civilian Shield Booster Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="23" cost="2768.00" teamID="0" licensedRuns="99" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="389367" 
             startDate="2014-07-19 13:22:51" endDate="2014-07-24 01:32:18" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="4"/>
        <row jobID="229136102" installerID="498338451" installerName="Qoi" facilityID="1015338129652" solarSystemID="30005195"
             solarSystemName="Vecamia" stationID="1015338119317" activityID="7" blueprintID="1015338143203" blueprintTypeID="30614"
             blueprintTypeName="Intact Armor Nanobot" blueprintLocationID="1015338129652"
             outputLocationID="1015338129652" runs="1" cost="641.00" teamID="0" licensedRuns="300" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="3600"
             startDate="2014-07-19 15:48:33" endDate="2014-07-19 16:48:33" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="5"/>
        <row jobID="229136071" installerID="498338451" installerName="Qoi" facilityID="1015338129650" solarSystemID="30005195" 
             solarSystemName="Vecamia" stationID="1015338119317" activityID="8" blueprintID="1015338137468" blueprintTypeID="1137" 
             blueprintTypeName="Antimatter Charge S Blueprint" blueprintLocationID="1015338129650"
             outputLocationID="1015338129650" runs="1" cost="4.00" teamID="0" licensedRuns="600" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="11400" 
             startDate="2014-07-19 15:22:40" endDate="2014-07-19 18:32:40" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="6"/>
    </rowset>
</result>
Result Data
jobs rowset Rowset containing 1 row per industry job.
jobID long Unique job ID.
installerID long Character ID of the character which installed this job.
installerName char Name of character which installed this job.
facilityID int [1], [2], [3] Facility ID where this job is running (see cross-references).
solarSystemID int [1] Solar system where facility is located.
solarSystemName string Name of solar system where facility is located.
stationID int [1], [2], [3], [4] Station ID where industry facility is located.
activityID int [1] Job activity ID (see cross-reference).
blueprintID long [1] Blueprint asset item ID.
blueprintTypeID int [1], [2], [3], [4], [5] Blueprint type ID.
blueprintTypeName char Name of installed blueprint.
blueprintLocationID int Location ID of the location from which the blueprint was installed. Normally a station ID, but can also be an asset (e.g. container) or corporation facility.
outputLocationID int Location ID of the location to which the output of the job will be delivered. Normally a station ID, but can also be a corporation facility.
runs int Number of runs for a manufacturing job, or number of copies to make for a blueprint copy.
cost decimal The sume of job installation fee and industry facility tax.
teamID int N/A - retired in Proteus
licensedRuns int Number of runs blueprint is licensed for.
probability float Chance of success for invention.
productTypeID int [1], [2], [3], [4], [5] Type ID of product (manufactured, copied or invented).
productTypeName int Type name of product (manufactured, copied or invented).
status int [1] Job status (see cross-reference).
timeInSeconds int Job duration in seconds.
startDate datetime Time when this job started.
endDate datetime Time when this job finished.
pauseDate datetime Time when this job was paused (i.e. time when the facility where this job was installed went offline).
completedDate datetime Time when this job was completed.
completedCharacterID long Character ID of character which completed this job.
successfulRuns int Number of successful runs for this job. Equal to runs unless this is an invention job.
Notes
  • This endpoint returns unfinished corporation jobs (e.g. started from a corporation hangar). Use Corporation - IndustryJobsHistory to retrieve finished jobs.
  • This endpoint returns a maximum of 10000 rows and at most 90 days worth of data.
  • If a job is cancelled manually, then the completedCharacterID identifies the character who cancelled the job.
  • If a job is cancelled because the facility was unanchored, then completedCharacterID is 0.
Known Bugs
  • The licensedRuns field is showing undefined values for Manufacturing from a BPO, Reverse Engineering, Invention, ME, TE research.
  • productTypeID and productTypeName for invention jobs with only one possible output type will remain empty until the job finishes.
  • Status does not appear to change for a “ready” job, you must inspect timestamps to find when the job finishes.
IndustryJobsHistory

Retrieve finished corporation industry jobs.

  • Path: /corp/IndustryJobsHistory.xml.aspx

  • Access mask: 128

  • Cache timer: 6 hours

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="jobs" key="jobID" columns="jobID,installerID,installerName,facilityID,solarSystemID,solarSystemName,stationID,activityID,blueprintID,blueprintTypeID,blueprintTypeName,blueprintLocationID,outputLocationID,runs,cost,teamID,licensedRuns,probability,productTypeID,productTypeName,status,timeInSeconds,startDate,endDate,pauseDate,completedDate,completedCharacterID,successfulRuns">
        <row jobID="229136101" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="1" blueprintID="1015116533326"
             blueprintTypeID="2047" blueprintTypeName="Damage Control I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="118.00" teamID="0" licensedRuns="200" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="548"
             startDate="2014-07-19 15:47:06" endDate="2014-07-19 15:56:14" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="1"/>
        <row jobID="229135883" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194"
             solarSystemName="Cleyd" stationID="60006382" activityID="3" blueprintID="1015321999447" 
             blueprintTypeID="25862" blueprintTypeName="Salvager I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="29.00" teamID="0" licensedRuns="60" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="702" 
             startDate="2014-07-19 13:40:59" endDate="2014-07-19 13:52:41" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="2"/>
        <row jobID="229135882" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="4" blueprintID="1015322244720" 
             blueprintTypeID="785" blueprintTypeName="Miner I Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="1" cost="8.00" teamID="0" licensedRuns="200" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="225" 
             startDate="2014-07-19 13:40:32" endDate="2014-07-19 13:44:17" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="3"/>
        <row jobID="229135868" installerID="498338451" installerName="Qoi" facilityID="60006382" solarSystemID="30005194" 
             solarSystemName="Cleyd" stationID="60006382" activityID="5" blueprintID="1015322013688" blueprintTypeID="10040" 
             blueprintTypeName="Civilian Shield Booster Blueprint" blueprintLocationID="60006382" 
             outputLocationID="60006382" runs="23" cost="2768.00" teamID="0" licensedRuns="99" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="389367" 
             startDate="2014-07-19 13:22:51" endDate="2014-07-24 01:32:18" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="4"/>
        <row jobID="229136102" installerID="498338451" installerName="Qoi" facilityID="1015338129652" solarSystemID="30005195"
             solarSystemName="Vecamia" stationID="1015338119317" activityID="7" blueprintID="1015338143203" blueprintTypeID="30614"
             blueprintTypeName="Intact Armor Nanobot" blueprintLocationID="1015338129652"
             outputLocationID="1015338129652" runs="1" cost="641.00" teamID="0" licensedRuns="300" probability="0"
             productTypeID="0" productTypeName="" status="1" timeInSeconds="3600"
             startDate="2014-07-19 15:48:33" endDate="2014-07-19 16:48:33" pauseDate="0001-01-01 00:00:00"
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="5"/>
        <row jobID="229136071" installerID="498338451" installerName="Qoi" facilityID="1015338129650" solarSystemID="30005195" 
             solarSystemName="Vecamia" stationID="1015338119317" activityID="8" blueprintID="1015338137468" blueprintTypeID="1137" 
             blueprintTypeName="Antimatter Charge S Blueprint" blueprintLocationID="1015338129650"
             outputLocationID="1015338129650" runs="1" cost="4.00" teamID="0" licensedRuns="600" probability="0" 
             productTypeID="0" productTypeName="" status="1" timeInSeconds="11400" 
             startDate="2014-07-19 15:22:40" endDate="2014-07-19 18:32:40" pauseDate="0001-01-01 00:00:00" 
             completedDate="0001-01-01 00:00:00" completedCharacterID="0" successfulRuns="6"/>
    </rowset>
</result>
Result Data
jobs rowset Rowset containing 1 row per industry job.
jobID long Unique job ID.
installerID long Character ID of the character which installed this job.
installerName char Name of character which installed this job.
facilityID int [1], [2], [3] Facility ID where this job is running (see cross-references).
solarSystemID int [1] Solar system where facility is located.
solarSystemName string Name of solar system where facility is located.
stationID int [1], [2], [3], [4] Station ID where industry facility is located.
activityID int [1] Job activity ID (see cross-reference).
blueprintID long [1] Blueprint asset item ID.
blueprintTypeID int [1], [2], [3], [4], [5] Blueprint type ID.
blueprintTypeName char Name of installed blueprint.
blueprintLocationID int Location ID of the location from which the blueprint was installed. Normally a station ID, but can also be an asset (e.g. container) or corporation facility.
outputLocationID int Location ID of the location to which the output of the job will be delivered. Normally a station ID, but can also be a corporation facility.
runs int Number of runs for a manufacturing job, or number of copies to make for a blueprint copy.
cost decimal The sume of job installation fee and industry facility tax.
teamID int N/A - retired in Proteus
licensedRuns int Number of runs blueprint is licensed for.
probability float Chance of success for invention.
productTypeID int [1], [2], [3], [4], [5] Type ID of product (manufactured, copied or invented).
productTypeName int Type name of product (manufactured, copied or invented).
status int [1] Job status (see cross-reference).
timeInSeconds int Job duration in seconds.
startDate datetime Time when this job started.
endDate datetime Time when this job finished.
pauseDate datetime Time when this job was paused (e.g. time when the facility where this job was installed went offline).
completedDate datetime Time when this job was completed.
completedCharacterID long Character ID of character which completed this job.
successfulRuns int Number of successful runs for this job. Equal to runs unless this is an invention job.
Notes
  • This endpoint returns finished corporation jobs (e.g. started from a corporation hangar). Use Corporation - IndustryJobs to retrieve unfinished jobs.
  • This endpoint returns a maximum of 10000 rows and at most 90 days worth of data.
  • If a job is cancelled manually, then the completedCharacterID identifies the character who cancelled the job.
  • If a job is cancelled because the facility was unanchored, then completedCharacterID is 0.
Known Bugs
  • The licensedRuns field is showing undefined values for Manufacturing from a BPO, Reverse Engineering, Invention, ME, TE research.
  • productTypeID and productTypeName for invention jobs with only one possible output type will remain empty until the job finishes.
  • Status does not appear to change for a “ready” job, you must inspect timestamps to find when the job finishes.

Calls

Account
AccountStatus

Information about a player’s EVE account like creation time, minutes spent in game etc.

  • Path: /account/AccountStatus.xml.aspx

  • Access mask: 33554432

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char(64) API verification code
Sample Response
<result>
    <paidUntil>2015-06-27 10:20:57</paidUntil>
    <createDate>2007-05-04 17:47:00</createDate>
    <logonCount>3177</logonCount>
    <logonMinutes>235243</logonMinutes>
    <rowset name="multiCharacterTraining" key="trainingEnd" columns="trainingEnd" />
</result>
Result Data
Name Data type Description
paidUntil datetime The date until which the account is currently subscribed
createDate datetime The date the account was created
logonCount long The number of times you logged into CCP's services
logonMinutes long The amount of time you actually spent logged on in the game
Notes
  • logonCount includes not only the game logons, but also forum logons, likely also EVEGate logons.
APIKeyInfo

Specifies the access rights of an API key.

  • Path: /account/APIKeyInfo.xml.aspx

  • Access mask: none

  • Cache timer: 5 minutes

  • Parameters:

    Argument Type Meaning
    keyID long The ID of the Customizable API Key (CAK) for authentication.
    vCode char(64) The user defined or CCP generated Verification Code for the CAK.
Sample Response
<result>
    <key accessMask="134217727" type="Character" expires="">
        <rowset name="characters" key="characterID" columns="characterID,characterName,corporationID,corporationName,allianceID,allianceName,factionID,factionName">
            <row characterID="1655827332" characterName="Hel O'Ween" corporationID="1226284052" corporationName="Men On A Mission" allianceID="0" allianceName="" factionID="0" factionName="" />
        </rowset>
    </key>
</result>
Result Data
accessMask long The bitwise number of the XML API endpoints this API key can query.
type char The access level of the API key (i.e. Account, Character, Corporation).
expires datetime The date the API key expires. This value will be empty if the key is set to not expire.
name rowset Rowset containing 1 row per character included in the API key.
characterID long The ID of the character for the requested data.
characterName char The name of the character for the requested data.
corporationID long The ID of the corporation for the requested data.
corporationName char The name of the corporation for the requested data.
allianceID long The ID of the alliance for the requested data.
allianceName char The name of the alliance for the requested data.
factionID long The ID of the faction for the requested data.
factionName char The name of the faction for the requested data.
Characters

Lists all characters included in this API key.

  • Path: /account/Characters.xml.aspx

  • Access mask: -

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="characters" key="characterID" columns="name,characterID,corporationName,corporationID,allianceID,allianceName,factionID,factionName">
        <row name="Hel O'Ween" characterID="1655827332" corporationName="Men On A Mission" corporationID="1226284052" allianceID="0" allianceName="" factionID="0" factionName="" />
    </rowset>
</result>
Result Data
Name Data type Description
name char The name of the character for the requested data
characterID int The ID of the character for the requested data, from [char/CharacterList](char_characterlist.md). Only for /char/ endpoints. Optional when the API key is only valid for a single character.
corporationName char The name of the corporation of the character.
corporationID int The ID of the corporation of the character.
allianceName char The name of the alliance of the character.
allianceID int The ID of the alliance of the character.
factionName char The name of the faction of the character.
factionID int The ID of the faction of the character.
API
CallList

List of all selectable API endpoints/groups to which an API grants access to.

  • Path: /api/CallList.xml.aspx
  • Access mask: -
  • Cache timer: 6 hours
  • Parameters: -
Sample Response
<result>
    <rowset name="callGroups" key="groupID" columns="groupID,name,description">
        <row groupID="1" name="Account and Market" description="Market Orders, account balance and journal history." />
        <row groupID="7" name="Communications" description="Private communications such as contact lists, Eve Mail and Notifications." />
        <row groupID="5" name="Corporation Members" description="Member information for Corporations." />
        <row groupID="6" name="Outposts and Starbases" description="Outpost and Starbase information for Corporations" />
        <row groupID="3" name="Private Information" description="Personal information about the owner. Asset lists, skill training for characters, Private Calendar and more." />
        <row groupID="4" name="Public Information" description="Achievements such as Medals, Kill Mails, Fational Warfare Statistics and NPC Standings." />
        <row groupID="2" name="Science and Industry" description="Datacore production and job listing." />
    </rowset>
    <rowset name="calls" key="accessMask,type" columns="accessMask,type,name,groupID,description">
        <row accessMask="134217728" type="Character" name="Locations" groupID="3" description="Allows the fetching of coordinate and name data for items owned by the character." />
        <row accessMask="67108864" type="Character" name="Contracts" groupID="3" description="List of all Contracts the character is involved in." />
        <row accessMask="33554432" type="Character" name="AccountStatus" groupID="3" description="EVE player account status." />
        <row accessMask="16777216" type="Character" name="CharacterInfo" groupID="3" description="Sensitive Character Information, exposes account balance and last known location on top of the other Character Information call." />
        <row accessMask="8388608" type="Character" name="CharacterInfo" groupID="4" description="Character information, exposes skill points and current ship information on top of'Show Info'information." />
        <row accessMask="4194304" type="Character" name="WalletTransactions" groupID="1" description="Market transaction journal of character." />
        <row accessMask="2097152" type="Character" name="WalletJournal" groupID="1" description="Wallet journal of character." />
        <row accessMask="1048576" type="Character" name="UpcomingCalendarEvents" groupID="3" description="Upcoming events on characters calendar." />
        <row accessMask="524288" type="Character" name="Standings" groupID="4" description="NPC Standings towards the character." />
        <row accessMask="262144" type="Character" name="SkillQueue" groupID="3" description="Entire skill queue of character." />
        <row accessMask="131072" type="Character" name="SkillInTraining" groupID="3" description="Skill currently in training on the character. Subset of entire Skill Queue." />
        <row accessMask="65536" type="Character" name="Research" groupID="2" description="List of all Research agents working for the character and the progress of the research." />
        <row accessMask="32768" type="Character" name="NotificationTexts" groupID="7" description="Actual body of notifications sent to the character. Requires Notification access to function." />
        <row accessMask="16384" type="Character" name="Notifications" groupID="7" description="List of recent notifications sent to the character." />
        <row accessMask="8192" type="Character" name="Medals" groupID="4" description="Medals awarded to the character." />
        <row accessMask="4096" type="Character" name="MarketOrders" groupID="1" description="List of all Market Orders the character has made." />
        <row accessMask="2048" type="Character" name="MailMessages" groupID="7" description="List of all messages in the characters EVE Mail Inbox." />
        <row accessMask="1024" type="Character" name="MailingLists" groupID="7" description="List of all Mailing Lists the character subscribes to." />
        <row accessMask="512" type="Character" name="MailBodies" groupID="7" description="EVE Mail bodies. Requires MailMessages as well to function." />
        <row accessMask="256" type="Character" name="KillLog" groupID="4" description="Characters kill log." />
        <row accessMask="128" type="Character" name="IndustryJobs" groupID="2" description="Character jobs, completed and active." />
        <row accessMask="64" type="Character" name="FacWarStats" groupID="4" description="Characters Factional Warfare Statistics." />
        <row accessMask="32" type="Character" name="ContactNotifications" groupID="7" description="Most recent contact notifications for the character." />
        <row accessMask="16" type="Character" name="ContactList" groupID="7" description="List of character contacts and relationship levels." />
        <row accessMask="8" type="Character" name="CharacterSheet" groupID="3" description="Character Sheet information. Contains basic'Show Info'information along with clones, account balance, implants, attributes, skills, certificates and corporation roles." />
        <row accessMask="4" type="Character" name="CalendarEventAttendees" groupID="3" description="Event attendee responses. Requires UpcomingCalendarEvents to function." />
        <row accessMask="2" type="Character" name="AssetList" groupID="3" description="Entire asset list of character." />
        <row accessMask="1" type="Character" name="AccountBalance" groupID="1" description="Current balance of characters wallet." />
        <row accessMask="33554432" type="Corporation" name="MemberTrackingExtended" groupID="5" description="Extensive Member information. Time of last logoff, last known location and ship." />
        <row accessMask="16777216" type="Corporation" name="Locations" groupID="3" description="Allows the fetching of coordinate and name data for items owned by the corporation." />
        <row accessMask="8388608" type="Corporation" name="Contracts" groupID="3" description="List of recent Contracts the corporation is involved in." />
        <row accessMask="4194304" type="Corporation" name="Titles" groupID="5" description="Titles of corporation and the roles they grant." />
        <row accessMask="2097152" type="Corporation" name="WalletTransactions" groupID="1" description="Market transactions of all corporate accounts." />
        <row accessMask="1048576" type="Corporation" name="WalletJournal" groupID="1" description="Wallet journal for all corporate accounts." />
        <row accessMask="524288" type="Corporation" name="StarbaseList" groupID="6" description="List of all corporate starbases." />
        <row accessMask="262144" type="Corporation" name="Standings" groupID="4" description="NPC Standings towards corporation." />
        <row accessMask="131072" type="Corporation" name="StarbaseDetail" groupID="6" description="List of all settings of corporate starbases." />
        <row accessMask="65536" type="Corporation" name="Shareholders" groupID="1" description="Shareholders of the corporation." />
        <row accessMask="32768" type="Corporation" name="OutpostServiceDetail" groupID="6" description="List of all service settings of corporate outposts." />
        <row accessMask="16384" type="Corporation" name="OutpostList" groupID="6" description="List of all outposts controlled by the corporation." />
        <row accessMask="8192" type="Corporation" name="Medals" groupID="4" description="List of all medals created by the corporation." />
        <row accessMask="4096" type="Corporation" name="MarketOrders" groupID="1" description="List of all corporate market orders." />
        <row accessMask="2048" type="Corporation" name="MemberTrackingLimited" groupID="5" description="Limited Member information." />
        <row accessMask="1024" type="Corporation" name="MemberSecurityLog" groupID="5" description="Member role and title change log." />
        <row accessMask="512" type="Corporation" name="MemberSecurity" groupID="5" description="Member roles and titles." />
        <row accessMask="256" type="Corporation" name="KillLog" groupID="4" description="Corporation kill log." />
        <row accessMask="128" type="Corporation" name="IndustryJobs" groupID="2" description="Corporation jobs, completed and active." />
        <row accessMask="64" type="Corporation" name="FacWarStats" groupID="4" description="Corporations Factional Warfare Statistics." />
        <row accessMask="32" type="Corporation" name="ContainerLog" groupID="3" description="Corporate secure container acess log." />
        <row accessMask="16" type="Corporation" name="ContactList" groupID="7" description="Corporate contact list and relationships." />
        <row accessMask="8" type="Corporation" name="CorporationSheet" groupID="3" description="Exposes basic'Show Info'information as well as Member Limit and basic division and wallet info." />
        <row accessMask="4" type="Corporation" name="MemberMedals" groupID="5" description="List of medals awarded to corporation members." />
        <row accessMask="2" type="Corporation" name="AssetList" groupID="3" description="List of all corporation assets." />
        <row accessMask="1" type="Corporation" name="AccountBalance" groupID="1" description="Current balance of all corporation accounts." />
    </rowset>
</result>
Result Data
Name Data type Description
callGroups rows - list of the predefined API access groups
groupID long Group ID
name char Names of the predefined API access groups as listed at the API key management page
description char Description of the included access rights
calls rows - list of every access right
accessMask long Necessary access mask of an API key for accessing this API endpoint
type char Type of API access (Character, Corporation etc.) this mask grants
name char API endpoint name
groupID long callGroup (see above) to which this endpoint belongs
description char Describes which data can be access by this accessMask
Character
AccountBalance

Retrieve character account balance.

  • Path: /char/AccountBalance.xml.aspx

  • Access mask: 1

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="accounts" key="accountID" columns="accountID,accountKey,balance">
        <row accountID="12636870" accountKey="1000" balance="1234567.89" />
    </rowset>
</result>
Result Data
Name Data type Description
accountID int ID of the account
accountKey int Account identifier
balance decimal Amount of ISK in this character's wallet
Notes
  • accountKey: This is always 1000 for a character’s account balance as opposed to a corporation, where accountKey ranges from 1000 to 1006 for the seven corporate wallet divisions.
Bookmarks

Retrieve character Bookmarks.

  • Path: /char/Bookmarks.xml.aspx

  • Access mask: 268435456

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which bookmarks will be requested
Sample Response
<result>
    <rowset name="folders" key="folderID" columns="folderID,folderName">
        <row folderID="0" folderName="">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="12" creatorID="90000001" created="2015-07-08 21:34:14" itemID="60014689" typeID="57" locationID="30004971" x="0" y="0" z="0" memo="Home Station" note="Our base of residence" />
                <row bookmarkID="13" creatorID="90000001" created="2015-07-08 21:35:07" itemID="40314792" typeID="8" locationID="30004971" x="0" y="0" z="0" memo="Sun" note="" />
            </rowset>
        </row>
        <row folderID="1" folderName="A lovely empty folder">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note" />
        </row>
        <row folderID="3" folderName="Sites">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="16" creatorID="90000001" created="2015-07-08 21:37:12" itemID="40314827" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 2 ( Asteroid Belt )" note="" />
                <row bookmarkID="17" creatorID="90000001" created="2015-07-08 21:37:22" itemID="40314829" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 3 ( Asteroid Belt )" note="" />
                <row bookmarkID="18" creatorID="90000001" created="2015-07-08 21:37:29" itemID="40314794" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant I - Asteroid Belt 1 ( Asteroid Belt )" note="" />
                <row bookmarkID="19" creatorID="90000001" created="2015-07-08 21:37:39" itemID="40314811" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 1 ( Asteroid Belt )" note="" />
            </rowset>
        </row>
        <row folderID="4" folderName="Random crap">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="14" creatorID="90000001" created="2015-07-08 21:36:08" itemID="0" typeID="5" locationID="30004971" x="-373405654941.733" y="42718621667.0746" z="-1415023302173.46" memo="spot in Duripant solar system" note="" />
                <row bookmarkID="15" creatorID="90000001" created="2015-07-08 21:36:46" itemID="0" typeID="5" locationID="30004971" x="-373405652840.03" y="42718623812.4957" z="-1415023308332.07" memo="spot in Duripant solar system" note="" />
            </rowset>
        </row>
    </rowset>
</result>
Result Data
folders rowset Rowset containing 1 row per bookmark folder.
folderID int Unique folder ID.
folderName string Folder name.
bookmarks rowset Rowset container 1 row per bookmark in the current folder.
bookmarkID int Unique bookmark ID.
creatorID long Bookmark creator ID. Can be character or corporation ID.
created datetime Date and time when bookmark was created.
itemID long [1] Item ID of the item to which the bookmark refers, or 0 if the bookmark refers to a location.
typeID int [1] Type ID of the item to which the bookmark refers (even if the bookmark refers to a location instead of an item).
locationID long [1] Location ID of the solar sytem to which this bookmark refers.
x double X location of bookmark (relative to system sun) if this bookmark does not refer to an item.
y double Y location of bookmark (relative to system sun) if this bookmark does not refer to an item.
z double Z location of bookmark (relative to system sun) if this bookmark does not refer to an item.
memo string Bookmark description (owner specified).
note string Bookmark annotation (owner specified).
Notes
  • A bookmark will either refer to a specific item (e.g. station), or a location in space. Bookmarks which refer to an item will have a non-zero item ID. Otherwise, the bookmark will specify x, y and z coordinates of the location it refers to.
CalendarEventAttendees

Returns a list of all invited attendees for a given event.

  • Path: /char/CalendarEventAttendees.xml.aspx

  • Access mask: 4

  • Cache timer: 10 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
    eventIDs long IDs of the events
Sample Response
<result>
    <rowset name="eventAttendees" key="characterID" columns="characterID,characterName,response">
        <row characterID="123456789" characterName="Jane Doe" response="Accepted" />
        <row characterID="987654321" characterName="John Doe" response="Tentative" />
        <row characterID="192837645" characterName="Another Doe" response="Declined" />
        <row characterID="918273465" characterName="Doe the Third" response="Undecided" />
    </rowset>
</result>
Result Data
Name Data type Description
characterID long ID of the character.
characterName string Name of the character.
response string Can be {"Undecided", "Accepted", "Declined" or "Tentative"}
Notes
  • A call to Character - UpcomingCalendarEvents must be made prior to calling this API. Otherwise you will receive the error:
    216: Calendar Event List not populated with upcoming events. You cannot request any random eventID.
CharacterSheet

Character, Skills and roles information

  • Path: /char/CharacterSheet.xml.aspx

  • Access mask: 8

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <characterID>632424020</characterID>
    <name>Ernest Borgnine</name>
    <homeStationID>60009646</homeStationID>
    <DoB>2006-03-05 12:41:00</DoB>
    <race>Amarr</race>
    <bloodLineID>13</bloodLineID>
    <bloodLine>Khanid</bloodLine>
    <ancestryID>37</ancestryID>
    <ancestry>Cyber Knights</ancestry>
    <gender>Male</gender>
    <corporationName>Mine. Now. Please</corporationName>
    <corporationID>790988403</corporationID>
    <allianceName>Alliance. Now. Please.</allianceName>
    <allianceID>1538759362</allianceID>
    <factionName/>
    <factionID>0</factionID>
    <cloneTypeID>164</cloneTypeID>
    <cloneName>Clone Grade Alpha</cloneName>
    <cloneSkillPoints>0</cloneSkillPoints>
    <freeSkillPoints>0</freeSkillPoints>
    <freeRespecs>3</freeRespecs>
    <cloneJumpDate>2014-07-29 19:21:47</cloneJumpDate>
    <lastRespecDate>2014-06-01 15:50:22</lastRespecDate>
    <lastTimedRespec>2014-06-01 15:50:22</lastTimedRespec>
    <remoteStationDate>2014-07-29 19:21:47</remoteStationDate>
    <rowset columns="jumpCloneID,typeID,locationID,cloneName" key="jumpCloneID" name="jumpClones">
        <row cloneName="" locationID="61000253" typeID="164" jumpCloneID="18965660"/>
        <row cloneName="" locationID="61000336" typeID="164" jumpCloneID="11203936"/>
        <row cloneName="" locationID="61000637" typeID="164" jumpCloneID="15754983"/>
        <row cloneName="" locationID="61000902" typeID="164" jumpCloneID="19027562"/>
    </rowset>
    <rowset columns="jumpCloneID,typeID,typeName" key="jumpCloneID" name="jumpCloneImplants">
        <row typeID="9941" jumpCloneID="18965660" typeName="Memory Augmentation - Basic"/>
        <row typeID="10212" jumpCloneID="18965660" typeName="Neural Boost - Standard"/>
        <row typeID="10216" jumpCloneID="18965660" typeName="Ocular Filter - Standard"/>
        <row typeID="10228" jumpCloneID="18965660" typeName="Zainou 'Gnome' Shield Management SM-703"/>
        <row typeID="10208" jumpCloneID="11203936" typeName="Memory Augmentation - Standard"/>
        <row typeID="10212" jumpCloneID="11203936" typeName="Neural Boost - Standard"/>
        <row typeID="10216" jumpCloneID="11203936" typeName="Ocular Filter - Standard"/>
        <row typeID="10221" jumpCloneID="11203936" typeName="Cybernetic Subprocessor - Standard"/>
        <row typeID="9941" jumpCloneID="15754983" typeName="Memory Augmentation - Basic"/>
        <row typeID="9943" jumpCloneID="15754983" typeName="Cybernetic Subprocessor - Basic"/>
        <row typeID="10212" jumpCloneID="15754983" typeName="Neural Boost - Standard"/>
        <row typeID="10216" jumpCloneID="15754983" typeName="Ocular Filter - Standard"/>
        <row typeID="10228" jumpCloneID="15754983" typeName="Zainou 'Gnome' Shield Management SM-703"/>
        <row typeID="13256" jumpCloneID="15754983" typeName="Inherent Implants 'Noble' Hull Upgrades HG-1003"/>
        <row typeID="13260" jumpCloneID="15754983" typeName="Inherent Implants 'Squire' Capacitor Systems Operation EO-603"/>
    </rowset>
    <jumpActivation>2015-08-15 21:09:23</jumpActivation>
    <jumpFatigue>2015-08-15 21:42:41</jumpFatigue>
    <jumpLastUpdate>2015-08-15 21:05:42</jumpLastUpdate>
    <balance>509647769.03</balance>
    <rowset columns="typeID,typeName" key="typeID" name="implants">
        <row typeID="10209" typeName="Memory Augmentation - Improved"/>
        <row typeID="10213" typeName="Neural Boost - Improved"/>
        <row typeID="10217" typeName="Ocular Filter - Improved"/>
        <row typeID="10222" typeName="Cybernetic Subprocessor - Improved"/>
        <row typeID="10226" typeName="Social Adaptation Chip - Improved"/>
        <row typeID="33329" typeName="Genolution 'Auroral' AU-79"/>
    </rowset>
    <attributes>
        <intelligence>17</intelligence>
        <memory>17</memory>
        <charisma>27</charisma>
        <perception>17</perception>
        <willpower>21</willpower>
    </attributes>
    <rowset columns="typeID,skillpoints,level,published" key="typeID" name="skills">
        <row typeID="11584" published="1" level="1" skillpoints="750"/>
        <row typeID="24624" published="1" level="0" skillpoints="28"/>
        <row typeID="3394" published="1" level="2" skillpoints="2829"/>
        <row typeID="3411" published="1" level="1" skillpoints="750"/>
        <row typeID="3551" published="1" level="3" skillpoints="8000"/>
        <row typeID="3426" published="1" level="1" skillpoints="250"/>
        <row typeID="25863" published="1" level="1" skillpoints="750"/>
        <row typeID="3328" published="1" level="3" skillpoints="16000"/>
        <row typeID="3340" published="1" level="2" skillpoints="5663"/>
        <row typeID="3363" published="1" level="1" skillpoints="250"/>
        <row typeID="24270" published="1" level="1" skillpoints="750"/>
        <row typeID="21059" published="1" level="3" skillpoints="16000"/>
        <row typeID="12367" published="1" level="2" skillpoints="2829"/>
        <row typeID="12366" published="1" level="2" skillpoints="2829"/>
        <row typeID="12365" published="1" level="2" skillpoints="2829"/>
        <row typeID="12195" published="1" level="1" skillpoints="250"/>
        <row typeID="11566" published="1" level="3" skillpoints="16000"/>
        <row typeID="3443" published="1" level="3" skillpoints="8000"/>
        <row typeID="3425" published="1" level="4" skillpoints="90510"/>
        <row typeID="3422" published="1" level="2" skillpoints="2829"/>
        <row typeID="3417" published="1" level="3" skillpoints="8000"/>
        <row typeID="3416" published="1" level="5" skillpoints="256000"/>
        <row typeID="3413" published="1" level="3" skillpoints="8000"/>
        <row typeID="3406" published="1" level="5" skillpoints="256000"/>
        <row typeID="3403" published="1" level="4" skillpoints="45255"/>
        <row typeID="3402" published="1" level="3" skillpoints="8000"/>
        <row typeID="3392" published="1" level="3" skillpoints="8000"/>
        <row typeID="3387" published="1" level="1" skillpoints="500"/>
        <row typeID="3386" published="1" level="2" skillpoints="1415"/>
        <row typeID="3385" published="1" level="4" skillpoints="45255"/>
        <row typeID="3380" published="1" level="3" skillpoints="8000"/>
        <row typeID="3330" published="1" level="1" skillpoints="500"/>
        <row typeID="3327" published="1" level="3" skillpoints="21351"/>
        <row typeID="3320" published="1" level="3" skillpoints="8000"/>
        <row typeID="3319" published="1" level="2" skillpoints="1415"/>
        <row typeID="3301" published="1" level="1" skillpoints="250"/>
        <row typeID="3300" published="1" level="1" skillpoints="250"/>
    </rowset>
    <rowset columns="certificateID" key="certificateID" name="certificates"/>
    <rowset columns="roleID,roleName" key="roleID" name="corporationRoles">
        <row roleName="roleEquipmentConfig" roleID="2199023255552"/>
        <row roleName="roleInfrastructureTacticalOfficer" roleID="144115188075855872"/>
    </rowset>
    <rowset columns="roleID,roleName" key="roleID" name="corporationRolesAtHQ">
        <row roleName="roleHangarCanTake1" roleID="8192"/>
        <row roleName="roleHangarCanTake3" roleID="32768"/>
        <row roleName="roleHangarCanQuery1" roleID="1048576"/>
        <row roleName="roleHangarCanQuery3" roleID="4194304"/>
        <row roleName="roleHangarCanQuery4" roleID="8388608"/>
        <row roleName="roleHangarCanQuery5" roleID="16777216"/>
        <row roleName="roleContainerCanTake1" roleID="4398046511104"/>
        <row roleName="roleContainerCanTake2" roleID="8796093022208"/>
        <row roleName="roleContainerCanTake3" roleID="17592186044416"/>
    </rowset>
    <rowset columns="roleID,roleName" key="roleID" name="corporationRolesAtBase">
        <row roleName="roleHangarCanTake1" roleID="8192"/>
        <row roleName="roleHangarCanTake3" roleID="32768"/>
        <row roleName="roleHangarCanQuery1" roleID="1048576"/>
        <row roleName="roleHangarCanQuery3" roleID="4194304"/>
        <row roleName="roleHangarCanQuery4" roleID="8388608"/>
        <row roleName="roleHangarCanQuery5" roleID="16777216"/>
        <row roleName="roleContainerCanTake1" roleID="4398046511104"/>
        <row roleName="roleContainerCanTake2" roleID="8796093022208"/>
        <row roleName="roleContainerCanTake3" roleID="17592186044416"/>
    </rowset>
    <rowset columns="roleID,roleName" key="roleID" name="corporationRolesAtOther">
        <row roleName="roleHangarCanTake1" roleID="8192"/>
        <row roleName="roleHangarCanTake3" roleID="32768"/>
        <row roleName="roleHangarCanQuery1" roleID="1048576"/>
        <row roleName="roleHangarCanQuery2" roleID="2097152"/>
        <row roleName="roleHangarCanQuery3" roleID="4194304"/>
        <row roleName="roleHangarCanQuery4" roleID="8388608"/>
        <row roleName="roleHangarCanQuery5" roleID="16777216"/>
        <row roleName="roleContainerCanTake1" roleID="4398046511104"/>
        <row roleName="roleContainerCanTake2" roleID="8796093022208"/>
        <row roleName="roleContainerCanTake3" roleID="17592186044416"/>
    </rowset>
    <rowset columns="titleID,titleName" key="titleID" name="corporationTitles">
        <row titleName="**" titleID="8"/>
    </rowset>
</result>
Result Data
Name Data type Description
characterID long The character ID.
name string Character Name.
homeStationID long ID for station where clone will spawn on demise.
DoB datetime Date character was created.
race string Characters race.
bloodLineID long [1] ID for characters bloodline.
bloodLine string Characters bloodline.
ancestryID long [2] ID for characters ancestry.
ancestry string Characters ancestry.
gender string Characters gender.
corporationName string Characters corporation.
corporationID long ID for characters corporation.
allianceName string Characters alliance.
allianceID long ID for characters alliance.
factionName string Characters faction.
factionID long [3] ID for characters faction.
cloneTypeID long [4] Characters typeID for clone. (deprecated)
cloneName string Name of Clone Type. (deprecated)
cloneSkillPoints long Skillpoints covered by clone. (deprecated)
freeSkillPoints long Skillpoints available to be assigned.
freeRespecs int Number of available character attribute respecs.
cloneJumpDate datetime Characters last clone jump.
lastRespecDate datetime Characters last character attribute respec.
lastTimedRespec datetime Characters last character attribute respec. (Using respec accrued over time (1 year))
remoteStationDate datetime Characters last change of home station remotely.
jumpActivation datetime Characters last capital jump activation.
jumpFatigue datetime Characters jump fatigue expiry.
jumpLastUpdate datetime Characters last jump update.
balance decimal Characters wallet balance.
Attributes
intelligence int Characters intelligence attribute.
memory int Characters memory attribute.
charisma int Characters charisma attribute.
perception int Characters perception attribute.
willpower int Characters willpower attribute.
Rowset jumpClones
jumpCloneID int Unique jump clone identifier.
cloneTypeID long [4] Characters typeID for clone. (deprecated)
locationID long References location ID.
cloneName string Name given to clone.
Rowset jumpCloneImplants
jumpCloneID int Unique jump clone identifier.
typeID long [4] Type ID for implant
typeName string Name for implant.
Rowset implants
typeID long [4] Type ID for implant
typeName string Name for implant.
Rowset skills
typeID long [4] Type ID for implant.
skillpoints int Number of skillpoints trained in this skill.
level int Level skill has been trained to.
published int 0 = unpublished, 1 = published
Rowset certificates (deprecated)
certificateID int ID of certificate.
Rowset corporationRoles
roleID int64 ID of role.
roleName string Name of role.
Rowset corporationRolesAtHQ
Same as corporationRoles.
Rowset corporationRolesAtBase
Same as corporationRoles.
Rowset corporationRolesAtOther
Same as corporationRoles.
Rowset corporationTitles
titleID int32 ID of title.
titleName string Name of title.
References
ChatChannels

Retrieve character Chat Channels.

  • Path: /char/ChatChannels.xml.aspx

  • Access mask: 536870912

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="channels" key="channelID" columns="channelID,ownerID,ownerName,displayName,comparisonKey,hasPassword,motd">
        <row channelID="-69329950" ownerID="95578451" ownerName="CCP Tellus" displayName="Players' Haven" comparisonKey="players'haven" hasPassword="False" motd="<b>Feed pineapples to the cats!</b>">
            <rowset name="allowed" key="accessorID" columns="accessorID,accessorName">
                <row accessorID="99005629" accessorName="Tellus Alliance" />
            </rowset>
            <rowset name="blocked" key="accessorID" columns="accessorID,accessorName,untilWhen,reason">
                <row accessorID="98396389" accessorName="Tellus Corporation" untilWhen="0001-01-01 00:00:00" reason="" />
            </rowset>
            <rowset name="muted" key="accessorID" columns="accessorID,accessorName,untilWhen,reason">
                <row accessorID="90006031" accessorName="CCP Nestor" untilWhen="2015-08-07 15:17:40" reason="Test success! You can't speak now." />
            </rowset>
            <rowset name="operators" key="accessorID" columns="accessorID,accessorName">
                <row accessorID="92168909" accessorName="CCP FoxFour" />
                <row accessorID="95465499" accessorName="CCP Bartender" />
            </rowset>
        </row>
    </rowset>
</result>
Result Data
channels rowset Rowset containing 1 row per channel.
channelID long Unique channel ID. Always negative for player-created channels. Permanent (CCP created) channels have a positive ID, but don't appear in the API.
ownerID long Channel owner ID.
ownerName string Channel owner name.
displayName string Displayed name of channel.
comparisonKey rowset Normalized, unique string used to compare channel names.
hasPassword boolean If true, then this is a password protected channel.
motd string Current channel message of the day.
allowed rowset Rowset containing one row per allowed channel member.
accessorID long ID of allowed channel member (see notes below).
accessorName string Name of allowed channel member.
blocked rowset Rowset containing one row per blocked channel member.
accessorID long ID of blocked channel member (see notes below).
accessorName string Name of blocked channel member.
untilWhen datetime Time at which accessor will no longer be blocked.
reason string Reason accessor is blocked.
muted rowset Rowset containing one row per muted channel member.
accessorID long ID of muted channel member (see notes below).
accessorName string Name of muted channel member.
untilWhen datetime Time at which accessor will no longer be muted.
reason string Reason accessor is muted.
operators rowset Rowset containing one row per channel operator.
accessorID long ID of channel operator (see notes below).
accessorName string Name of channel operator.
Notes
  • Chat channel accessor IDs can be characters, corporations or alliances.
ContactList

Lists the character’s personal, corporation, and alliance contacts.

  • Path: /char/ContactList.xml.aspx

  • Access mask: 16

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="contactList" key="contactID" columns="contactID,contactName,standing,contactTypeID,labelMask,inWatchlist">
        <row contactID="3013827" contactName="Nouta Dahiva" standing="0" contactTypeID="1373" labelMask="0" inWatchlist="False" />
        <row contactID="3008933" contactName="Saame Marver" standing="0" contactTypeID="1374" labelMask="0" inWatchlist="False" />
        <row contactID="3013522" contactName="Iya Kattora" standing="0" contactTypeID="1375" labelMask="0" inWatchlist="False" />
        <row contactID="3011405" contactName="Okila Kavas" standing="0" contactTypeID="1376" labelMask="0" inWatchlist="False" />
        <row contactID="3009566" contactName="Rias Luisauir" standing="0" contactTypeID="1377" labelMask="0" inWatchlist="False" />
        <row contactID="147874353" contactName="BIG Games" standing="0" contactTypeID="1378" labelMask="0" inWatchlist="True" />
        <row contactID="196379789" contactName="Chribba" standing="5" contactTypeID="1379" labelMask="0" inWatchlist="False" />
        <row contactID="3017057" contactName="Kaer Aginia" standing="0" contactTypeID="1380" labelMask="0" inWatchlist="False" />
        <row contactID="3018696" contactName="Rantoh Funkaki" standing="0" contactTypeID="1383" labelMask="0" inWatchlist="False" />
        <row contactID="3018931" contactName="Antogase Pandon" standing="0" contactTypeID="1384" labelMask="0" inWatchlist="False" />
        <row contactID="3019364" contactName="Doctor Canius" standing="0" contactTypeID="1385" labelMask="0" inWatchlist="False" />
        <row contactID="3019361" contactName="Keita Eslin" standing="0" contactTypeID="1386" labelMask="0" inWatchlist="False" />
        <row contactID="1488155548" contactName="MD Financial Services" standing="0" contactTypeID="2" labelMask="0" inWatchlist="False" />
        <row contactID="903693898" contactName="Biotronics Inc." standing="10" contactTypeID="2" labelMask="0" inWatchlist="False" />
    </rowset>
    <rowset name="contactLabels" key="labelID" columns="labelID,name" />
    <rowset name="corporateContactList" key="contactID" columns="contactID,contactName,standing,contactTypeID,labelMask">
        <row contactID="111751354" contactName="Mark Hamill" standing="5" contactTypeID="1374" labelMask="0" />
        <row contactID="903693898" contactName="Biotronics Inc." standing="10" contactTypeID="2" labelMask="0" />
        <row contactID="1900696668" contactName="The Initiative." standing="5" contactTypeID="16159" labelMask="0" />
    </rowset>
    <rowset name="corporateContactLabels" key="labelID" columns="labelID,name" />
    <rowset name="allianceContactList" key="contactID" columns="contactID,contactName,standing,contactTypeID,labelMask" />
    <rowset name="allianceContactLabels" key="labelID" columns="labelID,name" />
</result>
Result Data
Name Data type Description
Rowset contactList
contactID long The characterID/corporationID of the character/agent/corporation in your contact list.
contactName char The name of the contact. For deleted entities this field is empty.
standing int The standings you set for this contact (see notes).
contactTypeID long Determines the contact type:
2 = Corporation
1373-1386 = Character
16159 = Alliance
labelMask long Label(s) from contactLabels associated with this entry.
inWatchlist bool Has this entry been added to the character's watchlist? Valid for contactTypeID 1373 to 1386 only.
Rowset contactLabels
labelID long Unique label ID. Multiple labelIDs bitwise combined result in labelMask.
name char The label's text.
Rowset corporateContactList
Same as contactList with the exception of inWatchlist missing.
Rowset corporateContactLabels
Same as contactLabels.
Rowset allianceContactList
Same as contactList with the exception of inWatchlist missing.
Rowset allianceContactLabels
Same as contactLabels.
Notes
  • Returns the character’s contact and watch lists, incl. agents and respective standings set by the character. Also includes the character’s corporation and/or alliance contacts. See the Standings API for standings towards the character from agents and NPC entities.
ContactNotifications

Lists the notifications received about having been added to someone’s contact list.

  • Path: /char/ContactNotifications.xml.aspx

  • Access mask: 32

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="contactNotifications" key="notificationID" columns="notificationID,senderID,senderName,sentDate,messageData">
        <row notificationID="308734131" senderID="797400947" senderName="CCP Garthagk" sentDate="2010-05-29 23:04:00" messageData="level: 10&#xA;message: Hi, I want to social network with you!&#xA;" />
    </rowset>
</result>
Result Data
Name Data type Description
notificationID long ID number of the notification.
senderID long ID of character/agent/corp who initiated this notification message.
senderName char Name of character/agent/corp who initiated this notification message.
sentDate datetime Date/time notification was sent.
messageData string Contents of the message (see notes).
messageData contents
level decimal The new standing.
message string Actual message text.
Notes
  • messageData layout Message data is a string of name/value pairs, each pair terminated by a LF (

    &amp;

    #xA;):

    {name1}: {value1}
    {name2}: {value2}
    {name3}: {value3}
    
ContractBids

Retrieve bids that have been placed on the characters auctions.

  • Path: /char/ContractBids.xml.aspx

  • Access mask: 67108864

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset columns="bidID,contractID,bidderID,dateBid,amount" key="bidID" name="bidList">
        <row amount="1000000.00" dateBid="2015-11-08 03:45:50" bidderID="92168909" contractID="98714177" bidID="4891368"/>
        <row amount="2000000.00" dateBid="2015-11-08 03:46:21" bidderID="95633963" contractID="98714177" bidID="4891412"/>
        <row amount="152441923.72" dateBid="2015-11-08 03:49:46" bidderID="1188435724" contractID="98714179" bidID="4891491"/>
    </rowset>
</result>
Result Data
Name Data type Description
bidID long Unique ID for the bid.
contractID long Unique ID for the contract.
bidderID long Character ID of the bidder.
dateBid datetime Date bid was placed.
amount decimal The ammount bid.
Notes
  • This page returns only bids characters have placed on Auctions the character queried owns. It will not pull bids from public auctions the character has bid upon.
  • It only shows bids for current ongoing auctions.
Contracts

Returns available contracts to character.

  • Path: /char/Contracts.xml.aspx

  • Access mask: 67108864

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
    contractID long ID of a specific contract (Optional)
Sample Response
<result>
    <rowset columns="contractID,issuerID,issuerCorpID,assigneeID,acceptorID,startStationID,endStationID,type,status,title,forCorp,availability,dateIssued,dateExpired,dateAccepted,numDays,dateCompleted,price,reward,collateral,buyout,volume" key="contractID" name="contractList">
        <row title="MWD Scimitar + Kin Hardener - Rigs in cargo" volume="89000" buyout="0.00" collateral="0.00" reward="0.00" price="220000000.00" dateCompleted="2015-10-16 04:36:30" numDays="0" dateAccepted="2015-10-16 04:36:30" dateExpired="2015-10-23 15:32:31" dateIssued="2015-10-09 15:32:31" availability="Private" forCorp="0" status="Completed" type="ItemExchange" endStationID="60015108" startStationID="60015108" acceptorID="258695360" assigneeID="386292982" issuerCorpID="673319797" issuerID="91512526" contractID="97809127"/>
        <row title="" volume="216000" buyout="0.00" collateral="0.00" reward="0.00" price="149000000.00" dateCompleted="2015-10-16 04:39:27" numDays="0" dateAccepted="2015-10-16 04:39:27" dateExpired="2015-10-26 03:31:21" dateIssued="2015-10-12 03:31:21" availability="Private" forCorp="0" status="Completed" type="ItemExchange" endStationID="60015108" startStationID="60015108" acceptorID="258695360" assigneeID="386292982" issuerCorpID="1941177176" issuerID="1524136743" contractID="97884327"/>
        <row title="" volume="43000" buyout="0.00" collateral="0.00" reward="0.00" price="74000000.00" dateCompleted="2015-10-16 04:36:47" numDays="0" dateAccepted="2015-10-16 04:36:47" dateExpired="2015-10-28 05:30:02" dateIssued="2015-10-14 05:30:02" availability="Private" forCorp="0" status="Completed" type="ItemExchange" endStationID="60015108" startStationID="60015108" acceptorID="258695360" assigneeID="386292982" issuerCorpID="98254901" issuerID="1077170504" contractID="97937400"/>
        <row title="" volume="47000" buyout="0.00" collateral="0.00" reward="0.00" price="70000000.00" dateCompleted="2015-10-16 04:37:09" numDays="0" dateAccepted="2015-10-16 04:37:09" dateExpired="2015-10-29 23:44:29" dateIssued="2015-10-15 23:44:29" availability="Private" forCorp="0" status="Completed" type="ItemExchange" endStationID="60015108" startStationID="60015108" acceptorID="258695360" assigneeID="386292982" issuerCorpID="98416600" issuerID="92084830" contractID="97981024"/>
        <row title="" volume="35900" buyout="0.00" collateral="0.00" reward="0.00" price="55000000.00" dateCompleted="2015-11-03 19:14:05" numDays="0" dateAccepted="2015-11-03 19:14:05" dateExpired="2015-11-07 22:22:47" dateIssued="2015-10-24 22:22:47" availability="Public" forCorp="0" status="Completed" type="ItemExchange" endStationID="60015106" startStationID="60015106" acceptorID="258695360" assigneeID="0" issuerCorpID="116777001" issuerID="337129922" contractID="98256398"/>
    </rowset>
</result>
Result Data
Name Data type Description
contractID long Unique Identifier for the contract.
issuerID long Character ID for the issuer.
issuerCorpID long Characters corporation ID for the issuer.
assigneeID long ID to whom the contract is assigned, can be corporation or character ID.
acceptorID long Who will accept the contract. If assigneeID is same as acceptorID then CharacterID else CorporationID (The contract accepted by the corporation).
startStationID int Start station ID (for Couriers contract).
endStationID int End station ID (for Couriers contract).
type string Type of the contract (ItemExchange, Courier, Loan or Auction).
status string Status of the the contract (Outstanding, Deleted, Completed, Failed, CompletedByIssuer, CompletedByContractor, Cancelled, Rejected, Reversed or InProgress)
title string Title of the contract
forCorp int 1 if the contract was issued on behalf of the issuer's corporation, 0 otherwise
availability string Public or Private
dateIssued datetime Сreation date of the contract
dateExpired datetime Expiration date of the contract
dateAccepted datetime Date of confirmation of contract
numDays int Number of days to perform the contract
dateCompleted datetime Date of completed of contract
price float Price of contract (for ItemsExchange and Auctions)
reward float Remuneration for contract (for Couriers only)
collateral float Collateral price (for Couriers only)
buyout float Buyout price (for Auctions only)
volume float Volume of items in the contract
FacWarStats

Returns faction warfare information for characters enrolled in faction warfare.

  • Path: /char/FacWarStats.xml.aspx

  • Access mask: 64

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <factionID>500001</factionID>
    <factionName>Caldari State</factionName>
    <enlisted>2008-06-10 22:10:00</enlisted>
    <currentRank>4</currentRank>
    <highestRank>4</highestRank>
    <killsYesterday>0</killsYesterday>
    <killsLastWeek>0</killsLastWeek>
    <killsTotal>0</killsTotal>
    <victoryPointsYesterday>0</victoryPointsYesterday>
    <victoryPointsLastWeek>1044</victoryPointsLastWeek>
    <victoryPointsTotal>0</victoryPointsTotal>
</result>
Result Data
Name Data type Description
factionID int ID number of the faction.
factionName string Name of the faction.
enlisted date time Date character enlisted in the faction.
currentRank int Characters current faction rank.
highestRank int Characters highest faction rank.
killsYesterday int Number of ships character destroyed yesterday.
killsLastWeek int Number of ships character destroyed last week.
killsTotal int Number of total ships character destroyed.
victoryPointsYesterday int Number of victory points character acquired yesterday.
victoryPointsLastWeek int Number of victory points character acquired last week.
victoryPointsTotal int Number of total victory points character acquired.
Notes
  • If the character is enlisted in Factional Warfare, this will return the faction the character is enlisted in, the current rank and the highest rank the character ever had attained, and how many kills and victory points the character obtained yesterday, in the last week, and total. Otherwise returns an error code.
124: Character not enlisted in Factional Warfare.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

KillLog

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

KillMails

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Locations
MailBodies

Returns the bodies of eve mail messages sent to the character.

  • Path: /char/MailBodies.xml.aspx

  • Access mask: 512

  • Cache timer: 10 years (see notes below)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
    IDs list of long Comma separated list of message IDs for which texts should be retrieved (see notes below)
Sample Response
<result>
    <rowset name="messages" key="messageID" columns="messageID">
        <row messageID="290285276"><![CDATA[
            Mail message body.
        ]]></row>
    </rowset>
</result>
Result Data
Name Data type Description
messageID int The unique message ID number.
message text CDATA DATA (character data) encoded message text.
Sample Response for Missing IDs
<?xml version='1.0' encoding='UTF-8'?>
<eveapi version="2">
    <currentTime>2016-01-27 22:16:53</currentTime>
        <result>
            <rowset name="messages" key="messageID" columns="messageID"/>
            <missingMessageIDs>1234,5678</missingMessageIDs>
        </result>
    <cachedUntil>2026-01-24 22:16:53</cachedUntil>
</eveapi>
Result Data for Missing IDs
Name Data type Description
messages rowset Contains the message texts for message IDs for which texts could be retrieved.
missingMessageIDs list of long Comma separated list of message IDs for which texts could not be retrieved.
Notes
  • Message headers must be requested first before the corresponding message texts can be retrieved.
  • Message texts typically report a “cached until” time of ten years from the current time. It’s not clear whether texts are really cached for this long.
MailingLists

Returns the mailing list the character is a member of.

  • Path: /char/mailinglists.xml.aspx

  • Access mask: 1024

  • Cache timer: 6 hours

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="mailingLists" key="listID" columns="listID,displayName">
    <row listID="98889028" displayName="Dark Market Mailing"/>
    <row listID="139658202" displayName="CyberDyne R-D"/>
    <row listID="145103663" displayName="TEST DIRECTORS"/>
    <row listID="145108697" displayName="Kicking Peoples"/>
    <row listID="145119013" displayName="Welcome INDY"/>
    </rowset>
</result>
Result Data
Name Data type Description
listID int The ID of the mailing list.
displayName string The name of the mailing list.
MailMessages

Returns the header of eve mail messages sent to the character.

  • Path: /char/MailMessages.xml.aspx

  • Access mask: 2048

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="messages" key="messageID" columns="messageID,senderID,senderName,sentDate,title,toCorpOrAllianceID,toCharacterIDs,toListID">
        <row messageID="290285276" senderID="999999999" senderName="Some guy" sentDate="2009-12-01 01:04:00" title="Corp mail" toCorpOrAllianceID="999999999" toCharacterIDs="" toListID="" />
        <row messageID="290285275" senderID="999999999" senderName="Some guy" sentDate="2009-12-01 01:04:00" title="Personal mail" toCorpOrAllianceID="" toCharacterIDs="999999999" toListID="" />
        <row messageID="290285274" senderID="999999999" senderName="Some guy" sentDate="2009-12-01 01:04:00" title="Message to mailing list" toCorpOrAllianceID="" toCharacterIDs="" toListID="999999999" />
    </rowset>
</result>
Result Data
Name Data type Description
messageID int The unique message ID number.
senderID int The character ID or Mailing List ID of the message originator.
senderName string The character name or Mailing List name of the message originator.
sentDate date string The date the message was sent.
title string The title/subject of the message
toCorpOrAllianceID string The ID of a corporation/alliance that the message was sent to.
toCharacterIDs string Comma-separated list of character IDs of the characters that received the message.
toListID string Comma-separated list of mailing lists that the mail was sent to. Currently you can only send a mail to one list but that might change so we made this a list instead of a single ID. The IDs of lists the character is subscribed to can be resolved using the Character - MailingLists.
Notes
  • The first request returns the latest 50 mails/200 notifications sent or received by the character within the last 10 days. Older items are skipped.
  • Subsequent requests return only the new items received since the last request.
  • You can request new items every 30 minutes.
  • If you want to re-set the timer and get the first-request bulk again, you’ll have to wait 6 hours.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Medals
Notification Texts

Retrieve character notification bodies.

  • Path: /char/NotificationTexts.xml.aspx

  • Access mask: 32768

  • Cache timer: 10 years (see notes below)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which notification texts will be retrieved
    IDs list of long Comma separated list of notification IDs for which texts should be retrieved (see notes below)
Sample Response
<rowset name="notifications" key="notificationID" columns="notificationID">
    <row notificationID="374044083"><![CDATA[
        isHouseWarmingGift: 1
        shipTypeID: 606
    ]]></row>
    <row notificationID="374067406"><![CDATA[
        amount: 25000000
        dueDate: 129808158000000000
    ]]></row>
    <row notificationID="374106507"><![CDATA[
         againstID: 673381830
         cost: null
         declaredByID: 98105019
         delayHours: null
         hostileState: null
    ]]></row>
    <row notificationID="374119034"><![CDATA[
          aggressorAllianceID: 673381830
          aggressorCorpID: 785714366
          aggressorID: 1746208390
          armorValue: 1.0
          hullValue: 1.0
          moonID: 40264916
          shieldValue: 0.995
          solarSystemID: 30004181
          typeID: 16688
    ]]></row>
    <row notificationID="374133265"><![CDATA[
          amount: 5125528.4
          itemID: 1005888572647
          payout: 1
    ]]></row>
</rowset>
Result Data
notifications rowset Rowset containing 1 row per notification text.
notificationID long Unique notification ID corresponding to the following notification text.
notification text CDATA CDATA (character data) encoded notification text. The contents of the text depend on the notification type ID (see Notification Types).
Sample Response for Missing IDs
<result>
    <rowset name="notifications" key="notificationID" columns="notificationID">
        <missingIDs>1234,5678</missingIDs>
    </rowset>
</result>
Result Data for Missing IDs
notifications rowset Contains a "missingIDs" child when some notification texts could not be retrieved.
missindIDs list of long Comma separated list of notification IDs for which texts could not be retrieved.
Notes
  • Notification headers must be requested first before the corresponding notification texts can be retrieved.
  • Notification texts typically report a “cached until” time of ten years from the current time. It’s not clear whether texts are really cached for this long.
  • Some notification types have structured data in the corresponding notification text. See Notification Types for a description of this data.
Planetary Colonies

Retrieve planetary colonies owned by character.

  • Path: /char/PlanetaryColonies.xml.aspx

  • Access mask: 2

  • Cache timer: 60 minutes (see notes below)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which planetary colonies will be retrieved
Sample Response
<result>
  <rowset name="colonies" key="planetID" columns="solarSystemID,solarSystemName,planetID,planetName,planetTypeID,planetTypeName,ownerID,ownerName,lastUpdate,upgradeLevel,numberOfPins">
    <row solarSystemID="30003396" solarSystemName="Maturat" planetID="40215260" planetName="Maturat II" planetTypeID="2015" planetTypeName="Planet (Lava)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:17:47" upgradeLevel="5" numberOfPins="8" />
    <row solarSystemID="30003399" solarSystemName="Vorsk" planetID="40215544" planetName="Vorsk I" planetTypeID="2063" planetTypeName="Planet (Plasma)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:16:05" upgradeLevel="4" numberOfPins="7" />
    <row solarSystemID="30003399" solarSystemName="Vorsk" planetID="40215545" planetName="Vorsk II" planetTypeID="2063" planetTypeName="Planet (Plasma)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:16:18" upgradeLevel="4" numberOfPins="7" />
    <row solarSystemID="30003399" solarSystemName="Vorsk" planetID="40215546" planetName="Vorsk III" planetTypeID="2015" planetTypeName="Planet (Lava)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:31:16" upgradeLevel="5" numberOfPins="9" />
    <row solarSystemID="30003399" solarSystemName="Vorsk" planetID="40215548" planetName="Vorsk IV" planetTypeID="11" planetTypeName="Planet (Temperate)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:32:04" upgradeLevel="4" numberOfPins="12" />
    <row solarSystemID="30003399" solarSystemName="Vorsk" planetID="40215551" planetName="Vorsk VI" planetTypeID="13" planetTypeName="Planet (Gas)" ownerID="1801683792" ownerName="reygar burnt" lastUpdate="2015-07-29 02:16:43" upgradeLevel="4" numberOfPins="7" />
  </rowset>
</result>
Result Data
colonies rowset Rowset containing 1 row per planetary colony.
solarSystemID int [1] Solar system where colony is located.
solarSystemName string Name of solar system where colony is located.
planetID int [1] Planet where colony is located.
planetName string Name of planet where colony is located.
planetTypeID int [1] Type of planet where colony is located.
planetTypeName string Type name of planet where colony is located.
ownerID long Character ID of owner.
ownerName string Character name of owner.
lastUpdate datetime Time when colony was last modified.
upgradeLevel int Command center level for this colony.
numberOfPins int Colony pin count.
Notes
  • Unlike other API data, planetary information is only updated when the colony is accessed through the EVE Online client. The information returned by this endpoint will remain unchanged until the next time the colony is viewed through the client.
Planetary Pins

Retrieve planetary pins for colonies owned by character.

  • Path: /char/PlanetaryPins.xml.aspx

  • Access mask: 2

  • Cache timer: 60 minutes (see notes below)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which planetary pins will be retrieved
    planetID int Planet ID of planet for which pins will be retrieved
Sample Response
<result>
    <rowset name="pins" key="pinID" columns="pinID,typeID,typeName,schematicID,lastLaunchTime,cycleTime,quantityPerCycle,installTime,expiryTime,contentTypeID,contentTypeName,contentQuantity,longitude,latitude">
        <row pinID="1009564368954" typeID="2549" typeName="Lava Command Center" schematicID="0" lastLaunchTime="0001-01-01 00:00:00" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="0" contentTypeName="" contentQuantity="0" longitude="-1.76925132343823" latitude="1.35576803141522"/>
        <row pinID="1009564405863" typeID="3062" typeName="Lava Extractor Control Unit" schematicID="0" lastLaunchTime="0001-01-01 00:00:00" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="0" contentTypeName="" contentQuantity="0" longitude="-1.9002762391" latitude="1.35996919697"/>
        <row pinID="1009564405864" typeID="3062" typeName="Lava Extractor Control Unit" schematicID="0" lastLaunchTime="2015-07-29 02:15:26" cycleTime="120" quantityPerCycle="1925" installTime="2015-07-29 02:15:26" expiryTime="2015-08-02 08:15:26" contentTypeID="0" contentTypeName="" contentQuantity="0" longitude="-1.94888869978" latitude="1.27919018972"/>
        <row pinID="1009564416193" typeID="2555" typeName="Lava Launchpad" schematicID="0" lastLaunchTime="0001-01-01 00:00:00" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="2389" contentTypeName="Plasmoids" contentQuantity="20260" longitude="-1.77328132701" latitude="1.31561528674"/>
        <row pinID="1009564438251" typeID="2469" typeName="Lava Basic Industry Facility" schematicID="122" lastLaunchTime="2015-07-23 03:43:31" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="2308" contentTypeName="Suspended Plasma" contentQuantity="1024" longitude="-1.78528278433" latitude="1.29670715686"/>
        <row pinID="1009564438252" typeID="2469" typeName="Lava Basic Industry Facility" schematicID="129" lastLaunchTime="2015-07-22 19:13:31" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="2306" contentTypeName="Non-CS Crystals" contentQuantity="2006" longitude="-1.75855213447" latitude="1.29539116693"/>
        <row pinID="1009564438253" typeID="2470" typeName="Lava Advanced Industry Facility" schematicID="71" lastLaunchTime="2015-07-22 19:43:31" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="2389" contentTypeName="Plasmoids" contentQuantity="40" longitude="-1.7736430669" latitude="1.27606869848"/>
        <row pinID="1009564438253" typeID="2470" typeName="Lava Advanced Industry Facility" schematicID="71" lastLaunchTime="2015-07-22 19:43:31" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="2401" contentTypeName="Chiral Structures" contentQuantity="20" longitude="-1.7736430669" latitude="1.27606869848"/>
        <row pinID="1010009138733" typeID="2558" typeName="Lava Storage Facility" schematicID="0" lastLaunchTime="0001-01-01 00:00:00" cycleTime="0" quantityPerCycle="0" installTime="0001-01-01 00:00:00" expiryTime="0001-01-01 00:00:00" contentTypeID="0" contentTypeName="" contentQuantity="0" longitude="-1.77787254933242" latitude="1.33187818274077"/>
    </rowset>
</result>
Result Data
pins rowset Rowset containing 1 row per planetary pin.
pinID long Unique pin ID.
typeID int [1] Type ID of facility installed at this pin.
typeName string Type name of facility installed at this pin.
schematicID int [1] Schematic ID of schematic installed in this facility.
lastLaunchTime datetime Time when last operation at facility was started.
cycleTime int Facility cycle time in minutes.
quantityPerCycle int Number of items produced by this facility per cycle time (if this facility produces something).
installTime datetime Time when the current operation was started at this facility (if this facility has an operation to perform).
expiryTime datetime Time when this facility will finish the current operation (if this facility has an operation to perform).
contentTypeID int [1] Type ID of content stored at this facility.
contentTypeName string Name of content stored at facility at this facility.
contentQuantity int Amount of content currently stored in facility at pin location.
longitude float Pin longitude.
latitude float Pin latitude.
Notes
  • Unlike other API data, planetary information is only updated when the colony is accessed through the EVE Online client. The information returned by this endpoint will remain unchanged until the next time the colony is viewed through the client.
Planetary Routes

Retrieve planetary routes for colonies owned by character.

  • Path: /char/PlanetaryRoutes.xml.aspx

  • Access mask: 2

  • Cache timer: 60 minutes (see notes below)

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which planetary routes will be retrieved
    planetID int Planet ID of planet for which routes will be retrieved
Sample Response
<result>
    <rowset name="routes" key="routeID" columns="routeID,sourcePinID,destinationPinID,contentTypeID,contentTypeName,quantity,waypoint1,waypoint2,waypoint3,waypoint4,waypoint5">
        <row routeID="683725077" sourcePinID="1009564405863" destinationPinID="1009564416193" contentTypeID="2308" contentTypeName="Suspended Plasma" quantity="45672" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="683725076" sourcePinID="1009564405864" destinationPinID="1009564416193" contentTypeID="2306" contentTypeName="Non-CS Crystals" quantity="27720" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458913" sourcePinID="1009564416193" destinationPinID="1009564438251" contentTypeID="2308" contentTypeName="Suspended Plasma" quantity="3000" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458914" sourcePinID="1009564416193" destinationPinID="1009564438252" contentTypeID="2306" contentTypeName="Non-CS Crystals" quantity="3000" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458915" sourcePinID="1009564416193" destinationPinID="1009564438253" contentTypeID="2401" contentTypeName="Chiral Structures" quantity="40" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458916" sourcePinID="1009564416193" destinationPinID="1009564438253" contentTypeID="2389" contentTypeName="Plasmoids" quantity="40" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458910" sourcePinID="1009564438251" destinationPinID="1009564416193" contentTypeID="2389" contentTypeName="Plasmoids" quantity="20" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458911" sourcePinID="1009564438252" destinationPinID="1009564416193" contentTypeID="2401" contentTypeName="Chiral Structures" quantity="20" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="499458912" sourcePinID="1009564438253" destinationPinID="1009564416193" contentTypeID="9840" contentTypeName="Transmitter" quantity="5" waypoint1="0" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="508634384" sourcePinID="1010009138733" destinationPinID="1009564438251" contentTypeID="2308" contentTypeName="Suspended Plasma" quantity="3000" waypoint1="1009564416193" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
        <row routeID="508634385" sourcePinID="1010009138733" destinationPinID="1009564438253" contentTypeID="2389" contentTypeName="Plasmoids" quantity="40" waypoint1="1009564416193" waypoint2="0" waypoint3="0" waypoint4="0" waypoint5="0"/>
    </rowset>
</result>
Result Data
routes rowset Rowset containing 1 row per planetary route.
routeID long Unique route ID.
sourcePinID long Source pin ID for this route.
destinationPinID long Final destination pin ID for this route.
contentTypeID int [1] Type ID of content transmitted over this route.
contentTypeName string Name of content transmitted over this route.
quantity int Amount of content transmitted over this route.
waypoint1 long Pin ID of first waypoint.
waypoint2 long Pin ID of second waypoint.
waypoint3 long Pin ID of third waypoint.
waypoint4 long Pin ID of fourth waypoint.
waypoint5 long Pin ID of fifth waypoint.
Notes
  • Unlike other API data, planetary information is only updated when the colony is accessed through the EVE Online client. The information returned by this endpoint will remain unchanged until the next time the colony is viewed through the client.
Research

Retrieve character research.

  • Path: /char/Research.xml.aspx

  • Access mask: 65536

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of character
Sample Response
<result>
    <rowset name="research" key="agentID" columns="agentID,skillTypeID,researchStartDate,pointsPerDay,remainderPoints">
        <row agentID="3009358" skillTypeID="11450" researchStartDate="2014-11-27 16:34:47" pointsPerDay="53.5346162146776" remainderPoints="53604.0634303189"/>
        <row agentID="3012617" skillTypeID="11453" researchStartDate="2015-01-31 21:31:02" pointsPerDay="37.0312810778599" remainderPoints="65.140031465693"/>
        <row agentID="3012662" skillTypeID="11452" researchStartDate="2015-01-31 05:38:13" pointsPerDay="53.3700894238397" remainderPoints="23.557288895885"/>
        <row agentID="3013460" skillTypeID="11449" researchStartDate="2015-01-31 21:11:04" pointsPerDay="5.8" remainderPoints="0"/>
    </rowset>
</result>
Result Data
Name Data type Description
agentID int [1] [2] Agent ID of research agent character is conducting research with.
skillTypeID int [1] Skill type being used to conduct research with this agent.
researchStartDate datetime Date and time when research started with this agent.
pointsPerDay decimal Number of research points generated per day.
remainderPoints decimal Number of research points remaining since last datacore purchase and/or pointsPerDay update. Mision research points are also added to this value.
Notes
  • remainderPoints can be negative if you’ve purchased datacores from an agent.
  • The formula for finding the current research points with an agent is: ( currentPoints = remainderPoints + pointsPerDay * days(currentTime - researchStartDate) )
Skill In Training

Retrieve character skill in training.

  • Path: /char/SkillInTraining.xml.aspx

  • Access mask: 131072

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which skill in training will be requested
Sample Response
<result>
    <currentTQTime offset="0">2015-12-08 00:27:51</currentTQTime>
    <trainingEndTime>2015-12-11 14:06:09</trainingEndTime>
    <trainingStartTime>2015-11-25 07:50:03</trainingStartTime>
    <trainingTypeID>3440</trainingTypeID>
    <trainingStartSP>181020</trainingStartSP>
    <trainingDestinationSP>1024000</trainingDestinationSP>
    <trainingToLevel>5</trainingToLevel>
    <skillInTraining>1</skillInTraining>
</result>
Result Data
currentTQTime datetime Current server time.
trainingEndTime datetime Time when current skill in training will end.
trainingStartTime datetime Time when current skill in training started.
trainingTypeID int [1] Type ID of skill being trained.
trainingStartSP int Number of skill points character had in this skill when training started.
trainingDestinationSP int Number of skill points this character will have when training completes.
trainingToLevel int Level this skill is being trained to.
skillInTraining boolean 1 if skill in training, 0 otherwise.
Notes
  • If the skill queue is empty, then only the “skillInTraining” field will be present.
  • Offset field on currentTQTime is unknown (always 0?).
Skill Queue

Retrieve character skill queue.

  • Path: /char/SkillQueue.xml.aspx

  • Access mask: 262144

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which skill queue will be requested
Sample Response
<result>
    <rowset name="skillqueue" key="queuePosition" columns="queuePosition,typeID,level,startSP,endSP,startTime,endTime">
        <row queuePosition="0" typeID="3440" level="5" startSP="181020" endSP="1024000" startTime="2015-11-25 07:50:03" endTime="2015-12-11 14:06:09"/>
        <row queuePosition="1" typeID="3427" level="5" startSP="380865" endSP="512000" startTime="2015-12-11 14:06:09" endTime="2015-12-14 02:48:48"/>
        <row queuePosition="2" typeID="3396" level="2" startSP="750" endSP="4243" startTime="2015-12-14 02:48:48" endTime="2015-12-14 04:25:49"/>
        <row queuePosition="3" typeID="3396" level="3" startSP="4243" endSP="24000" startTime="2015-12-14 04:25:49" endTime="2015-12-14 13:34:38"/>
        <row queuePosition="4" typeID="21718" level="4" startSP="24000" endSP="135765" startTime="2015-12-14 13:34:38" endTime="2015-12-16 17:19:13"/>
        <row queuePosition="5" typeID="3396" level="4" startSP="24000" endSP="135765" startTime="2015-12-16 17:19:13" endTime="2015-12-18 21:03:48"/>
        <row queuePosition="6" typeID="3396" level="5" startSP="135765" endSP="768000" startTime="2015-12-18 21:03:48" endTime="2015-12-31 01:45:53"/>
        <row queuePosition="7" typeID="13278" level="4" startSP="24000" endSP="135765" startTime="2015-12-31 01:45:53" endTime="2016-01-02 05:30:28"/>
        <row queuePosition="8" typeID="13278" level="5" startSP="135765" endSP="768000" startTime="2016-01-02 05:30:28" endTime="2016-01-14 10:12:33"/>
        <row queuePosition="9" typeID="21718" level="5" startSP="135765" endSP="768000" startTime="2016-01-14 10:12:33" endTime="2016-01-26 14:54:38"/>
        <row queuePosition="10" typeID="3398" level="5" startSP="362039" endSP="2048000" startTime="2016-01-26 14:54:38" endTime="2016-02-28 03:26:53"/>
        <row queuePosition="11" typeID="22578" level="5" startSP="181020" endSP="1024000" startTime="2016-02-28 03:26:53" endTime="2016-03-15 09:42:59"/>
        <row queuePosition="12" typeID="26260" level="5" startSP="135765" endSP="768000" startTime="2016-03-15 09:42:59" endTime="2016-03-27 14:25:04"/>
    </rowset>
</result>
Result Data
skillqueue rowset Rowset containing 1 row per skill in queue.
queuePosition int Zero based queue position.
typeID int [1] Type ID of the skill in training.
level int Level being trained on this skill.
startSP int Number of skill points character had in this skill when training started.
endSP int Number of skill points this character will have when training completes.
startTime datetime Time when training will start (or started), or null if the queue is paused.
endTime datetime Time when training will complete, or null if the queue is paused.
Notes
  • If the skill queue is paused, then resumed, then startSP may report the number of skill points in a skill at the beginning of the level being trained, instead of the number of skill points accumulated when the queue was paused (possible bug).
Standings (NPC)

Retrieve character standings.

  • Path: /char/Standings.xml.aspx

  • Access mask: 524288

  • Cache timer: 3 hours

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long Character ID for which standings will be requested
Sample Response
<result>
    <characterNPCStandings>
        <rowset name="agents" key="fromID" columns="fromID,fromName,standing">
            <row fromID="3009841" fromName="Pausent Ansin" standing="0.1" />
            <row fromID="3009846" fromName="Charie Octienne" standing="0.19" />
        </rowset>
        <rowset name="NPCCorporations" key="fromID" columns="fromID,fromName,standing">
            <row fromID="1000061" fromName="Freedom Extension" standing="0" />
            <row fromID="1000064" fromName="Carthum Conglomerate" standing="0.34" />
            <row fromID="1000094" fromName="TransStellar Shipping" standing="0.02" />
        </rowset>
        <rowset name="factions" key="fromID" columns="fromID,fromName,standing">
            <row fromID="500003" fromName="Amarr Empire" standing="-0.1" />
            <row fromID="500020" fromName="Serpentis" standing="-1" />
        </rowset>
    </characterNPCStandings>
</result>
Result Data
characterNPCStandings object Object containing one rowset each for standings from agents, NPC corporations, and factions.
agents rowset Rowset containing 1 row for each agent standing.
fromID int [1] ID of agent this character has standing with.
fromName string Name of agent this character has standing with.
standing float Current base standing with this entity.
NPCCorporations rowset Rowset containing 1 row for each NPC corporation standing.
fromID int [1] ID of NPC corporation this character has standing with.
fromName string Name of NPC corporation this character has standing with.
standing float Current base standing with this entity.
factions rowset Rowset containing 1 row for each faction standing.
fromID int [1] ID of faction this character has standing with.
fromName string Name of faction this character has standing with.
standing float Current base standing with this entity.
Notes
  • All standings are reported in the range [-10, 10].
  • Standings reported in this response do not take into account character skills like Connections or Diplomacy.
UpcomingCalendarEvents

Retrieve character upcoming calendar events.

  • Path: /char/UpcomingCalendarEvents.xml.aspx

  • Access mask: 1048576

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode string API verification code
    characterID long Character ID for which upcoming calendar events will be requested
<result>
    <rowset name="upcomingEvents" key="eventID" columns="eventID,ownerID,ownerName,eventDate,eventTitle,duration,importance,response,eventText">
        <row eventID="93264" ownerID="1" ownerName="" eventDate="2011-03-26 09:00:00" eventTitle="EVE Online Fanfest 2011" 
duration="0" importance="0" response="Undecided" eventText="Join us for &lt;a href=&quot;http://fanfest.eveonline.com/&quot;&gt;
EVE Online's Fanfest 2011&lt;/a&gt;!" />
    </rowset>
</result>
Result Data
upcomingEvents rowset Rowset containing 1 row per upcoming event.
eventID long Unique ID of event.
ownerID long ID of the character, corporation or alliance that created and owns the event.
ownerName string Name of character, corporation or alliance that created the event. This field is blank when ownerID is 1 (CCP).
eventDate datetime Date and time event will start.
eventTitle string Event title.
duration int Duration of the event in minutes. Minimum value is 0. Maximum value is 1440.
importance boolean 1 (TRUE) if the event is marked "important". 0 (FALSE) otherwise.
response string Character's response to event invitation. One of "Undecided", "Accepted", "Declined" or "Tentative".
eventText string Event description.
WalletTransactions

Retrieve character wallet transactions.

  • Path: /char/WalletTransactions.xml.aspx

  • Access mask: 4194304

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode string API verification code
    characterID long Character ID for which transactions will be requested
    accountKey int Account key of the wallet for which transactions will be returned. This is optional for character accounts which only have one wallet (accountKey = 1000). However, corporations have seven wallets with accountKeys numbered from 1000 through 1006. The Corporation - AccountBalance call can be used to map corporation wallet to appropriate accountKey.
    fromID long Optional upper bound for the transaction ID of returned transactions. This argument is normally used to walk to the transaction log backwards. See Journal Walking for more information.
    rowCount int Optional limit on number of rows to return. Default is 1000. Maximum is 2560.
<result>
    <rowset name="transactions" key="transactionID" columns="transactionDateTime,transactionID,quantity,typeName,typeID,price,clientID,clientName,stationID,stationName,transactionType,transactionFor,journalTransactionID,clientTypeID">
        <row transactionDateTime="2012-12-09 02:28:42" transactionID="2671179227" quantity="1000" typeName="Morphite" typeID="11399" price="8948.99" clientID="1058094831" clientName="Lucius Millcom" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6673802000" clientTypeID="1377"/>
        <row transactionDateTime="2012-12-09 02:19:22" transactionID="2671172618" quantity="200" typeName="Datacore - Mechanical Engineering" typeID="20424" price="98999.00" clientID="147627949" clientName="Ravenal" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6673771732" clientTypeID="1378"/>
        <row transactionDateTime="2012-12-09 02:19:07" transactionID="2671172459" quantity="85" typeName="Datacore - Electronic Engineering" typeID="20418" price="197800.00" clientID="1055100467" clientName="Potis" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6673771053" clientTypeID="1378"/>
        <row transactionDateTime="2012-12-09 02:18:53" transactionID="2671172316" quantity="115" typeName="Datacore - Electronic Engineering" typeID="20418" price="190000.00" clientID="431652996" clientName="FernLackey" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6673770366" clientTypeID="1377"/>
        <row transactionDateTime="2012-11-24 14:57:05" transactionID="2658450303" quantity="1000" typeName="Morphite" typeID="11399" price="7015.03" clientID="92355891" clientName="Veladra Dawn3" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6615037297" clientTypeID="1378"/>
        <row transactionDateTime="2012-11-24 14:26:21" transactionID="2658427478" quantity="40000" typeName="Fullerides" typeID="16679" price="2259.89" clientID="91840338" clientName="Tyche Chi" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6614929175" clientTypeID="1378"/>
        <row transactionDateTime="2012-11-24 14:25:55" transactionID="2658427144" quantity="50000" typeName="Crystalline Carbonide" typeID="16670" price="195.82" clientID="91840338" clientName="Tyche Chi" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6614926580" clientTypeID="1378"/>
        <row transactionDateTime="2012-11-22 18:55:43" transactionID="2657068085" quantity="200" typeName="Datacore - Mechanical Engineering" typeID="20424" price="98000.00" clientID="92406890" clientName="Hiragama MoriMorituri" stationID="60015140" stationName="Hek VII - Tribal Liberation Force Logistic Support" transactionType="buy" transactionFor="corporation" journalTransactionID="6608436244" clientTypeID="1377"/>
        <row transactionDateTime="2012-11-22 18:55:23" transactionID="2657067843" quantity="200" typeName="Datacore - Electronic Engineering" typeID="20418" price="199999.94" clientID="92428903" clientName="Cico Kain" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="buy" transactionFor="corporation" journalTransactionID="6608435254" clientTypeID="1377"/>
    </rowset>
</result>
Result Data
transactions rowset Rowset containing 1 row per journal transaction.
transactionDateTime datetime Date and time of transaction.
transactionID long Unique transaction ID.
quantity int Number of items bought or sold.
typeName string Name of item bought or sold.
typeID int [1] Type ID of item bought or sold.
price decimal Amount paid per unit.
clientID long [1] Counterparty character or corporation ID. For NPC corporations, see the appropriate cross reference.
clientName string Counterparty name.
stationID long [1] Station ID in which transaction took place.
stationName string Name of station in which transaction took place.
transactionType string Either "buy" or "sell" as appropriate.
transactionFor string Either "personal" or "corporate" as appropriate.
journalTransactionID long [1] Corresponding wallet journal refID.
clientTypeID long Unknown meaning/mapping.
Corporation
AccountBalance

Retrieve corporation account balances.

  • Path: /corp/AccountBalance.xml.aspx

  • Access mask: 1

  • Cache timer: 15 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    characterID long ID of accessing character (must have junior accountant access or higher in the character's corporation)
Sample Response
<eveapi version="2">
    <currentTime>2015-05-06 17:00:11</currentTime>
        <result>
            <rowset name="accounts" key="accountID" columns="accountID,accountKey,balance">
                <row accountID="40192049" accountKey="1000" balance="7140579224.62" />
                <row accountID="40211102" accountKey="1001" balance="0.00" />
                <row accountID="40211103" accountKey="1002" balance="0.00" />
                <row accountID="40211104" accountKey="1003" balance="0.00" />
                <row accountID="40211105" accountKey="1004" balance="0.00" />
                <row accountID="40211106" accountKey="1005" balance="0.00" />
                <row accountID="40211107" accountKey="1006" balance="0.00" />
            </rowset>
        </result>
    <cachedUntil>2015-05-06 17:15:11</cachedUntil>
</eveapi>
Result Data
Name Data type Description
accountID int ID of the account
accountKey int Account identifier
balance decimal Amount of ISK in this corporation wallet
Notes
  • accountKey: This is always 1000 for a character’s account balance as opposed to a corporation, where accountKey ranges from 1000 to 1006 for the seven corporate wallet divisions.
Bookmarks

Retrieve corporation Bookmarks.

  • Path: /corp/Bookmarks.xml.aspx

  • Access mask: 67108864

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="folders" key="folderID" columns="folderID,folderName,creatorID">
        <row folderID="0" folderName="" creatorID="0">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="12" creatorID="90000001" created="2015-07-08 21:34:14" itemID="60014689" typeID="57" locationID="30004971" x="0" y="0" z="0" memo="Home Station" note="Our base of residence" />
                <row bookmarkID="13" creatorID="90000001" created="2015-07-08 21:35:07" itemID="40314792" typeID="8" locationID="30004971" x="0" y="0" z="0" memo="Sun" note="" />
            </rowset>
        </row>
        <row folderID="1" folderName="A lovely empty folder" creatorID="90000001">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note" />
        </row>
        <row folderID="3" folderName="Sites" creatorID="90000001">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="16" creatorID="90000001" created="2015-07-08 21:37:12" itemID="40314827" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 2 ( Asteroid Belt )" note="" />
                <row bookmarkID="17" creatorID="90000001" created="2015-07-08 21:37:22" itemID="40314829" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 3 ( Asteroid Belt )" note="" />
                <row bookmarkID="18" creatorID="90000001" created="2015-07-08 21:37:29" itemID="40314794" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant I - Asteroid Belt 1 ( Asteroid Belt )" note="" />
                <row bookmarkID="19" creatorID="90000001" created="2015-07-08 21:37:39" itemID="40314811" typeID="15" locationID="30004971" x="0" y="0" z="0" memo="Duripant VII - Asteroid Belt 1 ( Asteroid Belt )" note="" />
            </rowset>
        </row>
        <row folderID="4" folderName="Random crap" creatorID="90000001">
            <rowset name="bookmarks" key="bookmarkID" columns="bookmarkID,creatorID,created,itemID,typeID,locationID,x,y,z,memo,note">
                <row bookmarkID="14" creatorID="90000001" created="2015-07-08 21:36:08" itemID="0" typeID="5" locationID="30004971" x="-373405654941.733" y="42718621667.0746" z="-1415023302173.46" memo="spot in Duripant solar system" note="" />
                <row bookmarkID="15" creatorID="90000001" created="2015-07-08 21:36:46" itemID="0" typeID="5" locationID="30004971" x="-373405652840.03" y="42718623812.4957" z="-1415023308332.07" memo="spot in Duripant solar system" note="" />
            </rowset>
        </row>
    </rowset>
</result>
Result Data
folders rowset Rowset containing 1 row per bookmark folder.
folderID int Unique folder ID.
folderName string Folder name.
creatorID long Folder creator ID. Can be character or corporation ID. Zero for the default bookmark folder.
bookmarks rowset Rowset container 1 row per bookmark in the current folder.
bookmarkID int Unique bookmark ID.
creatorID long Bookmark creator ID. Can be character or corporation ID.
created datetime Date and time when bookmark was created.
itemID long [1] Item ID of the item to which the bookmark refers, or 0 if the bookmark refers to a location.
typeID int [1] Type ID of the item to which the bookmark refers (even if the bookmark refers to a location instead of an item).
locationID long [1] Location ID of the solar sytem to which this bookmark refers.
x double X location of bookmark (relative to system sun) if this bookmark does not refer to an item.
y double Y location of bookmark (relative to system sun) if this bookmark does not refer to an item.
z double Z location of bookmark (relative to system sun) if this bookmark does not refer to an item.
memo string Bookmark description (owner specified).
note string Bookmark annotation (owner specified).
Notes
  • A bookmark will either refer to a specific item (e.g. station), or a location in space. Bookmarks which refer to an item will have a non-zero item ID. Otherwise, the bookmark will specify x, y and z coordinates of the location it refers to.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

ContactList

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

ContainerLog

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

ContractBids

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Contracts
CorporationSheet

Returns details for a specific corporation.

  • Path: /corp/CorporationSheet.xml.aspx

  • Access mask: 8

  • Cache timer: 5 hours 57 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    corporationID long ID of corporation

    or for limited access

    Argument Type Meaning
    corporationID long ID of corporation
Sample Response
<result>
    <corporationID>150212025</corporationID>
    <corporationName>Banana Republic</corporationName>
    <ticker>BR</ticker>
    <ceoID>150208955</ceoID>
    <ceoName>Mark Roled</ceoName>
    <stationID>60003469</stationID>
    <stationName>Jita IV - Caldari Business Tribunal Information Center</stationName>
    <description>Garth's testing corp of awesome sauce, win sauce as it were. In this
                    corp...&lt;br&gt;&lt;br&gt;IT HAPPENS ALL OVER</description>
    <url>some url</url>
    <allianceID>150430947</allianceID>
    <allianceName>The Dead Rabbits</allianceName>
    <factionID>0</factionID>
    <taxRate>93.7</taxRate>
    <memberCount>3</memberCount>
    <memberLimit>6300</memberLimit>
    <shares>1</shares>
    <rowset name="divisions" key="accountKey" columns="accountKey,description">
        <row accountKey="1000" description="Division 1"/>
        <row accountKey="1001" description="Division 2"/>
        <row accountKey="1002" description="Division 3"/>
        <row accountKey="1003" description="Division 4"/>
        <row accountKey="1004" description="Division 5"/>
        <row accountKey="1005" description="Division 6"/>
        <row accountKey="1006" description="Division 7"/>
    </rowset>
    <rowset name="walletDivisions" key="accountKey" columns="accountKey,description">
        <row accountKey="1000" description="Wallet Division 1"/>
        <row accountKey="1001" description="Wallet Division 2"/>
        <row accountKey="1002" description="Wallet Division 3"/>
        <row accountKey="1003" description="Wallet Division 4"/>
        <row accountKey="1004" description="Wallet Division 5"/>
        <row accountKey="1005" description="Wallet Division 6"/>
        <row accountKey="1006" description="Wallet Division 7"/>
    </rowset>
    <logo>
        <graphicID>0</graphicID>
        <shape1>448</shape1>
        <shape2>0</shape2>
        <shape3>418</shape3>
        <color1>681</color1>
        <color2>676</color2>
        <color3>0</color3>
    </logo>
</result>
No key

Public details of any corporation can be retrieved without an API key.

  • Parameters:

    Argument Type Meaning
    corporationID long ID of corporation

Notes. If you pass both corporationID and the other parameters to the API server it will return the non-member version of the information just like you had only passed it corporationID.

Sample Response
<result>
    <corporationID>150212025</corporationID>
    <corporationName>Banana Republic</corporationName>
    <ticker>BR</ticker>
    <ceoID>150208955</ceoID>
    <ceoName>Mark Roled</ceoName>
    <stationID>60003469</stationID>
    <stationName>Jita IV - Caldari Business Tribunal Information Center</stationName>
    <description>Garth's testing corp of awesome sauce, win sauce as it were. In this
                    corp...&lt;br&gt;&lt;br&gt;IT HAPPENS ALL OVER</description>
    <url>some url</url>
    <allianceID>150430947</allianceID>
    <allianceName>The Dead Rabbits</allianceName>
    <factionID>0</factionID>
    <taxRate>93.7</taxRate>
    <memberCount>3</memberCount>
    <memberLimit>6300</memberLimit>
    <shares>1</shares>
    <logo>
        <graphicID>0</graphicID>
        <shape1>448</shape1>
        <shape2>0</shape2>
        <shape3>418</shape3>
        <color1>681</color1>
        <color2>676</color2>
        <color3>0</color3>
    </logo>
</result>
Result Data
  • Corporation Sheet:

    Name Data Type Description
    corporationID long Corporation ID
    corporationName string Name of the Corporation.
    ticker string Corp Ticker, often used as a nickname.
    ceoID long Character ID of the CEO. This will be 1 for closed corps.
    ceoName string Character Name of the CEO. This will be 'EVE System' for closed corps.
    stationID long Station ID of the Corporation HQ.
    stationName string Station Name of the Corporation HQ.
    description string Corp Description Text
    url string Corporation URL.
    allianceID long Alliance ID, if any.
    allianceName string Alliance Name, if any. Is null if not present.
    factionID int Faction ID, if any.
    taxRate double Taxes on missions and ratting.
    memberCount int Current number of Members.
    memberLimit int Maximum number of members based on CEO corp Management skills.
    shares int Shares outstanding.
  • Corporation Divisions rowset:

    Name Data Type Description
    accountKey int Division key.
    description string Division (corp hangar) Label.
  • Corporation Wallet Divisions rowset:

    Name Data Type Description
    accountKey int Wallet ID.
    description string Wallet label.
  • Corporation Logo:

    Name Data Type Description
    graphicID int Corporation ID of the member corporation.
    shape1 int Shape ID #
    shape2 int Shape ID #
    shape3 int Shape ID #
    color1 int Color ID #
    color2 int Color ID #
    color3 int Color ID #

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

CustomsOffices

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Facilities

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

FacWarStats

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

KillMails

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Locations

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Medals

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

MemberMedals
MemberSecurity
  • Path: /corp/MemberSecurity.xml.aspx

  • Access mask: 512

  • Cache timer: 57 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
Sample Response
<result>
    <rowset name="members" key="characterID" columns="characterID,name">
        <row characterID="92630037" name="Dmitriy Hisoka">
            <rowset name="roles" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName">
                <row titleID="8" titleName="Shade"/>
                <row titleID="32" titleName="Director"/>
                <row titleID="64" titleName="Recruiter"/>
                <row titleID="512" titleName="Guardian"/>
            </rowset>
        </row>
        <row characterID="93146378" name="Titus Madullier">
            <rowset name="roles" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName">
                <row titleID="8" titleName="Shade"/>
                <row titleID="64" titleName="Recruiter"/>
            </rowset>
        </row>
        <row characterID="94027483" name="Bagger 28A">
            <rowset name="roles" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName"/>
        </row>
        <row characterID="94037045" name="katarina premium">
            <rowset name="roles" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName">
                <row titleID="8" titleName="Shade"/>
                <row titleID="128" titleName="#"/>
                <row titleID="16384" titleName="Of Tartaros"/>
            </rowset>
        </row>
        <row characterID="94136088" name="Sabrina Stubberup">
            <rowset name="roles" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName">
                <row roleID="1" roleName="roleDirector"/>
            </rowset>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName"/>
        </row>
        <row characterID="94359228" name="Conu Aii">
            <rowset name="roles" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRoles" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtHQ" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtBase" key="roleID" columns="roleID,roleName"/>
            <rowset name="rolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="grantableRolesAtOther" key="roleID" columns="roleID,roleName"/>
            <rowset name="titles" key="titleID" columns="titleID,titleName">
                <row titleID="8" titleName="Shade"/>
                <row titleID="16384" titleName="Of Tartaros"/>
            </rowset>
        </row>
    </rowset>
</result>
Result Data
Name Data type Description
characterID long ID of the member
name string Name of the member
Rowset roles
roleID int64 ID of the Role
roleName string Name of the Role
Rowset grantableRoles
roleID int64 ID of the Role
roleName string Name of the Role
Rowset rolesAtHQ
roleID int64 ID of the Role
roleName string Name of the Role
Rowset grantableRolesAtHQ
roleID int64 ID of the Role
roleName string Name of the Role
Rowset rolesAtBase
roleID int64 ID of the Role
roleName string Name of the Role
Rowset grantableRolesAtBase
roleID int64 ID of the Role
roleName string Name of the Role
Rowset rolesAtOther
roleID int64 ID of the Role
roleName string Name of the Role
Rowset grantableRolesAtOther
roleID int64 ID of the Role
roleName string Name of the Role
Rowset titles
titleID int32 ID of the Title
titleName string Name of the Title

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

MemberSecurityLog
MemberTracking
  • Path: /corp/MemberTracking.xml.aspx

  • Access mask: 2048 (MemberTrackingLimited) or 33554432 (MemberTrackingExtended)

  • Cache timer: 5 hours 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode char API verification code
    extended bool 0 (False, default) - return the limited member tracking
    1 (True) - return the extended member tracking
Sample Response
(Limited response)
<eveapi version="2">
    <currentTime>2016-01-10 19:02:13</currentTime>
    <result>
        <rowset name="members" key="characterID" columns="characterID,name,startDateTime,baseID,base,title">
            <row characterID="91808937" name="Brasshauler" startDateTime="2015-11-08 17:45:00" baseID="0" base="" title=""/>
            <row characterID="92279832" name="Tiberious Udan" startDateTime="2015-07-28 16:03:00" baseID="0" base="" title=""/>
            <row characterID="91701964" name="Pi-eter Panala" startDateTime="2014-08-20 20:33:00" baseID="0" base="" title=""/>
            <row characterID="94037045" name="katarina premium" startDateTime="2014-09-15 19:49:00" baseID="0" base="" title="CEO"/>
            <row characterID="94090434" name="Peter Stubberup" startDateTime="2014-08-30 08:16:00" baseID="0" base="" title=""/>
            <row characterID="94136088" name="Sabrina Stubberup" startDateTime="2015-11-26 18:54:00" baseID="0" base="" title=""/>
            <row characterID="93925088" name="Lucky Driver" startDateTime="2015-11-23 16:58:00" baseID="0" base="" title=""/>
            <row characterID="92630037" name="Dmitriy Hisoka" startDateTime="2015-07-10 18:33:00" baseID="0" base="" title=""/>
            <row characterID="145647343" name="Name Brand" startDateTime="2015-06-27 19:14:00" baseID="0" base="" title=""/>
            <row characterID="95570934" name="Laura Viatrix" startDateTime="2015-10-21 16:43:00" baseID="0" base="" title=""/>
            <row characterID="294023254" name="Strangey" startDateTime="2015-11-23 22:26:00" baseID="0" base="" title=""/>
            <row characterID="1094687436" name="Erygra Gerive" startDateTime="2015-07-31 15:16:00" baseID="0" base="" title=""/>
            <row characterID="1358477813" name="Golden nugget" startDateTime="2015-09-23 20:29:00" baseID="0" base="" title=""/>
            <row characterID="1564716468" name="syndrie sexton" startDateTime="2015-09-23 20:29:00" baseID="0" base="" title=""/>
            <row characterID="519668251" name="Astral Queen" startDateTime="2015-10-14 20:59:00" baseID="0" base="" title=""/>
            <row characterID="153550529" name="hak 13" startDateTime="2014-11-12 18:36:00" baseID="0" base="" title=""/>
        </rowset>
    </result>
    <cachedUntil>2016-01-10 23:23:18</cachedUntil>
</eveapi>
Sample Response
(Extended response)
<result>
    <rowset name="members" key="characterID" columns="characterID,name,startDateTime,baseID,base,title,logonDateTime,logoffDateTime,locationID,location,shipTypeID,shipType,roles,grantableRoles">
        <row characterID="91808937" name="Brasshauler" startDateTime="2015-11-08 17:45:00" baseID="0" base="" title="" logonDateTime="2016-01-10 14:39:16" logoffDateTime="2016-01-10 14:36:43" locationID="61000473" location="VYO-68 VII - Space Port" shipTypeID="655" shipType="Epithal" roles="3379903038751744" grantableRoles="0"/>
        <row characterID="92279832" name="Tiberious Udan" startDateTime="2015-07-28 16:03:00" baseID="0" base="" title="" logonDateTime="2016-01-10 16:49:22" logoffDateTime="2016-01-10 16:52:45" locationID="60003916" location="Sobaseki VII - Caldari Navy Logistic Support" shipTypeID="670" shipType="Capsule" roles="3379903038751744" grantableRoles="0"/>
        <row characterID="91701964" name="Pi-eter Panala" startDateTime="2014-08-20 20:33:00" baseID="0" base="" title="" logonDateTime="2016-01-09 18:08:09" logoffDateTime="2016-01-09 18:30:53" locationID="61000473" location="VYO-68 VII - Space Port" shipTypeID="17478" shipType="Retriever" roles="147495091114607616" grantableRoles="0"/>
        <row characterID="94037045" name="katarina premium" startDateTime="2014-09-15 19:49:00" baseID="0" base="" title="CEO" logonDateTime="2016-01-10 11:13:17" logoffDateTime="2016-01-10 10:59:58" locationID="61000046" location="L5D-ZL VI - The Gyde" shipTypeID="11176" shipType="Crow" roles="9223372036854775807" grantableRoles="0"/>
        <row characterID="94090434" name="Peter Stubberup" startDateTime="2014-08-30 08:16:00" baseID="0" base="" title="" logonDateTime="2016-01-10 11:26:14" logoffDateTime="2016-01-04 20:06:50" locationID="61000473" location="VYO-68 VII - Space Port" shipTypeID="2161" shipType="Crucifier" roles="9223372036854775807" grantableRoles="0"/>
        <row characterID="94136088" name="Sabrina Stubberup" startDateTime="2015-11-26 18:54:00" baseID="0" base="" title="" logonDateTime="2016-01-10 11:14:50" logoffDateTime="2016-01-09 16:44:40" locationID="61000473" location="VYO-68 VII - Space Port" shipTypeID="28844" shipType="Rhea" roles="9223372036854775807" grantableRoles="0"/>
        <row characterID="93925088" name="Lucky Driver" startDateTime="2015-11-23 16:58:00" baseID="0" base="" title="" logonDateTime="2015-11-29 10:51:38" logoffDateTime="2015-11-29 10:52:48" locationID="61000046" location="L5D-ZL VI - The Gyde" shipTypeID="-1" shipType="Unknown Type" roles="0" grantableRoles="0"/>
        <row characterID="92630037" name="Dmitriy Hisoka" startDateTime="2015-07-10 18:33:00" baseID="0" base="" title="" logonDateTime="2016-01-10 09:12:59" logoffDateTime="2016-01-10 10:03:47" locationID="61000073" location="EIMJ-M I - Insane Asylum II" shipTypeID="17738" shipType="Machariel" roles="9223372036854775807" grantableRoles="0"/>
        <row characterID="145647343" name="Name Brand" startDateTime="2015-06-27 19:14:00" baseID="0" base="" title="" logonDateTime="2015-11-18 04:56:20" logoffDateTime="2015-11-18 04:57:30" locationID="60008371" location="Ebtesham V - Amarr Navy Assembly Plant" shipTypeID="-1" shipType="Unknown Type" roles="0" grantableRoles="0"/>
        <row characterID="95570934" name="Laura Viatrix" startDateTime="2015-10-21 16:43:00" baseID="0" base="" title="" logonDateTime="2015-12-25 11:31:27" logoffDateTime="2015-12-25 12:02:44" locationID="61000021" location="Y-CWQY VI - HAM'S HOUSE of LOVE" shipTypeID="670" shipType="Capsule" roles="1152360787902209920" grantableRoles="0"/>
        <row characterID="294023254" name="Strangey" startDateTime="2015-11-23 22:26:00" baseID="0" base="" title="" logonDateTime="2016-01-10 09:13:05" logoffDateTime="2016-01-10 09:42:56" locationID="61000045" location="1-NJLK II - Crazy House of HAMS" shipTypeID="11186" shipType="Malediction" roles="0" grantableRoles="0"/>
        <row characterID="1094687436" name="Erygra Gerive" startDateTime="2015-07-31 15:16:00" baseID="0" base="" title="" logonDateTime="2016-01-10 00:20:48" logoffDateTime="2016-01-10 00:22:02" locationID="60003760" location="Jita IV - Moon 4 - Caldari Navy Assembly Plant" shipTypeID="32880" shipType="Venture" roles="3379903038751744" grantableRoles="0"/>
        <row characterID="1358477813" name="Golden nugget" startDateTime="2015-09-23 20:29:00" baseID="0" base="" title="" logonDateTime="2016-01-10 15:56:38" logoffDateTime="2016-01-10 16:30:34" locationID="61000473" location="VYO-68 VII - Space Port" shipTypeID="11993" shipType="Cerberus" roles="3379903038751744" grantableRoles="0"/>
        <row characterID="1564716468" name="syndrie sexton" startDateTime="2015-09-23 20:29:00" baseID="0" base="" title="" logonDateTime="2016-01-10 15:27:09" logoffDateTime="2016-01-10 16:30:41" locationID="61000046" location="L5D-ZL VI - The Gyde" shipTypeID="34562" shipType="Svipul" roles="3379903038751872" grantableRoles="0"/>
        <row characterID="519668251" name="Astral Queen" startDateTime="2015-10-14 20:59:00" baseID="0" base="" title="" logonDateTime="2016-01-01 09:22:56" logoffDateTime="2016-01-01 09:41:22" locationID="61000046" location="L5D-ZL VI - The Gyde" shipTypeID="670" shipType="Capsule" roles="3379903038751744" grantableRoles="0"/>
        <row characterID="153550529" name="hak 13" startDateTime="2014-11-12 18:36:00" baseID="0" base="" title="" logonDateTime="2014-11-20 15:24:18" logoffDateTime="2014-11-20 15:37:32" locationID="61000956" location="VK6-EZ VII - Muquifo do Brazuca" shipTypeID="-1" shipType="Unknown Type" roles="0" grantableRoles="0"/>
    </rowset>
</result>
Result Data
(Limited response)
Name Data type Description
characterID long ID of the member
name string Name of the member
startDateTime datetime join date of the member
baseID long stationID where the member has its base
base string station name where the member has its base
title string titles of the member
Result Data
(Extended response)
Name Data type Description
characterID long ID of the member
name string Name of the member
startDateTime datetime join date of the member
baseID long stationID where the member has its base
base string station name where the member has its base
title string titles of the member
logonDateTime datetime last logon time of the member
logoffDateTime datetime last logoff time of the member
locationID long the locationID of the member (station or solarsystem)
location string the location name of the member (station or solarsystem)
shipTypeID int the members current ships's typeID
shipType string the members current ships's type name
roles long the roles a member has
grantableRoles long the grantable roles a member has

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

OutpostList

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

OutpostServiceDetail

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Shareholders

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Standings

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Titles
WalletTransactions

Retrieve corporation wallet transactions.

  • Path: /corp/WalletTransactions.xml.aspx

  • Access mask: 2097152

  • Cache timer: 30 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID
    vCode string API verification code
    accountKey int Account key of the wallet for which transactions will be returned. Corporations have seven wallets numbered from 1000 through 1006. The Corporation - AccountBalance call can be used to map corporation wallet to appropriate accountKey.
    fromID long Optional upper bound for the transaction ID of returned transactions. This argument is normally used to walk to the transaction log backwards. See Journal Walking for more information.
    rowCount int Optional limit on number of rows to return. Default is 1000. Maximum is 2560.
Sample Response
<result>
    <rowset name="transactions" key="transactionID" columns="transactionDateTime,transactionID,quantity,typeName,typeID,price,clientID,clientName,characterID,characterName,stationID,stationName,transactionType,transactionFor,journalTransactionID">
        <row transactionDateTime="2012-11-20 00:44:39" transactionID="2655168130" quantity="1" typeName="800mm Heavy Carbine Repeating Howitzer I" typeID="9329" price="625000.00" clientID="1112594762" clientName="Smedoc" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6599206786" />
        <row transactionDateTime="2012-11-21 17:13:18" transactionID="2656299632" quantity="1" typeName="Large Rudimentary Concussion Bomb I" typeID="9668" price="1075000.00" clientID="92561495" clientName="Sky Blazed" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6604731054" />
        <row transactionDateTime="2012-11-21 19:38:04" transactionID="2656400048" quantity="5" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="91750778" clientName="Juno Libertas" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605221409" />
        <row transactionDateTime="2012-11-21 19:44:32" transactionID="2656404846" quantity="10" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="91339209" clientName="Kai Cross" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605244403" />
        <row transactionDateTime="2012-11-21 19:46:35" transactionID="2656406483" quantity="5" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="1181049174" clientName="Kagerns" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605252986" />
        <row transactionDateTime="2012-11-21 20:14:10" transactionID="2656425787" quantity="6" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="608953610" clientName="PUNKYY" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605349273" />
        <row transactionDateTime="2012-11-21 20:35:56" transactionID="2656440644" quantity="5" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="1508173332" clientName="Hasentaenzer" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605426606" />
        <row transactionDateTime="2012-11-21 20:40:54" transactionID="2656444190" quantity="2" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="1337140157" clientName="Calcius Revolver" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605444557" />
        <row transactionDateTime="2012-11-21 21:01:35" transactionID="2656458693" quantity="2" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="1893909101" clientName="Constapatris" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605516695" />
        <row transactionDateTime="2012-11-21 22:11:47" transactionID="2656506286" quantity="6" typeName="Hobgoblin II" typeID="2456" price="475000.00" clientID="92328042" clientName="Haruchai Ardenol" characterID="90251444" characterName="trek apace" stationID="60005686" stationName="Hek VIII - Moon 12 - Boundless Creation Factory" transactionType="sell" transactionFor="corporation" journalTransactionID="6605751393" />
    </rowset>
</result>
Result Data
transactions rowset Rowset containing 1 row per journal transaction.
transactionDateTime datetime Date and time of transaction.
transactionID long Unique tranaction ID.
quantity int Number of items bought or sold.
typeName string Name of item bought or sold.
typeID int [1] Type ID of item bought or sold.
price decimal Amount paid per unit.
clientID long [1] Counterparty character or corporation ID. For NPC corporations, see the appropriate cross reference.
clientName string Counterparty name.
characterID long Character ID of character which represented corporation in transaction.
characterName string Character name of character which represented corporation in transaction.
stationID long [1] Station ID in which transaction took place.
stationName string Name of station in which transaction took place.
transactionType string Either "buy" or "sell" as appropriate.
transactionFor string Either "personal" or "corporate" as appropriate.
journalTransactionID long [1] Corresponding wallet journal refID.
Eve
AllianceList

Returns active Alliances in New Eden and their member Corporations.

  • Path: /eve/AllianceList.xml.aspx

  • Access mask: None

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    version Int Optional parameter
    0 _(default)_ - return a list of alliances and member corporations
    1 - return a list of alliances only
Sample Response
(Alliance & Member Response)
<eveapi version="2">
    <currentTime>2015-11-23 07:59:20</currentTime>
    <result>
        <rowset name="alliances" key="allianceID" columns="name,shortName,allianceID,executorCorpID,memberCount,startDate">
            <row name="Goonswarm Federation" shortName="CONDI" allianceID="1354830081" executorCorpID="1344654522" memberCount="16042" startDate="2010-06-01 05:36:00">
                <rowset name="memberCorporations" key="corporationID" columns="corporationID,startDate">
                    <row corporationID="98002506" startDate="2014-11-12 22:20:00"/>
                    <row corporationID="98007214" startDate="2012-01-28 05:36:00"/>
                    <row corporationID="98007645" startDate="2015-10-28 12:25:00"/>
                    <row corporationID="98008630" startDate="2010-12-20 19:40:00"/>
                </rowset>
            </row>
            <row name="SpaceMonkey's Alliance" shortName="SMA" allianceID="679584932" executorCorpID="669646544" memberCount="5082" startDate="2009-02-14 06:55:00">
                <rowset name="memberCorporations" key="corporationID" columns="corporationID,startDate">
                    <row corporationID="98029473" startDate="2015-04-21 21:05:00"/>
                    <row corporationID="98036267" startDate="2015-08-03 04:15:00"/>
                    <row corporationID="869043665" startDate="2015-10-14 23:30:00"/>
                    <row corporationID="98051175" startDate="2014-04-06 17:10:00"/>
                </rowset>
            </row>
        </rowset>
    </result>
    <cachedUntil>2015-11-23 09:03:42</cachedUntil>
</eveapi>
(Alliance Only Response)
<result>
    <rowset name="alliances" key="allianceID" columns="name,shortName,allianceID,executorCorpID,memberCount,startDate">
        <row name="Goonswarm Federation" shortName="CONDI" allianceID="1354830081" executorCorpID="1344654522" memberCount="16043" startDate="2010-06-01 05:36:00"/>
        <row name="SpaceMonkey's Alliance" shortName="SMA" allianceID="679584932" executorCorpID="669646544" memberCount="5082" startDate="2009-02-14 06:55:00"/>
        <row name="FACTION WARFARE ALLIANCE" shortName="FWALL" allianceID="99004126" executorCorpID="98261065" memberCount="4663" startDate="2014-02-07 23:55:48"/>
        <row name="Fidelas Constans" shortName="FCON" allianceID="1006830534" executorCorpID="1371955702" memberCount="4401" startDate="2009-01-30 18:07:00"/>
        <row name="Test Alliance Please Ignore" shortName="TEST" allianceID="498125261" executorCorpID="416584095" memberCount="4398" startDate="2010-05-12 21:05:00"/>
        <row name="RvB - BLUE Republic" shortName="RVB-B" allianceID="99000652" executorCorpID="98037851" memberCount="3774" startDate="2011-05-02 14:18:00"/>
        <row name="RAZOR Alliance" shortName="-RZR-" allianceID="741557221" executorCorpID="147823541" memberCount="3524" startDate="2005-09-23 05:24:00"/>
        <row name="Alternate Allegiance" shortName="ALTS" allianceID="99003805" executorCorpID="515709294" memberCount="3345" startDate="2013-11-06 03:49:27"/>
        <row name="The Bastion" shortName="BASTN" allianceID="99004425" executorCorpID="98203764" memberCount="3114" startDate="2014-05-06 21:37:13"/>
        <row name="RUST415" shortName="RUST" allianceID="99003212" executorCorpID="98160985" memberCount="2742" startDate="2013-05-06 18:21:21"/>
    </rowset>
</result>
Result Data
Name Data type Description
Rowset alliances
name string Name of the alliance.
shortName string Alliance ticker.
allianceID int ID number of the alliance.
executorCorpID int Corporation ID of the executor corporation.
memberCount int Number of pilots in the alliance.
startDate datetime Date the alliance was founded.
Rowset memberCorporations
corporationID int Corporation ID of the member corporation.
startDate datetime Date the corporation joined the alliance.
CharacterAffiliation
  • Path: /eve/CharacterAffiliation.xml.aspx

  • Access mask: None

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    ids String Comma-separated list of characterIDs
Sample Response
<result>
    <rowset name="characters" key="characterID" columns="characterID,characterName,corporationID,corporationName,allianceID,allianceName,factionID,factionName">
        <row characterID="95985338" characterName="Ito Saika" corporationID="98427101" corporationName="Saika Garden" allianceID="0" allianceName="" factionID="0" factionName="" />
        <row characterID="95991232" characterName="Shion Saika" corporationID="98427101" corporationName="Saika Garden" allianceID="0" allianceName="" factionID="0" factionName="" />
        <row characterID="96002441" characterName="Zetto Saika" corporationID="1000179" corporationName="24th Imperial Crusade" allianceID="0" allianceName="" factionID="500003" factionName="Amarr Empire" />
    </rowset>
</result>
Result Data
Name Data type Description
Rowset characters
characterID int ID number of the character.
characterName string Name of the character.
corporationID int ID number of the character's current corporation.
corporationName string Name of the character's current corporation.
allianceID int ID number of the character's current alliance.
allianceName string Name of the character's current alliance.
factionID int ID number of the character's current faction.
factionName string Name of the character's current faction.
CharacterID
  • Path: /eve/CharacterID.xml.aspx

  • Access mask: None

  • Cache timer: 720 minutes

  • Parameters:

    Argument Type Meaning
    names String Comma-separated list of character names to query.
    Character names are not case-sensitive.
Sample Response
<result>
    <rowset name="characters" key="characterID" columns="name,characterID">
    <row name="Ito Saika" characterID="95985338" />
    <row name="Shion Saika" characterID="95991232" />
    </rowset>
</result>
Result Data
Name Data type Description
Rowset characters
name string Character name.
characterID int Character ID.
CharacterInfo

Returns information about the character. Has three data sets it can return depending on access mask.

  • Path: /eve/CharacterInfo.xml.aspx

  • Access mask: 0 or 8388608 or 16777216

  • Cache timer: 60 minutes

  • Parameters:

    Argument Type Meaning
    keyID long API key ID (Optional)
    vCode char(64) API verification code (Optional)
    characterID String ID of character
Sample Response (access mask 0)
<eveapi version="2">
  <currentTime>2015-11-29 01:26:54</currentTime>
  <result>
    <characterID>2019641225</characterID>
    <characterName>Consumata</characterName>
    <race>Caldari</race>
    <bloodlineID>2</bloodlineID>
    <bloodline>Civire</bloodline>
    <ancestryID>8</ancestryID>
    <ancestry>Mercs</ancestry>
    <corporationID>671798908</corporationID>
    <corporation>Strange Energy</corporation>
    <corporationDate>2014-12-22 14:36:00</corporationDate>
    <allianceID>99004425</allianceID>
    <alliance>The Bastion</alliance>
    <allianceDate>2014-05-23 02:07:00</allianceDate>
    <securityStatus>1.80713623452395</securityStatus>
    <rowset name="employmentHistory" key="recordID" columns="recordID,corporationID,corporationName,startDate">
      <row recordID="36393053" corporationID="671798908" corporationName="Strange Energy" startDate="2014-12-22 14:36:00" />
      <row recordID="10452736" corporationID="1000167" corporationName="State War Academy" startDate="2008-12-20 13:22:00" />
    </rowset>
  </result>
  <cachedUntil>2015-11-29 01:40:22</cachedUntil>
</eveapi>
Sample Response (access mask 8388608)
<eveapi version="2">
  <currentTime>2015-11-29 01:26:54</currentTime>
  <result>
    <characterID>2019641225</characterID>
    <characterName>Consumata</characterName>
    <race>Caldari</race>
    <bloodlineID>2</bloodlineID>
    <bloodline>Civire</bloodline>
    <ancestryID>8</ancestryID>
    <ancestry>Mercs</ancestry>
    <skillPoints>13013</skillPoints>
    <nextTrainingEnds>2015-07-22 05:33:56</nextTrainingEnds>
    <shipName>Batu</shipName>
    <shipTypeID>601</shipTypeID>
    <shipTypeName>Ibis</shipTypeName>
    <corporationID>671798908</corporationID>
    <corporation>Strange Energy</corporation>
    <corporationDate>2014-12-22 14:36:00</corporationDate>
    <allianceID>99004425</allianceID>
    <alliance>The Bastion</alliance>
    <allianceDate>2014-05-23 02:07:00</allianceDate>
    <securityStatus>1.80713623452395</securityStatus>
    <rowset name="employmentHistory" key="recordID" columns="recordID,corporationID,corporationName,startDate">
      <row recordID="36393053" corporationID="671798908" corporationName="Strange Energy" startDate="2014-12-22 14:36:00" />
      <row recordID="10452736" corporationID="1000167" corporationName="State War Academy" startDate="2008-12-20 13:22:00" />
    </rowset>
  </result>
  <cachedUntil>2015-11-29 01:40:22</cachedUntil>
</eveapi>
Sample Response (access mask 16777216)
<result>
    <characterID>2019641225</characterID>
    <characterName>Consumata</characterName>
    <race>Caldari</race>
    <bloodlineID>2</bloodlineID>
    <bloodline>Civire</bloodline>
    <ancestryID>8</ancestryID>
    <ancestry>Mercs</ancestry>
    <accountBalance>2488.81</accountBalance>
    <skillPoints>13013</skillPoints>
    <nextTrainingEnds>2015-07-22 05:33:56</nextTrainingEnds>
    <shipName>Batu</shipName>
    <shipTypeID>601</shipTypeID>
    <shipTypeName>Ibis</shipTypeName>
    <corporationID>671798908</corporationID>
    <corporation>Strange Energy</corporation>
    <corporationDate>2014-12-22 14:36:00</corporationDate>
    <allianceID>99004425</allianceID>
    <alliance>The Bastion</alliance>
    <allianceDate>2014-05-23 02:07:00</allianceDate>
    <lastKnownLocation>Obe</lastKnownLocation>
    <securityStatus>1.80713623452395</securityStatus>
    <rowset name="employmentHistory" key="recordID" columns="recordID,corporationID,corporationName,startDate">
        <row recordID="36393053" corporationID="671798908" corporationName="Strange Energy" startDate="2014-12-22 14:36:00" />
        <row recordID="10452736" corporationID="1000167" corporationName="State War Academy" startDate="2008-12-20 13:22:00" />
    </rowset>
</result>
Result Data
Name Data type Description
characterID long Character ID
characterName string Character name
race string Character's race
bloodlineID long ID for character's bloodline
bloodline string Character's bloodline
ancestryID long ID for character's ancestry
ancestry string Character's ancestry
accountBalance decimal Amount of ISK the character has (only for access mask 16777216)
skillPoints long Amount of skill points the character has (only for access masks 8388608 and 16777216)
nextTrainingEnds datetime Time when the current skill finishes training (only for access masks 8388608 and 16777216)
Note: Author could not verify this.
shipName string Name of the ship the character is in (only for access masks 8388608 and 16777216)
shipTypeID long typeID of the ship the character is in (only for access masks 8388608 and 16777216)
shipTypeName string typeName of the ship the character is in (only for access masks 8388608 and 16777216)
corporationID long ID of character's corporation
corporation string Character's corporation
corporationDate datetime Time and date when the character joined the corporation
allianceID long ID of character's alliance
alliance string Character's alliance
allianceDate datetime Time and date when the character became part of the alliance
lastKnownLocation string Name of the character's current location (only for access mask 16777216)
securityStatus decimal Character's security status
Rowset employmentHistory
recordID long Seems to be a unique number for that specific change in character/corporation affiliation.
Note: Author could not verify this.
corporationID long ID of the corporation that the character joined
corporationName string Name of the corporation
startDate datetime Time and date when the character joined this specific corporation
Notes
  • Provide keyID and vCode to get access to the private data sets for the characterID.
  • If the keyID and vCode does not give access to either of the two private data sets the public data set is returned instead.
  • In addition to the public data set, access mask 8388608 gives information about skill points, skill training ending, and what ship type the character is sitting in.
  • In addition to the first private data set, access mask 16777216 gives information about wallet status and last known location.
References
  • Devblog from 2010 about the introduction of this XML API endpoint in Tyrannis 1.2.
  • Thread in EVE-O Tech Lab subforum about confusing use of bloodline/bloodLine between /EVE/CharacterInfo and /Char/CharacterSheet.
CharacterName

Returns the names for a comma-separated list of owner IDs for characters, corporations, alliances, and so on.

  • Path: /eve/CharacterName.xml.aspx

  • Access mask: None

  • Cache timer: 30 days

  • Parameters:

    Argument Type Meaning
    ids String Comma-separated list of ownerIDs to query.
    IDs can be of characters, corporations, alliances, solar systems, and so on.
    Note that typeIDs have their own API call.
Sample Response
<result>
    <rowset name="characters" key="characterID" columns="name,characterID">
        <row name="Backdoor Bandit" characterID="696271586" />
        <row name="EVE University" characterID="917701062" />
        <row name="Ivy League" characterID="937872513" />
        <row name="Jita" characterID="30000142" />
    </rowset>
</result>
Result Data
Name Data type Description
Rowset characters
name string Name of character/corporation/alliance and so on
characterID long OwnerID of character/corporation/alliance and so on
References
  • Post on the old EVE-O forums regarding changes done to the API endpoint. Please note that it is old and some information is no longer valid (typeIDs where later split to another API endpoint, see below.).
  • Post on the new EVE-O forums regarding typeID no longer being served from /EVE/CharacterName.
ConquerableStationList

Returns a list of conquerable stations in New Eden.

  • Path: /eve/ConquerableStationList.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="outposts" key="stationID" columns="stationID,stationName,stationTypeID,solarSystemID,corporationID,corporationName,x,y,z">
        <row stationID="61001046" stationName="W-XY4J X - HAKOHELITO" stationTypeID="21646" solarSystemID="30001105" corporationID="98315839" corporationName="Intergalactic Conquest and Development" x="394820444160" y="-18220769280" z="-6131542302720"/>
        <row stationID="61001047" stationName="7MD-S1 XI - Roland's Place" stationTypeID="21645" solarSystemID="30001232" corporationID="98132485" corporationName="Bailiffs" x="-2950319185920" y="-500139909120" z="2101918064640"/>
        <row stationID="61001048" stationName="E9KD-N IX - RIP Vile Rat" stationTypeID="21645" solarSystemID="30003694" corporationID="418183520" corporationName="EXPCS Corp" x="1474703155200" y="-198735421440" z="450142740480"/>
        <row stationID="61001049" stationName="27-HP0 VI - A punch in the face" stationTypeID="21644" solarSystemID="30000832" corporationID="98384608" corporationName="SN Holdings" x="785816985600" y="4615004160" z="-576230154240"/>
        <row stationID="61001050" stationName="L-5JCJ VIII - RUSTARBASE" stationTypeID="21645" solarSystemID="30002142" corporationID="98160985" corporationName="LUX AETERNA INT" x="-2645266391040" y="533918883840" z="-6264785510400"/>
        <row stationID="61001051" stationName="Y5-E1U VII - The Dibby Parlour" stationTypeID="21646" solarSystemID="30000729" corporationID="98415166" corporationName="Zero.Four Holdings" x="-1276127109120" y="32335749120" z="4544564551680"/>
        <row stationID="61001052" stationName="F2-NXA II - The Valley of Eternal Night" stationTypeID="21645" solarSystemID="30000695" corporationID="98025393" corporationName="Fleet of the Eternal Night" x="-47411404800" y="7704944640" z="139655454720"/>
        <row stationID="61001053" stationName="3-SFWG V - DRASY Jobcenter" stationTypeID="21644" solarSystemID="30001212" corporationID="98278570" corporationName="Das Raumfahrer Syndikat" x="922842685440" y="85610864640" z="-2470096035840"/>
        <row stationID="61001054" stationName="UQ-PWD III - Home of the Demon Clown Legion" stationTypeID="21646" solarSystemID="30001208" corporationID="261632485" corporationName="Fink Operations" x="-49921351680" y="4879687680" z="-123196661760"/>
    </rowset>
</result>
Result Data
Name Data type Description
stationID int The unique identification number of the station.
stationName string The name of the station set by the occupying corporation
stationTypeID int The typeID of the station.
solarSystemID int The Solar System ID where the station is anchored.
corporationID int The corporationID of the occupying corporation.
corporationName string The name of the occupying corporation.
x long x, y and z make up the coordinates in the solar system of the station
y long x, y and z make up the coordinates in the solar system of the station
z long x, y and z make up the coordinates in the solar system of the station
ErrorList

Returns a list of error codes and text that the API may return.

  • Path: /eve/ErrorList.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="errors" key="errorCode" columns="errorCode,errorText">
        <row errorCode="100" errorText="Expected before ref/trans ID = 0: wallet not previously loaded."/>
        <row errorCode="101" errorText="Wallet exhausted: retry after {0}."/>
        <row errorCode="102" errorText="Expected before ref/trans ID [{0}] but supplied [{1}]: wallet previously loaded."/>
        <row errorCode="103" errorText="Already returned one week of data: retry after {0}."/>
        <row errorCode="105" errorText="Invalid characterID."/>
        <row errorCode="106" errorText="Must provide userID or keyID parameter for authentication."/>
        <row errorCode="107" errorText="Invalid beforeRefID provided."/>
        <row errorCode="108" errorText="Invalid accountKey provided."/>
        <row errorCode="109" errorText="Invalid accountKey: must be in the range 1000 to 1006 for EVE wallets or 10000 for the DUST wallet."/>
        <row errorCode="110" errorText="Invalid beforeTransID provided."/>
        <row errorCode="111" errorText="'{0}' is not a valid integer."/>
        <row errorCode="112" errorText="Version mismatch."/>
        <row errorCode="113" errorText="Version escalation is not allowed at this time."/>
        <row errorCode="114" errorText="Invalid itemID provided."/>
        <row errorCode="115" errorText="Assets already downloaded: retry after {0}."/>
        <row errorCode="116" errorText="Industry jobs already downloaded: retry after {0}."/>
        <row errorCode="117" errorText="Market orders already downloaded: retry after {0}."/>
    </rowset>
</result>
Result Data
Name Data type Description
errorCode int The ID of the error code.
errorText string Textual description of the error.
Error Code Types
  • 1xx - User Input
  • 2xx - Authentication
  • 5xx - Server
  • 9xx - Miscellaneous
RefTypes

Returns a list of transaction types used in the Corporation - WalletJournal & Character - WalletJournal.

  • Path: /eve/RefTypes.xml.aspx
  • Access mask: none
  • Cache timer: 24 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="refTypes" key="refTypeID" columns="refTypeID,refTypeName">
        <row refTypeID="0" refTypeName="Undefined"/>
        <row refTypeID="1" refTypeName="Player Trading"/>
        <row refTypeID="2" refTypeName="Market Transaction"/>
        <row refTypeID="3" refTypeName="GM Cash Transfer"/>
        <row refTypeID="4" refTypeName="ATM Withdraw"/>
        <row refTypeID="5" refTypeName="ATM Deposit"/>
        <row refTypeID="6" refTypeName="Backward Compatible"/>
        <row refTypeID="7" refTypeName="Mission Reward"/>
        <row refTypeID="8" refTypeName="Clone Activation"/>
        <row refTypeID="9" refTypeName="Inheritance"/>
        <row refTypeID="10" refTypeName="Player Donation"/>
        <row refTypeID="11" refTypeName="Corporation Payment"/>
        <row refTypeID="12" refTypeName="Docking Fee"/>
        <row refTypeID="13" refTypeName="Office Rental Fee"/>
        <row refTypeID="14" refTypeName="Factory Slot Rental Fee"/>
        <row refTypeID="15" refTypeName="Repair Bill"/>
        <row refTypeID="16" refTypeName="Bounty"/>
        <row refTypeID="17" refTypeName="Bounty Prize"/>
        <row refTypeID="18" refTypeName="Agents_temporary"/>
        <row refTypeID="19" refTypeName="Insurance"/>
    </rowset>
</result>
Result Data
Name Data type Description
refTypeID int Reference ID for the transactions from the either the Corporation or Character wallet journal
refTypeName string What kind of transaction it is.
TypeName

Returns the names associated with a sequence of typeIDs.

  • Path: /eve/TypeName.xml.aspx

  • Access mask: None

  • Cache timer: 1 hour

  • Parameters:

    Argument Type Meaning
    ids String Comma-separated list of typeIDs to query
Sample Response
<result>
    <rowset name="types" key="typeID" columns="typeID,typeName">
        <row typeID="645" typeName="Dominix" />
        <row typeID="644" typeName="Typhoon" />
    </rowset>
</result>
Result Data
Name Data type Description
Rowset types
typeID int typeID of object
typeName string Name of object
Notes
  • The ids string can consist of up to 250 different typeIDs. Every id after that will be ignored and not included in the response.
    (Verified through testing at 2015-11-29.)
  • If an id does not resolve to a known typeName the response will include it but with the name “Unknown Type”.
    (Verified through testing at 2015-11-29.)
References
  • Post on new EVE-O introducing this API endpoint.
Map
FacWarSystems
  • Description: Returns a list of contestable solarsystems and the NPC faction currently occupying them. It should be noted that this file only returns a non-zero ID if the occupying faction is not the sovereign faction.
  • Path: /map/FacWarSystems.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="solarSystems" key="solarSystemID" columns="solarSystemID,solarSystemName,occupyingFactionID,owningFactionID,occupyingFactionName,owningFactionName,contested,victoryPoints,victoryPointThreshold">
        <row solarSystemID="30002094" solarSystemName="Ebolfer" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="False" victoryPoints="0" victoryPointThreshold="3000"/>
        <row solarSystemID="30002537" solarSystemName="Amamake" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="False" victoryPoints="0" victoryPointThreshold="3000"/>
        <row solarSystemID="30002539" solarSystemName="Siseide" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="False" victoryPoints="0" victoryPointThreshold="3000"/>
        <row solarSystemID="30002538" solarSystemName="Vard" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="True" victoryPoints="60" victoryPointThreshold="3081"/>
        <row solarSystemID="30002514" solarSystemName="Bosboger" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="False" victoryPoints="0" victoryPointThreshold="3033"/>
        <row solarSystemID="30002516" solarSystemName="Lulm" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="False" victoryPoints="0" victoryPointThreshold="2863"/>
        <row solarSystemID="30002096" solarSystemName="Hofjaldgund" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="True" victoryPoints="500" victoryPointThreshold="3000"/>
        <row solarSystemID="30002091" solarSystemName="Ontorn" occupyingFactionID="0" owningFactionID="500002" occupyingFactionName="" owningFactionName="Minmatar Republic" contested="True" victoryPoints="240" victoryPointThreshold="3060"/>
    </rowset>
</result>
Result Data
Name Data type Description
solarSystemID int The unique identification number of a solar system. You can look up the details of the solar system in the table mapSolarSystems of the SDE
SolarSystemName string The name of a solar system.
occupyingFactionID int The ID of the NPC Faction that has occupied this constellation, or 0 if the default(sovereign) faction occupies the system.
occupyingFactionName int The name of the occupying NPC Faction.
owningFactionID int The ID of the NPC Faction who owns the system, it may be occupied by another Faction.
owningFactionName string The name of the NPC Faction who owns the system, it may be occupied by another Faction.
contested boolean Whether system is being fought over.
victoryPoints int Current number of victory points earned in the system by the aggressing faction.
victoryPointThreshold int The amount of victory points required for the aggressing faction to take ownership of the system.
Jumps

Provides number of jumps into per solar system, doesn’t include wormhole space.

  • Description: Returns the number of jumps in solarsystems within the last hour. Only solar system where jumps have been made are listed, so assume zero in case the system is not listed.
  • Path: /map/Jumps.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="solarSystems" key="solarSystemID" columns="solarSystemID,shipJumps">
        <row solarSystemID="30002410" shipJumps="1"/>
        <row solarSystemID="30001343" shipJumps="1"/>
        <row solarSystemID="30001675" shipJumps="32"/>
        <row solarSystemID="30005304" shipJumps="357"/>
        <row solarSystemID="30000656" shipJumps="45"/>
        <row solarSystemID="30004832" shipJumps="2"/>
        <row solarSystemID="30003498" shipJumps="60"/>
        <row solarSystemID="30004732" shipJumps="20"/>
        <row solarSystemID="30002293" shipJumps="1"/>
        <row solarSystemID="30000155" shipJumps="295"/>
        <row solarSystemID="30002811" shipJumps="46"/>
        <row solarSystemID="30003329" shipJumps="36"/>
    </rowset>
    <dataTime>2015-11-25 01:10:18</dataTime>
</result>
Result Data
Name Data type Description
solarSystemID int The unique identification number of a solar system. You can look up the details of the solar system in the table mapSolarSystems of the SDE
shipJumps int The number of jumps into the system in the last hour.
Kills

Provides number of ship, pod and NPC kills per solar system, doesn’t include wormhole space.

  • Description: Returns the number of kills in solarsystems within the last hour. Only solar system where kills have been made are listed, so assume zero in case the system is not listed.
  • Path: /map/kills.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="solarSystems" key="solarSystemID" columns="solarSystemID,shipKills,factionKills,podKills">
        <row solarSystemID="30034971" shipKills="4" factionKills="12" podKills="0"/>
        <row solarSystemID="30003976" shipKills="0" factionKills="12" podKills="0"/>
        <row solarSystemID="30004162" shipKills="0" factionKills="5" podKills="0"/>
        <row solarSystemID="30004262" shipKills="0" factionKills="3" podKills="0"/>
        <row solarSystemID="30003744" shipKills="0" factionKills="37" podKills="0"/>
        <row solarSystemID="30000779" shipKills="0" factionKills="2" podKills="0"/>
        <row solarSystemID="30003876" shipKills="1" factionKills="328" podKills="0"/>
        <row solarSystemID="30002608" shipKills="0" factionKills="116" podKills="0"/>
        <row solarSystemID="30011407" shipKills="9" factionKills="372" podKills="0"/>
        <row solarSystemID="30003492" shipKills="0" factionKills="108" podKills="0"/>
        <row solarSystemID="30003535" shipKills="0" factionKills="12" podKills="0"/>
        <row solarSystemID="30001815" shipKills="0" factionKills="47" podKills="0"/>
        <row solarSystemID="30004912" shipKills="0" factionKills="111" podKills="0"/>
        <row solarSystemID="30003040" shipKills="0" factionKills="133" podKills="0"/>
        <row solarSystemID="30045324" shipKills="0" factionKills="58" podKills="1"/>
        <row solarSystemID="30004294" shipKills="0" factionKills="50" podKills="0"/>
        <row solarSystemID="30005055" shipKills="0" factionKills="24" podKills="0"/>
        <row solarSystemID="30002399" shipKills="1" factionKills="0" podKills="0"/>
        <row solarSystemID="30004723" shipKills="0" factionKills="124" podKills="0"/>
        <row solarSystemID="30003249" shipKills="0" factionKills="246" podKills="0"/>
    </rowset>
    <dataTime>2015-11-25 01:52:40</dataTime>
</result>
Result Data
Name Data type Description
solarSystemID int The unique identification number of a solar system. You can look up the details of the solar system in the table mapSolarSystems of the SDE
shipKills int Number of player ships killed in this system.
factionKills int Number of NPC ships killed in this system.
podKills int Number of pods killed in this system.
Sovereignty

Provides Sovereignty / Ownership information for solar systems in New Eden excluding wormhole space.

  • Path: /map/Sovereignty.xml.aspx
  • Access mask: none
  • Cache timer: 1 hour
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <rowset name="solarSystems" key="solarSystemID" columns="solarSystemID,allianceID,factionID,solarSystemName,corporationID">
    <row solarSystemID="30000001" allianceID="0" factionID="500007" solarSystemName="Tanoo" corporationID="0"/>
    <row solarSystemID="30000002" allianceID="0" factionID="500007" solarSystemName="Lashesih" corporationID="0"/>
    <row solarSystemID="30000003" allianceID="0" factionID="500007" solarSystemName="Akpivem" corporationID="0"/>
    <row solarSystemID="30000004" allianceID="0" factionID="500007" solarSystemName="Jark" corporationID="0"/>
    <row solarSystemID="30000673" allianceID="99003806" factionID="0" solarSystemName="RNM-Y6" corporationID="98138647"/>
    <row solarSystemID="30000674" allianceID="99003806" factionID="0" solarSystemName="V-KDY2" corporationID="98138647"/>
    <row solarSystemID="30000675" allianceID="99003806" factionID="0" solarSystemName="FYD-TO" corporationID="98138647"/>
    <row solarSystemID="30000676" allianceID="99003806" factionID="0" solarSystemName="ER2O-Y" corporationID="98138647"/>
    <row solarSystemID="30000677" allianceID="99003806" factionID="0" solarSystemName="J2-PZ6" corporationID="98138647"/>
    <row solarSystemID="30000678" allianceID="99000814" factionID="0" solarSystemName="XV-MWG" corporationID="98045636"/>
    </rowset>
    <dataTime>2015-08-24 09:27:17</dataTime>
</result>
Result Data
Name Data type Description
solarSystemID int The unique identification number of a solar system. You can look up the details of the solar system in the table mapSolarSystems of the SDE
allianceID int The ID of the alliance that has sovereignty of this solar system, or 0 if nobody has sovereignty. The Alliance List provides a list of the alliances.
corporationID int The ID of the corporation that owns the Territorial Claim Unit (TCU) if there is one in the system.
factionID int The NPC Faction controlling the system. The SDE has a table with the faction names.
solarSystemName string The name of the solar system.
Server
Server Status

Provides status of the server up/down and the number of users logged onto the server.

  • Path: /server/ServerStatus.xml.aspx
  • Access mask: none
  • Cache timer: 3 minutes
  • Parameters: None, this function accepts no arguments.
Sample Response
<result>
    <serverOpen>True</serverOpen>
    <onlinePlayers>16491</onlinePlayers>
</result>
Result Data
Name Data type Description
serverOpen boolean Server status
onlinePlayers integer How many players are currently signed into EVE..

Static Data Export

Introduction

The Static Data Export (SDE) is a CCP provided periodic snapshot of static data used in EVE Online. The SDE provides data in three formats:

  1. YAML is the preferred format for new data added to the SDE.
  2. SQLite is the packaging format for certain universe data.
  3. Microsoft SQLServer (MSSQL) dump format is the format for everything else.

Documentation for the export is provided in the YAML Files, SQLite Tables and MSSQL Tables sections, respectively.

Conversions

Originally, most of the SDE was provided in MSSQL format which was then converted by third party developers to various other database formats. Today, many third party developers continue to consume the SDE in database form only. Various third party tools have been written to convert the current SDE format to a pure database form, or other convenient forms. You can find a list of conversion tools in the Conversions section.

Conversions

Intoduction

Originally, the SDE was provided solely as an MS SQL server backup file. As the SDE is commonly used in environments where MS SQL is not available or would be overkill, a number of people maintain conversion routines and copies, to make it available in a more useful format.

As more formats were introduced, containing extra data, these routines were expanded to bring the data back into a single format.

As the various methods for conversion result in differing versions, with different layouts of data, conversions will be listed by the primary maintainer.

Desmont McCallock

Conversion Tool

Desmont provides a tool to run on Windows, to merge the other data back into the SQL Server SDE, and to convert into a variety of formats, either at full database, or individual tables.

  • SQL Server
  • MySQL
  • Postgres
  • MS Access
  • SQLite
  • CSV

This tool converts to a format close to the SDE as it was before CCP changed how it was produced -splitting it sqlserver, yaml and sqlite files- with blueprint information going into ramTypeRequirements. As such it should be more compatible with some older tools.

Steve Ronuken - Fuzzwork Enterprises

Steve provides conversions of the SDE for download, in the following formats:

.bz2 files can be unzipped with 7zip, on Windows. Historical copies are kept available. When data is migrated into alternate formats, it’s generally copied back into the old table format, but not always. The industry data, for example, is in a number of new industryActivity tables. While allowing for greater flexibility, this can break some older tools.

Conversion is performed by:

  • https://github.com/fuzzysteve/SDE-loaders to pull everything into SQL Server
  • MySQL Migration Wizard in the Mysql Workbench to convert to MySQL
  • pgloader to pull the mysql data into postgres
  • mysql2sqlite.sh to pull the mysql data into sqlite
  • DBIx::Dump to export the individual files.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Tips

Included Files

Microsoft SQL Server Dump File

The SDE includes a Microsoft SQLServer dump file with several reference tables. Originally, almost all reference data was included in the SQLServer dump. The EVE Development Network documents much of the original contents of the dump file.

The current SQLServer dump contains the following tables:

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Agents Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Research Agents Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Factions Table (MSSQL)
NPC Corporations Table (MSSQL)

Table of all NPC Corporations.

NPC Corporations
  • Table Name: crpNPCCorporations
  • Description: NPC Corporations list.
Columns
Column Type Default Xrefs Description
corporationID PK int Unique corporation ID.
size char(1) Corporation size. One of 'H', 'L', 'M', 'S', or 'T' corresponding to 'Huge', 'Large', 'Medium', 'Small', and 'Tiny', respectively.
extent char(1) Corporation extent. One of 'G', 'N', 'R', 'C', or 'L' corresponding to 'Global', 'National', 'Regional', 'Constellation', and 'Local', respectively.
solarSystemID int mapSolarSystems.solarSystemID
Solar system ID where corporation headquarters is located.
investorID1 int crpNPCCorporations.corporationID
First investor corporation ID, if applicable.
investorShares1 tinyint Percent of shares held by first investor.
investorID2 int crpNPCCorporations.corporationID
Second investor corporation ID, if applicable.
investorShares2 tinyint Percent of shares held by second investor.
investorID3 int crpNPCCorporations.corporationID
Third investor corporation ID, if applicable.
investorShares3 tinyint Percent of shares held by third investor.
investorID4 int crpNPCCorporations.corporationID
Fourth investor corporation ID, if applicable.
investorShares4 tinyint Percent of shares held by fourth investor.
friendID int crpNPCCorporations.corporationID
Corporation ID of friendly corporation.
enemyID int crpNPCCorporations.corporationID
Corporation ID of enemy corporation.
publicShares bigint Percentage of shares available to the public. Currently not used.
initialPrice int Initial offering prce of public shares. Currently not used.
minSecurity float Unknown.
scattered bit 1 if corporation's stations are scattered in Universe. 0 otherwise.
fringe tinyint Number of fringe systems in which corporation's stations reside.
corridor tinyint Number of corridor systems in which corporation's stations reside.
hub tinyint Number of hub systems in which corporation's stations reside.
border tinyint Number of border systems in which corporation's stations reside.
factionID int chrFactions.factionID
Faction ID of the faction to which this corporation belongs.
sizeFactor float Numeric size of corporation.
stationCount smallint Number of stations owned by corporation.
stationSystemCount smallint Number of systems in which this corporation has a station.
description nvarchar(4000) Corporation description.
iconID int iconIDs file Icon ID for this corporation.
EVE Units Table (MSSQL)

In game units.

EVE Units
  • Table Name: eveUnits
  • Description: EVE in game units.
Columns
Column Type Default Xrefs Description
unitID PK tinyint Unit ID.
unitName varchar(100) Unit name, usually describing measure (e.g. Length).
displayName varchar(50) Displayed name of unit, usually an abbreviation (e.g. m).
description varchar(1000) Unit description, usually the full unit name (e.g. Meter).
Inventory Flags Table (MSSQL)

Table of ingame item location flags.

Inventory Flags
  • Table Name: invFlags
  • Description: Inventory item location flag.
Columns
Column Type Default Xrefs Description
flagID PK smallint Inventory item flag ID.
flagName varchar(200) Inventory flag name.
flagText varchar(100) Inventory flag descriptive text.
Inventory Items Table (MSSQL)

Names of all in-game items.

Inventory Items
  • Table Name: invItems
  • Description: Basic attributes of all static items.
Columns
Column Type Default Xrefs Description
itemID PK NN bigint invNames.itemID
invPositions.itemID
invUniqueNames.itemID
mapDenormalize.itemID
In-game item ID.
typeID NN int crpNPCCorporationTrades.typeID
dgmTypeAttributes.typeID
dgmTypeEffects.typeID
invTypeMaterials.typeID
invTypeReactions.typeID
typeIDs
mapDenormalize.typeID
Type of in-game item.
ownerID NN int ramAssemblyLineStations.ownerID Item owner ID.
locationID NN bigint agtAgents.locationID
mapLandmarks.locationID
mapLocationScenes.locationID
mapLocationWormholeClasses.locationID
Item location ID.
flagID NN smallint invFlags.flagID Item flags.
quantity NN int Item quantity.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Inventory Meta Types Table (MSSQL)
Inventory Name Table (MSSQL)

Names of all in-game items.

Inventory Names
  • Table Name: invNames
  • Description: Names of all static items with names.
Columns
Column Type Default Xrefs Description
itemID PK NN bigint invItems.itemID
invPositions.itemID
invUniqueNames.itemID
mapDenormalize.itemID
In-game item ID.
itemName NN nvarchar(200) Name of in-game item.

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Inventory Positions Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Inventory Type Materials Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Inventory Type Reactions Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Inventory Unique Names Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Industry Activities Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Planet Schematics Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Station Operations Table (MSSQL)
Stations Table (MSSQL)

Table of all stations.

Stations
  • Table Name: staStations
  • Description: Stations list.
Columns
Column Type Default Xrefs Description
stationID PK int mapDenormalize.itemID
Unique station ID.
security smallint Station security level.
dockingCostPerVolume float Cost of docking per ship volume. Currently always zero.
maxShipVolumeDockable float Maximum volume of ship that can dock here (cubic meters).
officeRentalCost int Base office rental cost.
operationID tinyint staOperations.operationID
Station operaton mode.
stationTypeID int staStationTypes.stationTypeID
Station type.
corporationID int crpNPCCorporations.corporationID
Corporation ID of owning corporation.
solarSystemID int mapSolarSystems.solarSystemID
Solar system ID of solar system where station is located.
constellationID int mapConstellations.constellationID
Constellation ID of constellation where station is located.
regionID int mapRegions.regionID
Region ID of region where station is located.
stationName nvarchar(100) Station name.
x float X location of station in space.
y float Y location of station in space.
z float Z location of station in space.
reprocessingEfficiency float Base station reprocessing efficiency (percentage).
reprocessingStationsTake float Base station reprocessing tax (percentage).
reprocessingHangarFlag tinyint invFlags.flagID
Inventory flag for location of reprocessing output? Currently always 4 (Hangar).

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Station Types Table (MSSQL)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

SQLite Database File

The SDE includes an SQLite database file which contains the following tables:

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Constellations Table (SQLite)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Denormalize Table (SQLite)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Regions Table (SQLite)

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Solar Systems Table (SQLite)
YAML Files

The SDE includes the following files (in file name order) exported in YAML format:

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Blueprints

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Certificates

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

EVE Graphics

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Groups

Groups referenced by Inventory Types

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

EVE Icons

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Ship Skins

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Skin Licenses

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Skin Materials

Note

This article is a stub.

You are welcome to improve the docs by contributing to it.

Tournament Rules
Inventory Types File (YAML)
Inventory Types
  • File Name: typeIDs.yaml
  • Description: Inventory type information.
Sample
4:
    groupID: 4
    name:
        de: Constellation
        en: Constellation
        fr: Constellation
        ja: コンステレーション
        ru: Constellation
        zh: 星座
    portionSize: 1
    published: false
    volume: 1.0
582:
    capacity: 270.0
    description:
        de: Im Jahr YC114 hatte jedes der führenden Großreiche aufgrund des entsetzlichen
            und nicht enden wollenden Kriegs auf allen Ebenen erkannt, dass ihre Schiffe
            Unterstützung und Logistikfunktionalität benötigten. Andernfalls würde
            der langwierige interstellare Krieg die Teilnehmer aufreiben. Im Staat
            der Caldari führte dies zur Umgestaltung und dem Neueinsatz der Bantam.
            Die Bantam, ein starkes und robustes Schiff, war ursprünglich eine äußerst
            effiziente Bergbaufregatte. Nach ihrer Umgestaltung wurde die breite Struktur
            der Bantam durch Logistiksysteme ersetzt, die einigen Platz im Innenraum
            in Anspruch nahmen. Dies erlaubte ihr jedoch, sich auf die Schildunterstützung
            verbündeter Schiffe zu konzentrieren.
        en: "In YC114 each major empire faction, having been embroiled in a harrowing,
            extensive, long-term war, recognized the growing need for support and
            logistics functionality in their vessels during the kind of protracted
            interstellar warfare that might otherwise prove exhausting for its participants.
            In the Caldari State, this led to the redesign and redeployment of the
            Bantam.\r\n\r\nThe Bantam, a strong and sturdy craft, was originally an
            extremely effective mining frigate. After its redesign, the Bantam's large
            structure had to give way for logistics systems that ate up some of its
            interior room but allowed it to focus extensively on shield support for
            fellow vessels."
        fr: 'En 114 après CY, les grandes factions des empires ayant toutes été engagées
            dans une guerre longue et pénible, reconnurent le besoin grandissant d''intégrer
            des fonctionnalités de soutien et de logistique dans leurs vaisseaux afin
            de pouvoir faire face à la durée extrême des guerres interstellaires et
            à l''épuisement des participants. Au sein de l''État caldari, ce processus
            conduisit à la refonte et au redéploiement du Bantam.


            Le Bantam, vaisseau résistant et puissant, était à l''origine une frégate
            d’extraction très efficace. Dans sa nouvelle version, la grande structure
            du Bantam accueille désormais des systèmes logistiques qui ont grignoté
            une partie de son espace intérieur mais lui permettent d''apporter une
            grande assistance de bouclier pour les autres vaisseaux qu''il accompagne.'
        ja: "YC114年、4大国を巻きこむ大規模戦争が勃発した。長く、凄惨で、広範にわたる戦いの中、各国では支援艦や補給艦の役割がしだいに重視されるようになった。そういった役割を果たす船がなければ戦力が疲弊してしまうのだ。これを受けて、カルダリ連合ではバンタムの設計を根本から見直し、再配備を行った。\n\t\t\nバンタムは馬力のある頑丈な艦船で、元々は採掘用フリゲートとしてその性能を高く評価されていた。設計見直しにより、大ぶりな船体に支援システムが詰めこまれ、多少手狭にはなったが、僚艦にシールドを補給する支援専門艦として生まれ変わった。"
        ru: В 114-м году по юлайскому летоисчислению крупнейшие государства галактики,
            увязшие в тяжёлой, затяжной войне без конца и края, были вынуждены обратить
            внимание на растущую потребность военных флотов в ремонтных кораблях и
            кораблях боевого обеспечения — она диктовалась самим характером продолжительных
            боевых действий в межзвёздном масштабе, способных полностью измотать противоборствующие
            стороны. В Государстве Калдари такой корабль был создан на основе фрегата
            «Бэнтам» после существенной переработки конструкции. «Бэнтам» — крепкий
            и прочный корабль. Он был чрезвычайно эффективен при добыче сырья. При
            перестройке конструкции обширный корпус «Бэнтама» был модифицирован для
            несения ремонтных систем. Это снизило полезный внутренний объем фрегата,
            но позволило сконцентрировать его функциональность на дистанционной накачке
            силовых полей дружественных кораблей.
        zh: 'YC114年,每个主要帝国势力都已经深陷战争泥潭,他们深深意识到了对现有舰只增加后勤功能的重要性,否则唯一的结果便是弹尽力竭。加达里合众国决定对矮脚鸡级护卫舰进行重新设计,赋予它新的使命。


            矮脚鸡级护卫舰船体坚固,采矿效率极高。重新设计后,它坚固的船体被后勤系统所取代,内部空间也有所减小,不过换来的是为友军舰船进行护盾传输的能力。'
    factionID: 500001
    graphicID: 38
    groupID: 25
    marketGroupID: 61
    mass: 1480000.0
    masteries:
        0:
        - 96
        - 139
        - 85
        - 87
        - 94
        1:
        - 96
        - 139
        - 85
        - 87
        - 94
        2:
        - 96
        - 139
        - 85
        - 87
        - 94
        3:
        - 96
        - 139
        - 85
        - 87
        - 94
        4:
        - 96
        - 139
        - 85
        - 118
        - 87
        - 94
    name:
        de: Bantam
        en: Bantam
        fr: Bantam
        ja: バンタム
        ru: Bantam
        zh: 矮脚鸡级
    portionSize: 1
    published: true
    raceID: 1
    radius: 27.0
    soundID: 20070
    traits:
        -1:
            1:
                bonus: 500
                bonusText:
                    de: Bonus auf die Transferreichweite von <a href=showinfo:3422>Schildfernboostern</a>
                    en: bonus to <a href=showinfo:3422>Remote Shield Booster</a> transfer
                        range
                    fr: de bonus à la portée de transfert des <a href=showinfo:3422>boosters
                        de bouclier à distance</a>
                    ja: <a href=showinfo:3422>リモートシールドブースター</a>の転送範囲が拡大
                    ru: увеличивается дальность действия <a href=showinfo:3422>установок
                        дистанционной накачки силовых полей</a>
                    zh: <a href="showinfo:3422">远程护盾回充增量器</a>作用距离加成
                unitID: 105
        3330:
            1:
                bonus: 10
                bonusText:
                    de: Bonus auf die Leistung von <a href=showinfo:3422>Schildfernboostern</a>
                    en: bonus to <a href=showinfo:3422>Remote Shield Booster</a> amount
                    fr: de bonus au montant des <a href=showinfo:3422>boosters de
                        bouclier à distance</a>
                    ja: <a href=showinfo:3422>リモートシールドブースター</a>のブースト量が増加
                    ru: повышается производительность <a href=showinfo:3422>установок
                        дистанционной накачки силовых полей</a>
                    zh: <a href="showinfo:3422">远程护盾回充增量器</a>回充量加成
                unitID: 105
            2:
                bonus: 10
                bonusText:
                    de: Reduktion der Aktivierungskosten von <a href=showinfo:3422>Schildfernboostern</a>
                    en: reduction in <a href=showinfo:3422>Remote Shield Booster</a>
                        activation cost
                    fr: de réduction du coût d'activation des <a href=showinfo:3422>boosters
                        de bouclier à distance</a>
                    ja: <a href=showinfo:3422>リモートシールドブースター</a>の起動コストが軽減
                    ru: сокращается потребление энергии <a href=showinfo:3422>установками
                        дистанционной накачки силовых полей</a>
                    zh: <a href="showinfo:3422">远程护盾回充增量器</a>启动消耗降低
                unitID: 105
    volume: 20000.0
Schema
map [int] Map typeID to type information
map [string] Map type field name to type information
groupID int Type group ID
mass float Type mass (kilograms)
name map [string] Map language code (two character) to type name in that language
portionSize int Type batch size (e.g. production units per industry job run)
published boolean True if type is published, false otherwise.
basePrice float Seed price of item when first introduced.
description map [string] Map language code (two character) to type description in that language
iconID int Type icon ID for UI
marketGroupID int Type market group ID
volume float Type volume (cubic meters)
sofFactionName string Skin faction name.
sofMaterialSetID [1] int Skin material set ID.
capacity float Capacity (cubic meters) for a type with a hold or container (e.g. ship)
factionID long Type faction ID
graphicID int Type graphic ID for UI
masteries map [int] Map mastery level (0 through 4) to certificate ID list
sequence [int] Sequence of Certificate IDs for corresponding mastery level
raceID int Type race ID
radius float Type radius (meters)
soundID int Type sound ID for UI
traits map [int] Map type trait to trait bonus list. Key value of -1 corresponds to the default trait for the type. This is normally determined by the group ID.
map [int] Enumeration of trait bonuses.
map [string] Map trait bonus name to value.
bonus int Trait bonus value
bonusText map [string] Map language code (two character) to bonus text in that language
unitID [1] int Bonus modification unit

Dogma

Introduction

In this document, I will (try to) explain how the Dogma system works for EVE Online for the purposes of fit calculations. I will be using fitting calculation engine EOS to reference things that are not published by CCP, namely operandIDs and their meaning, as well as the operators. These references can be found as constants in the EOS project: EVE and EOS constants. These constants may or may not be included in future documentation.

Additionally, I may refer to attributes in the form of attrID:attrName for simplicity.

Finally, I have produced a simple GUI that may be helpful when learning about Dogma expressions. Screenshots will be used in this document to visually assist with understanding the expression tree. For releases of this program, please see exp-gui.

What is Dogma?

At its core, Dogma is the system for managing all the attributes and modifying effects for the various items in EVE. Before we explain how Dogma works, we need to first understand items and effects. Items are the building blocks of EVE - everything in the game is an item. The modules that you put on your ship, the charges you load into your guns, and your ship itself. Items can also be non-physical entities such as system-wide wormhole effects or the tactical destroyer mode. Everything in EVE that has some sort of attribute attached to it is an item, and these are defined in the invTypes table.

But having a bunch of items with attributes is useless without a way for them to affect one another. That’s where effects come in. Effects are the building blocks of items and are what actually make an item do something. Suppose you fit a Webifier to your ship. When it’s active, it applies its decreaseTargetSpeed effect to the currently locked target. When it’s overloaded, it applies its overloadSelfRangeBonus effect to itself. Effects have a many-to-many relationship with items, where each effect may have be attached to many different items, and each item may have many different effects. Effects are defined in the dgmEffects table, whereas the relationship with items is defined with the dgmTypeEffects table.

Each effect (usually) has one or more modifiers which ultimately what is used in the calculations.

So now that we know what items and effects are, how do we apply one item’s effects to another item? We must create a modifier, of which each effect (usually) has one or more of, and to do this we need to know a few things (for simplicity, there are a couple points omitted):

  1. The source attribute
  2. The target (or location)
  3. The target attribute
  4. The operation / modifier
  5. The filter

For example, we have a Stasis Web II and are applying it to our target. The web module itself has an attribute that determines the penalty it deals, and this attribute is 20:speedFactor with a value of -60.0. This is our source attribute (the source attribute is always attached to the item that is calling the effect in question, in this case the Web II). The target attribute is 37:maxVelocity with the target being CurrentTarget (which is CCP’s definition of the currently locked and selected target). It is best to note here that if we are modifying an attribute that is not on the ship itself, but on another item, this would refer to where that item might be located (eg: current ship, current target, gang members, etc). The modifier is PostPercent, which basically tells us to apply our source attribute as a percentage to the target attribute.

The last point, the filter, is not applicable to our specific example, but is used in a lot of other effects. This is used to limit the effect to specific item groups, based on the group of the item or the required skill of the item. For example, the durationBonusForGroupAfterburner effect used to reduce duration of AB and MWDs (used with the Engine Thermal Shielding rigs). Instead of applying them to all our modules (which doesn’t make sense), we need to filter out modules that share the “Afterburner” group, which is all Afterburners and MWD’s.

We have an enemy Retribution currently locked and selected and it has with a max velocity of 348m/s. We convert our source attribute value, -60.0, to a percentage modifier (defined with PostPercent = val / 100 + 1)1 and we get 0.4. This is then multiplied with the target attribute to get the final value of 348 * 0.4 = 139.2m/s. And that’s how effects work.

So now you know what you should be looking for. How do you get it?

The Easy Way: modifierInfo

Note: more documentation on the various operators and functions need to be written.

CCP has recently started to move in a new direction with their effects, storing the modifier data in the effects modifierInfo field rather than in the expression tree. This is a YAML formatted field, and typically looks like this (from the shipModeMaxTargetRangePostDiv effect):

- domain: shipID
  func: ItemModifier
  modifiedAttributeID: 76
  modifyingAttributeID: 1991
  operator: 5

From this you can easily see the attributes that are involved. The operator used is 5, which is defined as PostDiv. func determines the kind of modification we are performing - is it simply a direct modification from attribute to attribute (like ItemModifier), or is there a filter that is being applied (like LocationGroupModifier). In this case, no filter is being applied. The domain tells us what our target is, in this case it’s our own ship. Please note that modifierInfo is relatively new, and there isn’t yet a lot of variety. For example, to my knowledge, there aren’t any projected effect (effects that are projected to something other than your own ship or character) that utilize the modifierInfo format, and thus this may change in the future.

The Legacy Way: dgmExpressions

The way CCP originally defined effects was the use of expressions. Each effect contains two references to expressions: preExpression and postExpression. The preExpression is used when an effect is applied (ie: a module is activated), whereas the postExpression is (usually) its mirror and used when the effect is removed. Expressions are stored in the dgmExpressions table and have a tree data structure, in which each expression can be made out of other expressions; traversing this tree and extracting the information needed to produce an actionable modifier is the ultimate goal.

Here is a typical entry in dgmExpressions.

"expressionGroupID": null,
"expressionAttributeID": null, 
"description": null, 
"expressionValue": null, 
"arg1": 3487, 
"arg2": 105, 
"expressionName": "((CurrentTarget->maxVelocity).(PostPercent)).AddItemModifier (speedFactor)", 
"operandID": 6, 
"expressionID": 3489, 
"expressionTypeID": null>

The important things to note here are arg1, arg2, and operandID. The operandID is the value that defines exactly what arg1 and arg2 is supposed to do. Usually, they are references to other expressions (like in this example), but they could also be used in comparison constructs (eg: operandID = 38 means that it uses the argument values in the following comparison: arg1 > arg2) or splicing multiple expressions together to form multiple modifiers (operandID = 17). The operandID is also useful in determining if you have workable data. For example, operandID = 22 defines this expression as pointing to an attribute, and to find the attribute ID in the expressionAttributeID field. As another example, operandID = 24 tells us that current expression defines the target which is found in the expressionValue field.

Unfortunately, CCP does not publish the information on what operand does what, but you can get this data from the client cache. You can also reference player-made documentation such as the EOS EVE constants that I referred at the beginning of this document which may be more helpful/insightful.

So now that you know what the three main fields do, what about the other ones? All the expression*ID fields have information that can be used in the final modifier, whether it be an attribute, target, or even a filter (for example, some effects are defined as being applied to only items under a certain group).

expressionName is basically an overview of what you could expect to find when you traverse the expression tree. It’s a compilation of all the other expressions that are attached to the current one.

Traversing the Expression Tree: Stasis Webifier II

Let’s start back at our decreaseTargetSpeed effect, which has a preExpression of 3489 and a postExpression of 3491. As they are both practically the same, we’ll focus on the preExpression for now. We will call this our root tree. Under the root tree of most expressions, the arguments will always reference other expressions - again, you will need to check the operandID to determine this. If this is an actionable operand (one that begins to define a modifier rather than a logic construct), arg2 is always going be an expression that defines the source attribute, while arg1 will eventually define everything else.

We start by loading both arguments and look at the data we obtain:

We can see that root.arg2.operandID = 22, which designates that this expression is defining an attribute. You can see the attribute ID is 20 and the name is speedFactor. Again, arg2 of an actionable root tree always defines the source attribute, so already we have 1 piece of critical information.

arg1 is left to define everything else. root.arg1.operandID = 31 designates this expression as one that joins the operator and target definitions. Being a joiner expression, we can safely load more expressions into arg1 and arg2, using their values as the expressionID. Loading that data up shows:

In the above image, I collapsed root.arg2 and have expanded both arguments in root.arg1. Be very careful - it’s easy to get lost in the tree. Looking at root.arg1.arg1.operandID = 21, which defines the operator of the effect in the expressionValue field; PostPercent in this case. So now we have both the source attribute and the operator of the effect.

root.arg1.arg2.operandID = 12, which defines the expression as joining the target and the target item - our last two data points needed for this effect. Again, load the next two expressions using the values in the arguments as the expressionID

Again, I’ve collapsed the arguments that have already been used, and expanded the two new ones. Immediately you can see that the tree ends here, as there are no more arguments.

root.arg1.arg2.arg1.operandID = 24 which defines the expression as carrying the target information in expressionValue, in this case Target. This is CCP’s definition of the currently locked and selected target. The only thing that is left is the target attribute that we are modifying...

root.arg1.arg2.arg2.operandID = 22 defines the expression as an attribute, the ID of which is in expressionAttributeID, in this case 37:maxVelocity. You may be wondering how we know this is the target attribute and not another attribute that might be used in the expression. The answer to this would be the parent expression, whose operand defines it as joining the target and target attribute.

And that’s it! We have traversed the preExpression tree and compiled a list of the needed information:

  1. The source attribute: 20:speedFactor
  2. The target: Target
  3. The target attribute: 37:maxVelocity
  4. The operation / modifier: PostPercent
Traversing the Expression Tree: Shield Boost Amplifier II

This example will utilize the shieldBoostAmplifier effect to demonstrate filters and hopefully clarify what we mean by “actionable” expression, as the previous example was a little vague.

From here we can see that root.operandID = 17, which is defined as a splice. A splice basically chains multiple modifiers together; a way to express different modifiers with one effect. Consider a scenario when you want to attach more than one modifier to an effect. The Damage Control module comes to mind. It has 11 splice expressions, which total 12 modifiers (one modifier for each resist for each tank type). This is also not an “actionable” expression, as we are not yet collecting the data needed to create the modifier. As such, arg2 does not point to source attribute, but rather to an entirely new expression tree. The same goes for arg1. While the use of the arguments is up to the operand being used, in this specific situation, both arg1 and arg2 should be treated as root expressions and evaluated as such. If we expand arg1 we see that the root.arg1.operandIS = 9, which is defined as applying some attribute to an item by using a skill filter.

From here we take the same process as with the previous example. As such, I will only summarize: root.arg1.arg2 will define the source attribute. root.arg1.arg1 expands to define the operation (root.arg1.arg1.arg1) and target (root.arg1.arg1.arg2)

In the target expression, root.arg1.arg1.arg2.arg2 defines the target attribute, and root.arg1.arg1.arg2.arg1 defines the target itself. Here’s where we get some new information.

You can see that we have a new operand: root.arg1.arg1.arg2.arg1.operandID = 49 defines this expression as joining a target (arg1) and skill requirement definitions (arg2). These two definitions tell us to look at the modules of our own ship (target: CurrentShip) and apply the effect to modules requiring the skill Capital Shield Operation.

But, we all know that Shield Boost Amplifier II doesn’t just work on Capital Shield Boosters. This is why we have a splice: root.arg2 defines the same modifier with a different skill: Shield Operation, which would apply the effect to all other shield boosters in the game.

  • Modifier 1
    1. The source attribute: 548:shieldBoostMultiplier
    2. The target: Ship
    3. The target attribute: 68:shieldBonus
    4. The operation / modifier: PostPercent
    5. Filter: Skill - 21802:Capital Shield Operation
  • Modifier 2.
    1. The source attribute: 548:shieldBoostMultiplier
    2. The target: Ship
    3. The target attribute: 68:shieldBonus
    4. The operation / modifier: PostPercent
    5. Filter: Skill - 3416:Shield Operation
Using Modifier Data

One you extract the modifier information from the expression tree, you can use it in your dogma calculations. EOS, for example, only used the compiled modifier information in its calculations. Once it’s made its modifier database, it never touches the expression trees again. Ultimately it’s up to the developer of the application to decide what they wish to do with the information.

This was a simple example. There are more complicated effects than discussed here. It’s important to remember that the operandIDis the key to determining what exactly an expression is trying to portray.

Caveats

There are a few “gotchas” when it comes to expression tree building. There are a few group filters that seem to be misrepresented. Also, preExpressions and postExpressions do not always mirror each other, notably for stateful modules (modules that modify the state of your ship in game rather than an attribute, such as armor repairers which modify the amount of armor damage you have, not the amount of armor you have).

However, these examples should be enough to jump start your development, expansion to the articles are always welcomed.

Resources
  1. EOS - EVE constants Has a lot of information on operandIDs as well as effect categories
  2. EOS - EOS constants EOS-specific constants, however they provide a little more context for things like domains (the target of the effect).
  3. EOS - Cache Generator logic This is a great resource for figuring out how this information may be applied programatically. It’s complex, but fairly easy to follow.
  4. dgmOperands: JSON file that defines dgmOperands table from the EVE client cache.

Footnotes

1 Arithmetic for the various operations can be found here

Image Server

Introduction

You can use this service to obtain images related to entities in New Eden. At this time, it is possible to get alliance logos, corp logos, character portraits, faction logos, ship renders and inventory type icons in various resolutions.

Corporation logos, alliance logos, inventory type icons and ship renders are returned as transparency-enabled 32 bit PNGs. Character portraits are returned as JPEGs.

If a given image is not found in the database, the service responds with a 302 Moved HTTP response and redirects the HTTP client to a generic image. If you request an image in an invalid size, you get a plain 404.

You are welcome to point your clients and applications directly at the image server and use it as a CDN. You do not need to cache the images and serve them yourself.

The base URL for the image server is https://image.eveonline.com

Image Routes

Alliance Images
  • URL Pattern: /Alliance/{allianceID}_{width}.png

  • Available Sizes: 32, 64, 128

  • Samples:

Corporation Images
  • URL Pattern: /Corporation/{corpID}_{width}.png

  • Available Sizes: 32, 64, 128, 256

  • Samples:

Character Images
  • URL Pattern: /Character/{characterID}_{width}.jpg

  • Available Sizes: 32, 64, 128, 256, 512, 1024

  • Samples:

Faction Images
  • URL Pattern: /Alliance/{factionID}_{width}.png

  • Available Sizes: 32, 64, 128

  • Samples:

Inventory Types
  • URL Pattern: /Type/{typeID}_{width}.png

  • Available Sizes: 32, 64

  • Samples:

Ship and Drone Renders
  • URL Pattern: /Render/{typeID}_{width}.png

  • Available Sizes: 32, 64, 128, 256, 512

  • Samples:

Legacy Portraits

Legacy portraits are from before the change to the existing character creator that occurred on November 30th, 2010 with the release of the Incursion expansion. These renders let you see how characters that existed back then looked in the previous character creator.