
EVE API for ruby
General
Working methods names can be listed by calling EVEApi::Client#working_methods.
Working methods
Check out rubydoc.info for the documentation.
Legacy methods are available here
Client
EVEApi::Client.newEVEApi::Client#charactersEVEApi::Client#server_statusEVEApi::Client#call_listEVEApi::Client#working_methodsEVEApi::Client#account_statusEVEApi::Client#key_info
Character
EVEApi::Character#wallet_journalEVEApi::Character#contractsEVEApi::Character#wallet_transactionsEVEApi::Character#upcoming_calendar_eventsEVEApi::Character#standingsEVEApi::Character#skill_queueEVEApi::Character#skill_in_trainingEVEApi::Character#researchEVEApi::Character#notificationsEVEApi::Character#medalsEVEApi::Character#market_ordersEVEApi::Character#mail_messagesEVEApi::Character#mailing_listsEVEApi::Character#industry_jobsEVEApi::Character#contact_notificationsEVEApi::Character#contact_listEVEApi::Character#character_sheetEVEApi::Character#asset_listEVEApi::Character#account_balance
Crest
EVEApi::Crest.newEVEApi::Crest#allaincesEVEApi::Crest#types
Alliance
EVEApi::Alliance.find(id = nil)EVEApi::Alliance#infoEVEApi::Alliance#corporationsEVEApi::Alliance#to_h
CREST
Rudimentary CREST support is added via the EVEApi::Crest class.
Working mehtods
a = Crest.new.alliances.select { |a| a.name == "Goonswarm Federation" }.first
=> #<EVEApi::Alliance:0x007fd511c48248 ...>
a.to_h
=> {
:href => "https://public-crest.eveonline.com/alliances/1354830081/",
:id_str => "1354830081",
:short_name => "CONDI",
:name => "Goonswarm Federation",
:id => 1354830081
}
a.info['url']
=> "http://www.goonfleet.com"
a.info.keys
=> [
[ 0] "startDate",
[ 1] "corporationsCount",
[ 2] "description",
[ 3] "executorCorporation",
[ 4] "primeHour_str",
[ 5] "primeHour",
[ 6] "deleted",
[ 7] "corporationsCount_str",
[ 8] "creatorCorporation",
[ 9] "url",
[10] "id_str",
[11] "creatorCharacter",
[12] "capitalSystem",
[13] "corporations",
[14] "shortName",
[15] "id",
[16] "name"
]
Description
EVE Online API Client for ruby
Features
Uses excon, crack, method_missing and a couple of rescue blocks to automate access to EVE Online API.
- returns results as
HashorArray - raises exceptions with messages from the API itself
- converts ruby methods like
account_api_infoto an EVE Online API request likeGET /account/APIKeyInfo.xml.aspxalong with query params.
Examples
Getting Implant names for character
require 'eveapi'
# initialize the client with key_id, vcode, character_id
client = Client.new(4278167, "supersecretstuff", 95512059)
# => #<EVEApi::Client:0x007fe349ad0d48 ... >
client.characters.first.character_sheet[:implants].map { |i| i[:type_name] }
# => [
# [0] "Social Adaptation Chip - Basic",
# [1] "Cybernetic Subprocessor - Standard",
# [2] "Memory Augmentation - Standard",
# [3] "Neural Boost - Standard",
# [4] "Ocular Filter - Standard"
# ]
Server status
require 'eveapi'
client.server_status
# => {
# :server_open => "True",
# :online_players => "32500"
# }
Showing accounts characters
require 'eveapi'
client = EVEApi::Client.new
client.key_id = 4278167
client.vcode = "7QJg6p5BZNpDBp2FIz39dGwa7jnNaXAuYyLUVitlTQ3rY60VPBcaTpJVfYIkiW5l"
client.characters
# => {
# :name => "Quint Slade",
# :character_id => "95512059",
# :corporation_name => "Imperial Academy",
# :corporation_id => "1000166",
# :alliance_id => "0",
# :alliance_name => "",
# :faction_id => "0",
# :faction_name => ""
# }
Requirements
excon and crack automatically installed as dependencies during gem install, or bundle install in development.
Install
$ gem install eveapi
Copyright
Copyright (c) 2015 Adam Ladachowski
See LICENSE.txt for details.