APIv2 Char JournalEntries XML
| API Methods - Category Home - API Overview - API Page Index - API Libraries - API Wanted Features |
Contents |
/char/WalletJournal.xml.aspx
Overview
Returns a list of journal transactions for character.
Data Caching
This method is cached according to the Modified Short Cache Style.
Input Arguments
| Name | Type | Description |
|---|---|---|
| apiKey | char(64) | Full access API key of account. |
| characterID | int | The character you are requesting data for. |
| userID | int | userID of account for authentication. |
| accountKey | int | It isn't necessary to specify accountKey for characters because they have only one wallet (accountKey=1000). However, corporations have seven wallets with accountKey(s) numbered 1000 through 1006. Use /corp/AccountBalance.xml.aspx to determine which accountKey corresponds to each corporate wallet. |
| fromID | bigint | Optional. Used for walking the journal backwards to get more entries; see Journal Walking, below. |
| rowCount | int | Optional. Used for specifying the amount of rows to return. Default is 50. Maximum is 2560. |
New Version for CAK keys
| Name | Type | Description |
|---|---|---|
| keyID | int | Key ID of an appropriate CAK API key |
| characterID | int | The character you are requesting data for. |
| vCode | char(64) | Verification code for the CAK API key |
| accountKey | int | It isn't necessary to specify accountKey for characters because they have only one wallet (accountKey=1000). However, corporations have seven wallets with accountKey(s) numbered 1000 through 1006. Use /corp/AccountBalance.xml.aspx to determine which accountKey corresponds to each corporate wallet. |
| fromID | bigint | Optional. Used for walking the journal backwards to get more entries; see Journal Walking, below. |
| rowCount | int | Optional. Used for specifying the amount of rows to return. Default is 50. Maximum is 2560. |
Output XML
<eveapi version="2"> <currentTime>2008-08-22 12:00:16</currentTime> <result> <rowset name="transactions" key="refID" columns="date,refID,refTypeID,ownerName1,ownerID1,ownerName2,ownerID2,argName1,argID1,amount,balance,reason, taxReceiverID, taxAmount"> <row date="2008-08-22 03:36:00" refID="1578932679" refTypeID="54" ownerName1="corpslave" ownerID1="150337897" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="0" amount="-8396.99" balance="576336941.61" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-22 03:36:00" refID="1578932678" refTypeID="2" ownerName1="anonymous" ownerID1="30497503" ownerName2="corpslave" ownerID2="150337897" argName1="725524391" argID1="0" amount="1399498.50" balance="576345338.60" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-21 22:18:00" refID="1578164958" refTypeID="42" ownerName1="corpslave" ownerID1="150337897" ownerName2="" ownerID2="0" argName1="" argID1="0" amount="-152939.40" balance="574647640.10" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-21 21:42:00" refID="1578064292" refTypeID="46" ownerName1="corpslave" ownerID1="150337897" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="" argID1="1" amount="-100.00" balance="576279220.79" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-21 08:35:00" refID="1576226363" refTypeID="63" ownerName1="corpslave" ownerID1="150337897" ownerName2="Secure Commerce Commission" ownerID2="1000132" argName1="9956913" argID1="0" amount="-20200000.00" balance="573681668.81" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-21 00:12:00" refID="1575178039" refTypeID="64" ownerName1="Secure Commerce Commission" ownerID1="1000132" ownerName2="corpslave" ownerID2="150337897" argName1="9956913" argID1="0" amount="5300000.00" balance="612310142.18" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-20 13:10:00" refID="1575178032" refTypeID="85" ownerName1="CONCORD" ownerID1="1000125" ownerName2="anonymous" ownerID2="173993711" argName1="Jita" argID1="30001660" amount="135000.00" balance="609292267.52" reason="29200:15," taxReceiverID="1734917694" taxAmount="15000.00" /> <row date="2008-08-20 05:19:00" refID="1572531631" refTypeID="34" ownerName1="anonymous" ownerID1="30497503" ownerName2="corpslave" ownerID2="150337897" argName1="" argID1="30497503" amount="911000.00" balance="611148267.52" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-20 05:19:00" refID="1572531630" refTypeID="33" ownerName1="anonymous" ownerID1="30497503" ownerName2="corpslave" ownerID2="150337897" argName1="" argID1="30497503" amount="945000.00" balance="610237267.52" reason="" taxReceiverID="" taxAmount="" /> <row date="2008-08-20 04:15:00" refID="1572401485" refTypeID="15" ownerName1="corpslave" ownerID1="150337897" ownerName2="Federal Intelligence Office" ownerID2="1000121" argName1="" argID1="1" amount="-504.00" balance="597984259.02" reason="" taxReceiverID="" taxAmount="" /> </rowset> </result> <cachedUntil>2008-08-22 12:15:16</cachedUntil> </eveapi>
Output Rowset Columns
| Name | Type | Description |
|---|---|---|
| date | date string | Date & time of the transaction |
| refID | bigint | ID of transaction. Guaranteed to be unique with this page call; Was previously subject to renumbering periodically to remain within the limit of a 32bit integer [1]. As of 10/01/2010 the values of refID being seen have exceeded this limit, indicating that CCP have upgraded this field to a bigint (64bit integer), removing the need for further renumbering. Use the last listed refID with the fromID argument to walk the list (see Journal Walking, below). |
| refTypeID | int | Transaction type. See RefTypes. |
| ownerName1 | string | Name of first party in the transaction. |
| ownerID1 | int | Character or corporation ID of the first party. |
| ownerName2 | string | Name of second party in the transaction. |
| ownerID2 | int | Character or corporation ID of the second party. |
| argName1 | varies | See Arguments, below. |
| argID1 | int | See Arguments, below. |
| amount | decimal | The amount transferred between parties (if this shows up in the in-game wallet as green, the number is positive; if red, then negative). |
| balance | decimal | The overall balance in this wallet, after this transaction. |
| reason | string | See Arguments, below. |
| taxReceiverID | string | If the row is related to taxation, then this is the CorporationID of who recieved the tax. (Should be 'int' but is presented as 'string', as a none taxReceiverID is presented with an empty string instead of '0'). |
| taxAmount | string | If the row is related to taxation, then this is the amount of tax paid. (Should be 'decimal' but is presented as 'string', as a none taxAmount is presented with an empty string instead of '0.0'). |
Arguments
Several RefTypes have special meanings for the argName1, argID1, and reason columns.
| RefTypeID | RefTypeName | argName1 | argID1 | reason | comment |
|---|---|---|---|---|---|
| 1 | Player Trading | Station name | Station ID | arg describes where the direct player trade took place. See staStations table. | |
| 2 | Market Transaction | transactionID | 0 | See MarketTransactions API | |
| 10 | Player Donation | 0 | "DESC: " + user-entered text | The donating player is free to enter text with the transfer, which shows up in the reason column here. | |
| 17 | Bounty Prize | NPC Name | NPC ID | This was replaced with refTypeID 85 when Trinity was released. | |
| 19 | Insurance | Destroyed ship's typeID | 0 | See invTypes table. | |
| 35 | CSPA | Player name | Player characterID | Player is the person whom you're trying to contact. | |
| 37 | Corporation Account Withdrawl | Player name that performed corp account withdrawl | Player's ID | user-entered text | Similar to player donations; the donating corporation is free to enter text with the transfer, which shows up in the reason column here. |
| 46 | Broker Fee | EVE System | 1 | The market order commission fee for a market transaction. 'ownerName2' indicates to whom the fee was paid to. | |
| 56 | Manufacturing | Job ID | 0 | See Industry Jobs API. | |
| 63, 64, 71, 72, 73, 74, 79, 80, 81, 82 | Various contract types | Contract ID? | 0 | ||
| 85 | Bounty Prizes | solarSystemID (see mapSolarSystems table) | NPC ID:quantity killed[,id:qty[,...]] | 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. |
The complete refType reference can be accessed with the appropriate API. More information can be found here.
Journal Walking
The journal is configured to provide up to one month worth of data. Since each request returns at most 2560 entries, you can walk forwards and backwards in the journal to retrieve more entries.
Note: The rows in the result are mostly from "new to old". But CCP doesn't sort the results, so the return order of MSSQL is "undefined". You need to sort it yourself. (i.e. the bottom row is NOT ALWAYS the id, you wanna use for walking)
Walking Forwards
Each request to the journal API that does not specify the fromID parameter displays the newest journal entries. Thus walking forwards occurs automatically with each new request that does not specify a fromID.
Walking Backwards
Walking backwards is performed by specifying the lowest refID returned on your previous request as the fromID parameter of your next request. You will then receive a response with journal entries prior to this refID.
Programmatically, it will be easiest to just loop while you are getting the max number of entries from the server, stopping when the server returns less than the maximum number of rows. The server will return an empty rowset once you have exhausted all entries.