APIv2 Char JournalEntries XML

From EVEDev
Jump to: navigation, search
Api.pngAPI 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.

You cannot walk backwards more than a month.

References

  • Eve-O thread about refID [2]
  • CCP Prism X on forward walking [3]
  • API Patch notes for Incursion 1.4 [4]
Personal tools