diff --git a/GESI.gs b/GESI.gs index 988f694..90dec20 100644 --- a/GESI.gs +++ b/GESI.gs @@ -1,1383 +1,228 @@ // Google ESI (GESI) -// Modified version of https://github.com/googlesamples/apps-script-oauth2 to work with EVE SSO/ESI endpoints // // /u/blacksmoke16 @ Reddit // @Blacksmoke16#1684 @ Discord -app_version = '3.3.0'; +app_version = '4.0.0'; +BASE_URL = 'https://esi.tech.ccp.is' -// Setup variables used throughout script -CLIENT_ID = '7c382c66a6c8487d8b64e50daad86f9b'; -CLIENT_SECRET = 'CwcYrVs05AtIbqZkJH8OrBPYps6MAH72qQ1Gf68t'; -BASE_URL = 'https://esi.tech.ccp.is/v' - -CHARACTERS = [ - { - character_name: 'Blacksmoke16', - corporation_id: 98019139 - } - ]; - -AUTHING_CHARACTER = CHARACTERS[0]; - -URL_PARAMS = ['{event_id}', '{alliance_id}', '{schematic_id}', '{corporation_id}', '{division}', '{war_id}', '{planet_id}', '{type_id}', '{contract_id}', '{structure_id}', '{region_id}', '{observer_id}']; - -ENDPOINTS = { - // Alliances - - "allianceIds": { - "version": 1, - "url": "/alliances/", - "headers": ['alliance_ids'] - }, - "allianceNames": { - "version": 1, - "url": "/alliances/names/", - "headers": ['alliance_id', 'alliance_name'] - }, - "allianceId": { - "version": 3, - "url": "/alliances/{alliance_id}/", - "headers": ['name', 'ticker', 'executor_corporation_id', 'date_founded', 'creator_corporation_id', 'creator_id'] - }, - "allianceCorporations": { - "version": 1, - "url": "/alliances/{alliance_id}/corporations/", - "headers": ['corporation_ids'] - }, - "allianceIcons": { - "version": 1, - "url": "/alliances/{alliance_id}/icons/", - "headers": ['px128x128', 'px64x64'] - }, - - // Assets - - "characterAssets": { - "version": 3, - "url": "/characters/{character_id}/assets/", - "headers": ['item_id', 'type_id', 'quantity', 'location_id', 'location_type', 'location_flag', 'is_singleton'] - }, - - "corporationAssets": { - "version": 2, - "url": "/corporations/{corporation_id}/assets/", - "headers": ['item_id', 'type_id', 'quantity', 'location_id', 'location_type', 'location_flag', 'is_singleton'] - }, - - // Bookmarks - - "characterBookmarks": { - "version": 2, - "url": "/characters/{character_id}/bookmarks/", - "headers": ['bookmark_id', 'location_id', 'creator_id', 'created', 'notes', 'label', 'folder_id', 'item-item_id', 'item-type_id', 'coordinates-x', 'coordinates-y', 'coordinates-z'] - }, - "characterBookmarkFolders": { - "version": 1, - "url": "/characters/{character_id}/bookmarks/folders", - "headers": ['folder_id', 'name', 'owner_id'] - }, - "corporationBookmarks": { - "version": 1, - "url": "/corporations/{corporation_id}/bookmarks/", - "headers": ['bookmark_id', 'location_id', 'creator_id', 'created', 'notes', 'label', 'folder_id', 'item-item_id', 'item-type_id', 'coordinates-x', 'coordinates-y', 'coordinates-z'] - }, - "corporationBookmarkFolders": { - "version": 1, - "url": "/corporations/{corporation_id}/bookmarks/folders", - "headers": ['folder_id', 'name', 'creator_id'] - }, - - // Calendar - - "calenderEvents": { - "version": 1, - "url": "/characters/{character_id}/calendar/", - "headers": ['event_id', 'title', 'event_date', 'event_response', 'importance'] - }, - "calenderEvent": { - "version": 3, - "url": "/characters/{character_id}/calendar/{event_id}/", - "headers": ['event_id', 'date', 'title', 'text', 'duration', 'owner_id', 'owner_name', 'owner_type', 'response', 'importance'] - }, - - // Characters - - "characterBlueprints": { - "version": 2, - "url": "/characters/{character_id}/blueprints/", - "headers": ['item_id', 'type_id', 'location_id', 'location_flag', 'material_efficiency', 'time_efficiency', 'runs', 'quantity'] - }, - "characterNames": { - "version": 1, - "url": "/characters/names/", - "headers": ['character_id', 'character_name'] - }, - - // Contacts - - "allianceContacts": { - "version": 1, - "url": "/alliances/{alliance_id}/contacts/", - "headers": ['contact_id', 'contact_type', 'standing', 'label_id'] - }, - - // Contracts - - "characterContracts": { - "version": 1, - "url": "/characters/{character_id}/contracts/", - "headers": ['contract_id', 'issuer_id', 'assignee_id', 'acceptor_id', 'availability', 'type', 'title', 'status', 'issuer_corporation_id', 'for_corporation', 'date_issued', 'date_accepted', 'date_completed', 'date_expired', 'price', 'buyout', 'reward', 'collateral', 'volume', 'days_to_complete', 'start_location_id', 'end_location_id'] - }, - "characterContractsBids": { - "version": 1, - "url": "/characters/{character_id}/contracts/{contract_id}/bids/", - "headers": ['bid_id', 'date_bid', 'bidder_id', 'amount'] - }, - "characterContractItems": { - "version": 1, - "url": "/characters/{character_id}/contracts/{contract_id}/items/", - "headers": ['record_id', 'type_id', 'quantity', 'raw_quantity', 'is_included', 'is_singleton'] - }, - "corporationContracts": { - "version": 1, - "url": "/corporations/{corporation_id}/contracts/", - "headers": ['contract_id', 'issuer_id', 'assignee_id', 'acceptor_id', 'availability', 'type', 'title', 'status', 'issuer_corporation_id', 'for_corporation', 'date_issued', 'date_accepted', 'date_completed', 'date_expired', 'price', 'buyout', 'reward', 'collateral', 'volume', 'days_to_complete', 'start_location_id', 'end_location_id'] - }, - "corporationContractsBids": { - "version": 1, - "url": "/corporations/{corporation_id}/contracts/{contract_id}/bids/", - "headers": ['bid_id', 'date_bid', 'bidder_id', 'amount'] - }, - "corporationContractItems": { - "version": 1, - "url": "/corporations/{corporation_id}/contracts/{contract_id}/items/", - "headers": ['record_id', 'type_id', 'quantity', 'raw_quantity', 'is_included', 'is_singleton'] - }, - - // Corporation - - "corporationNames": { - "version": 2, - "url": "/corporations/names/", - "headers": ['corporation_id', 'corporation_name'] - }, - "corporationMembers": { - "version": 3, - "url": "/corporations/{corporation_id}/members/", - "headers": ['character_id'] - }, - "corporationMemberLimit": { - "version": 1, - "url": "/corporations/{corporation_id}/members/limit", - "headers": ['member_limit'] - }, - "corporationMemberTracking": { - "version": 1, - "url": "/corporations/{corporation_id}/membertracking/", - "headers": ['character_id', 'location_id', 'ship_type_id', 'logon_date', 'logoff_date', 'start_date'] - }, - "corporationStandings": { - "version": 1, - "url": "/corporations/{corporation_id}/standings/", - "headers": ['from_id', 'from_type', 'standing'] - }, - "corporationStructures": { - "version": 1, - "url": "/corporations/{corporation_id}/structures/", - "headers": ['structure_id', 'profile_id', 'system_id', 'type_id', 'corporation_id', 'fuel_expires', 'state_timer_start', 'state_timer_end', 'unanchors_at'] - }, - - // Industry - - "characterIndustryJobs": { - "version": 1, - "url": "/characters/{character_id}/industry/jobs/", - "headers": ['job_id', 'activity_id', 'blueprint_id', 'blueprint_location_id', 'blueprint_type_id', 'completed_character_id', 'completed_date', 'cost', 'duration', 'end_date', 'facility_id', 'installer_id', 'licensed_runs', 'output_location_id', 'pause_date', 'probability', 'product_type_id', 'runs', 'start_date', 'station_id', 'status', 'successful_runs'] - }, - "industryFacilities": { - "version": 1, - "url": "/industry/facilities/", - "headers": ['facility_id', 'type_id', 'solar_system_id', 'region_id', 'tax', 'owner_id'] - }, - "industrySystems": { - "version": 1, - "url": "/industry/systems/", - "headers": ['solar_system_id', 'manufacturing', 'researching_material_efficiency', 'researching_time_efficiency', 'copying', 'invention'] - }, - "characterMining": { - "version": 1, - "url": "/characters/{character_id}/mining", - "headers": ['date', 'solar_system_id', 'type_id', 'quantity'] - }, - "corporationExtractions": { - "version": 1, - "url": "/corporation/{corporation_id}/mining/extractions/", - "headers": ['structure_id', 'moon_id', 'extraction_start_time', 'chunk_arrival_time', 'natural_decay_time'] - }, - "corporationObservers": { - "version": 1, - "url": "/corporation/{corporation_id}/mining/observers/", - "headers": ['observer_id', 'last_updated', 'observer_type'] - }, - "corporationObserverMining": { - "version": 1, - "url": "/corporation/{corporation_id}/mining/observers/{observer_id}/", - "headers": ['character_id', 'recorded_corporation_id', 'type_id', 'quantity', 'last_updated'] - }, - - "corporationIndustryJobs": { - "version": 1, - "url": "/corporations/{corporation_id}/industry/jobs/", - "headers": ['job_id', 'activity_id', 'blueprint_id', 'blueprint_location_id', 'blueprint_type_id', 'completed_character_id', 'completed_date', 'cost', 'duration', 'end_date', 'facility_id', 'installer_id', 'licensed_runs', 'output_location_id', 'pause_date', 'probability', 'product_type_id', 'runs', 'start_date', 'station_id', 'status', 'successful_runs'] - }, - - // Loyalty - - "characterLoyalty": { - "version": 1, - "url": "/characters/{character_id}/loyalty/points/", - "headers": ['corporation_id', 'loyalty_points'] - }, - "corporationLoyalty": { - "version": 1, - "url": "/loyalty/stores/{corporation_id}/offers/", - "headers": ['offer_id', 'type_id', 'lp_cost', 'isk_cost', 'quantity'] - }, - - // Market - - "characterOrders": { - "version": 1, - "url": "/characters/{character_id}/orders/", - "headers": ['order_id', 'type_id', 'state', 'location_id', 'issued', 'is_buy_order', 'is_corp', 'account_id', 'price', 'escrow', 'range', 'volume_remain', 'volume_total', 'min_volume', 'duration'] - }, - "marketPrices": { - "version": 1, - "url": "/markets/prices/", - "headers": ['type_id', 'average_price', 'adjusted_price'] - }, - "structureOrders": { - "version": 1, - "url": "/markets/structures/{structure_id}/", - "headers": ['order_id', 'type_id', 'location_id', 'issued', 'is_buy_order', 'price', 'range', 'volume_remain', 'volume_total', 'min_volume', 'duration'] - }, - "itemHistory": { - "version": 1, - "url": "/markets/{region_id}/history/", - "headers": ['date', 'average', 'highest', 'lowest', 'order_count', 'volume'] - }, - "regionOrders": { - "version": 1, - "url": "/markets/{region_id}/orders/", - "headers": ['order_id', 'type_id', 'location_id', 'issued', 'is_buy_order', 'price', 'range', 'volume_remain', 'volume_total', 'min_volume', 'duration'] - }, - - // Planets - - "characterPlanets": { - "version": 1, - "url": "/characters/{character_id}/planets/", - "headers": ['planet_id', 'planet_type', 'solar_system_id', 'owner_id', 'upgrade_level', 'last_update', 'num_pins'] - }, - "characterPlanetDetails": { - "version": 3, - "url": "/characters/{character_id}/planets/{planet_id}/" - }, - "planetSchematic": { - "version": 1, - "url": "/universe/schematics/{schematic_id}/", - "headers": ['schematic_name', 'cycle_time'] - }, - - // Skills - - "characterAttributes": { - "version": 1, - "url": "/characters/{character_id}/attributes/", - "headers": ['charisma', 'intelligence', 'perception', 'memory', 'willpower'] - }, - "skillQueue": { - "version": 2, - "url": "/characters/{character_id}/skillqueue/", - "headers": ['skill_id', 'queue_position', 'finished_level', 'start_date', 'finish_date'] - }, - "characterSkills": { - "version": 4, - "url": "/characters/{character_id}/skills/", - "headers": ['skill_id', 'active_skill_level', 'trained_skill_level', 'skillpoints_in_skill'] - }, - - // Sovereignty - - "sovereigntyCampaigns": { - "version": 1, - "url": "/sovereignty/campaigns/", - "headers": ['campaign_id', 'structure_id', 'solar_system_id', 'constellation_id', 'event_type', 'defender_id', 'defender_score', 'attackers_score', 'start_time'] - }, - "sovereigntyMap": { - "version": 1, - "url": "/sovereignty/map/", - "headers": ['system_id', 'corporation_id', 'alliance_id', 'faction_id'] - }, - "sovereigntyStructures": { - "version": 1, - "url": "/sovereignty/structures/", - "headers": ['solar_system_id', 'structure_id', 'structure_type_id', 'alliance_id', 'vulnerability_occupancy_level', 'vulnerable_start_time', 'vulnerable_end_time'] - }, - - // Universe - - "structures": { - "version": 1, - "url": "/universe/structures/", - "headers": ['structure_ids'] - }, - "structure": { - "version": 1, - "url": "/universe/structures/{structure_id}/", - "headers": ['solar_system_id', 'type_id', 'name', 'position-x', 'position-y', 'position-z'] - }, - "typeId": { - "version": 3, - "url": "/universe/types/{type_id}/", - "headers": ['type_id', 'name', 'group_id', 'description', 'capacity', 'volume', 'packaged_volume', 'portion_size', 'radius', 'mass', 'market_group_id', 'icon_id', 'graphic_id', 'published'] - }, - - // Wallet - - "characterWallet": { - "version": 1, - "url": "/characters/{character_id}/wallet/", - "headers": ['balance'] - }, - "characterWalletJournal": { - "version": 3, - "url": "/characters/{character_id}/wallet/journal", - "headers": ['ref_id', 'date', 'amount', 'balance', 'first_party_id', 'first_party_type', 'reason', 'ref_type', 'second_party_id', 'second_party_type', 'tax', 'tax_reciever_id', 'extra_info-alliance_id', 'extra_info-character_id', 'extra_info-contract_id', 'extra_info-destroyed_ship_type_id', 'extra_info-job_id', 'extra_info-location_id', 'extra_info-npc_id', 'extra_info-npc_name', 'extra_info-planet_id', 'extra_info-system_id', 'extra_info-transaction_id'] - }, - "characterWalletTransactions": { - "version": 1, - "url": "/characters/{character_id}/wallet/transactions/", - "headers": ['transaction_id', 'date', 'quantity', 'type_id', 'unit_price', 'location_id', 'journal_ref_id', 'client_id', 'is_buy', 'is_personal'] - }, - "corporationWallets": { - "version": 1, - "url": "/corporations/{corporation_id}/wallets/", - "headers": ['division', 'balance'] - }, - "corporationWalletJournal": { - "version": 2, - "url": "/corporations/{corporation_id}/wallets/{division}/journal/", - "headers": ['ref_id', 'date', 'amount', 'balance', 'first_party_id', 'first_party_type', 'reason', 'ref_type', 'second_party_id', 'second_party_type', 'tax', 'tax_reciever_id', 'extra_info-alliance_id', 'extra_info-character_id', 'extra_info-contract_id', 'extra_info-destroyed_ship_type_id', 'extra_info-job_id', 'extra_info-location_id', 'extra_info-npc_id', 'extra_info-npc_name', 'extra_info-planet_id', 'extra_info-system_id', 'extra_info-transaction_id'] - }, - "corporationWalletTransactions": { - "version": 1, - "url": "/corporations/{corporation_id}/wallets/{division}/transactions/", - "headers": ['transaction_id', 'date', 'client_id', 'location_id', 'type_id', 'quantity', 'unit_price', 'is_buy', 'journal_ref_id'] - }, - - // Wars - - "wars": { - "version": 1, - "url": "/wars", - "headers": ['war_ids'] - }, - "war": { - "version": 1, - "url": "/wars/{war_id}/", - "headers": ['id', 'mutual', 'open_for_allies', 'declared', 'started', 'finished', 'aggressor-corporation_id', 'aggressor-alliance_id', 'aggressor-isk_destroyed', 'aggressor-ships_killed', 'defender-corporation_id', 'defender-alliance_id', 'defender-isk_destroyed', 'defender-ships_killed', 'ally-alliance_id', 'ally-corporation_id'] - }, - "warKillmails": { - "version": 1, - "url": "/wars/{war_id}/killmails", - "headers": ['killmail_id', 'killmail_hash'] - } -}; - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Alliances -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Returns a list of Alliance IDs - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of Alliance IDs. - * @customfunction - */ -function allianceIds(opt_headers) { - return getArrayResponse_(arguments.callee.name, '', opt_headers); -} - -/** - * Resolve a set of alliance IDs to alliance names - * @param {number|Array.} alliance_ids alliance_id(s) to resolve - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of id/name associations. - * @customfunction - */ -function allianceNames(alliance_ids, opt_headers) { - if (!alliance_ids) throw 'A value or range of alliance ids is required'; - return getNames_(alliance_ids, arguments.callee.name, 'alliance_ids', opt_headers); -} - -/** - * Public information about an alliance - * @param {number} alliance_id ID of the alliance to get information on - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Public data about an alliance - * @customfunction - */ -function allianceId(alliance_id, opt_headers) { - if (!alliance_id) throw 'alliance_id is required'; - return getObjectResponse_(arguments.callee.name, '', opt_headers, { - alliance_id: alliance_id - }); -} - -/** - * List all current member corporations of an alliance - * @param {number} alliance_id ID of the alliance to get corporations for - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of corporation IDs - * @customfunction - */ -function allianceCorporations(alliance_id, opt_headers) { - if (!alliance_id) throw 'alliance_id is required'; - return getArrayResponse_(arguments.callee.name, '', opt_headers, { - alliance_id: alliance_id - }); -} - -/** - * Get the icon urls for a alliance - * @param {number} alliance_id ID of the alliance to get icons for - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Urls for icons for the given alliance id and server - * @customfunction - */ -function allianceIcons(alliance_id, opt_headers) { - if (!alliance_id) throw 'alliance_id is required'; - return getObjectResponse_(arguments.callee.name, '', opt_headers, { - alliance_id: alliance_id - }); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Assets -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Returns a list of the character's assets. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of the characters assets. - * @customfunction - */ -function characterAssets(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * Return a list of the corporation assets - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of the corporation's assets. - * @customfunction - */ -function corporationAssets(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Bookmarks -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * List your character's personal bookmarks - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of bookmarks - * @customfunction - */ -function characterBookmarks(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, true, page); -} - -/** - * List your character's personal bookmark folders - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of bookmark folders - * @customfunction - */ -function characterBookmarkFolders(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * A list of your corporation’s bookmarks - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of bookmarks - * @customfunction - */ -function corporationBookmarks(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, true, page); -} - -/** - * List your corporation's bookmark folders - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of bookmark folders - * @customfunction - */ -function corporationBookmarkFolders(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Calendar -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Get 50 event summaries from the calendar. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A collection of event summaries - * @customfunction - */ -function calenderEvents(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Get all the information for a specific event - * @param {number} event_id ID of the event to get information for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Full details of a specific event - * @customfunction - */ -function calenderEvent(event_id, name, opt_headers) { - if (!event_id) throw 'An event id is required'; - return getObjectResponse_(arguments.callee.name, name, opt_headers, { - event_id: event_id - }, true); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Character -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Resolve a set of character IDs to character names - * @param {number|Array.} character_id(s) to resolve - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of id/name associations. - * @customfunction - */ -function characterNames(character_ids, opt_headers) { - if (!character_ids) throw 'A value or range of character ids is required'; - return getNames_(character_ids, arguments.callee.name, 'character_ids', opt_headers); -} - -/** - * Return a list of blueprints the character has - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of blueprints - * @customfunction - */ -function characterBlueprints(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Contacts -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Return contacts of an alliance. - * @param {number} alliance_id of the alliance to get standings for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of contacts - * @customfunction - */ -function allianceContacts(alliance_id, name, page, opt_headers) { - if (!alliance_id) throw 'alliance_idis required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {alliance_id: alliance_id}, true, false, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Contracts -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Returns contracts available to a character, only if the character is issuer, acceptor or assignee. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of contracts - * @customfunction - */ -function characterContracts(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Lists bids on a particular auction contract - * @param {number} contract_id of the contract to get bids for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of bids - * @customfunction - */ -function characterContractBids(contract_id, name, opt_headers) { - if (!contract_id) throw 'contract_id is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {contract_id: contract_id}, true); -} - -/** - * Lists Items and details of a particular contract - * @param {number} contract_id of the contract to get items for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of items - * @customfunction - */ -function characterContractItems(contract_id, name, opt_headers) { - if (!contract_id) throw 'contract_id is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {contract_id: contract_id}, true); -} - -/** - * Returns contracts available to a coporation, only if the corporation is issuer, acceptor or assignee. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of contracts - * @customfunction - */ -function corporationContracts(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Lists bids on a particular auction contract - * @param {number} contract_id of the contract to get bids for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of bids - * @customfunction - */ -function corporationContractBids(contract_id, name, opt_headers) { - if (!contract_id) throw 'contract_id is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {contract_id: contract_id}, true); -} - -/** - * Lists Items and details of a particular contract - * @param {number} contract_id of the contract to get items for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of items - * @customfunction - */ -function corporationContractItems(contract_id, name, opt_headers) { - if (!contract_id) throw 'contract_id is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {contract_id: contract_id}, true); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Corporations -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Resolve a set of corporation IDs to corporation names - * @param {number|Array.} corporation_id(s) to resolve - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of id/name associations. - * @customfunction - */ -function corporationNames(corporation_ids, opt_headers) { - if (!corporation_ids) throw 'A range of corporation ids is required'; - return getNames_(corporation_ids, arguments.callee.name, 'corporation_ids', opt_headers); -} - -/** - * Read the current list of members if the calling character is a member. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of member character IDs - * @customfunction - */ -function corporationMembers(name, opt_headers) { - return getArrayResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Return a corporation's member limit, not including CEO himself - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Member limit - * @customfunction - */ -function corporationMemberLimit(name, opt_headers) { - return getSingleResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Returns additional information about a corporation's members which helps tracking their activities - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of member information - * @customfunction - */ -function corporationMemberTracking(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Return corporation standings from agents, NPC corporations, and factions - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of standings - * @customfunction - */ -function corporationStandings(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * Get a list of corporation structures - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of corporation structures' information - * @customfunction - */ -function corporationStructures(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, true, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Industry -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * List industry jobs placed by a character - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Industry jobs placed by a character - * @customfunction - */ -function characterIndustryJobs(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Return a list of industry facilities - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of facilities - * @customfunction - */ -function industryFacilities(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, {}); -} - -/** - * Return cost indices for solar systems - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of cost indicies - * @customfunction - */ -function industrySystems(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, {}, false, true); -} - -/** - * Paginated record of all mining done by a character for the past 30 days - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Mining ledger of a character - * @customfunction - */ -function characterMining(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * Extraction timers for all moon chunks being extracted by refineries belonging to a corporation. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of chunk timers - * @customfunction - */ -function corporationExtractions(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * Paginated list of all entities capable of observing and recording mining for a corporation - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Observer list of a corporation - * @customfunction - */ -function corporationObservers(name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true, false, page); -} - -/** - * Paginated record of all mining seen by an observer - * @param {number} observer_id ID of the observer to get mining ledger from - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Mining ledger of an observer - * @customfunction - */ -function corporationObserverMining(observer_id, name, page, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - observer_id: observer_id - }, true, false, page); -} - -/** - * List industry jobs run by a corporation - * @param {number} corporation_id ID of the corporation of the character used. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of corporation industry jobs - * @customfunction - */ -function corporationIndustryJobs(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Loyalty -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Return a list of loyalty points for all corporations the character has worked for - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of loyalty points - * @customfunction - */ -function characterLoyalty(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Return a list of offers from a specific corporation's loyalty store - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of offers - * @customfunction - */ -function corporationLoyalty(corporation_id, opt_headers) { - if (!corporation_id) throw 'corporation_id is required'; - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, { - corporation_id: corporation_id - }, false); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Market -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * List market orders placed by a character - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Market orders placed by a character - * @customfunction - */ -function characterOrders(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Return a list of prices - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of prices - * @customfunction - */ -function marketPrices(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, {}); -} - -/** - * Return a list of prices - * @param {number} structure_id id of structure to get orders from - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of orders - * @customfunction - */ -function structureOrders(structure_id, name, page, opt_headers) { - if (!structure_id) throw 'structure_id is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - structure_id: structure_id - }, true, false, page); -} - -/** - * Return a list of historical market statistics for the specified type in a region - * @param {number} region_id id of region to get orders from - * @param {number} type_id Optional id to limit type_id of orders - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of historical market statistics - * @customfunction - */ -function itemHistory(region_id, type_id, opt_headers) { - if (!region_id) throw 'region_id is required'; - if (!type_id) throw 'type_id is required'; - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, { - region_id: region_id, - type_id: type_id - }); -} - -/** - * Return a list of orders in a region - * @param {number} region_id id of region to get orders from - * @param {number} type_id Optional id to limit type_id of orders - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of prices - * @customfunction - */ -function regionOrders(region_id, type_id, page, opt_headers) { - if (!region_id) throw 'region_id is required'; - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, { - region_id: region_id, - type_id: type_id - }, false, false, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Planets -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Returns a list of all planetary colonies owned by a character. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns a list of all planetary colonies owned by a character. - * @customfunction - */ -function characterPlanets(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Returns full details on the layout of a single planetary colony, including links, pins and routes. - * @param {number} planet_id of the planet to get details on - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Colony layout - * @customfunction - */ -function characterPlanetDetails(planet_id, name, opt_headers) { - if (!planet_id) throw 'planet_id is required'; - return characterPlanetDetails_(arguments.callee.name, name, opt_headers, { - planet_id: planet_id - }, true); -} +// Your email address +// This is used and sent in the User-Agent header on ESI requests so that CCP know who that request came from. +// In the case of a users' specific script is putting too much load on their servers they have a way to contact you. +// I do not see this or use it in any way. +EMAIL = 'YOUR_EMAIL'; -/** - * Returns information on a planetary factory schematic. - * @param {number} schematic_id ID of the schematic to get information on. - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Returns information on a planetary factory schematic. - * @customfunction - */ -function planetSchematic(schematic_id, name, opt_headers) { - if (!schematic_id) throw 'schematic_id is required'; - return getObjectResponse_(arguments.callee.name, name, opt_headers, { - schematic_id: schematic_id - }) -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Skills -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Return attributes of a character - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Attributes of a character - * @customfunction - */ -function characterAttributes(name, opt_headers) { - return getObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * List the configured skill queue for the given character - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return The current skill queue, sorted ascending by finishing time - * @customfunction - */ -function skillQueue(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * List all trained skills for the given character - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Known skills for the character - * @customfunction - */ -function characterSkills(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Sovereignty -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +// Setup variables used throughout script +// From your dev app https://developers.eveonline.com/applications +CLIENT_ID = 'YOUR_CLIENT_ID'; +CLIENT_SECRET = 'YOUR_CLIENT_SECRET'; -/** - * Shows sovereignty data for campaigns. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of sovereignty campaigns - * @customfunction - */ -function sovereigntyCampaigns(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers); -} +// From the script editor -> file -> project properties -> Script ID +SCRIPT_ID = 'YOUR_SCRIPT_ID'; -/** - * Shows sovereignty information for solar systems - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of sovereignty information for solar systems in New Eden - * @customfunction - */ -function sovereigntyMap(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers); -} +// Array of character names +// Used for authing +CHARACTERS = ['YOUR_CHARACTER_NAME']; -/** - * Shows sovereignty data for structures. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of sovereignty structures - * @customfunction - */ -function sovereigntyStructures(opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers); -} +// Current 'main' character used when a function is called without a character name as a param +// Also acts as what character from the CHARACTERS array will be authed +AUTHING_CHARACTER = CHARACTERS[0]; -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Universe -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +// List of scopes to request +SCOPES = [ + "esi-alliances.read_contacts.v1", + "esi-assets.read_assets.v1", + "esi-assets.read_corporation_assets.v1", + "esi-bookmarks.read_character_bookmarks.v1", + "esi-bookmarks.read_corporation_bookmarks.v1", + "esi-calendar.read_calendar_events.v1", + "esi-calendar.respond_calendar_events.v1", + "esi-characters.read_agents_research.v1", + "esi-characters.read_blueprints.v1", + "esi-characters.read_chat_channels.v1", + "esi-characters.read_contacts.v1", + "esi-characters.read_corporation_roles.v1", + "esi-characters.read_fatigue.v1", + "esi-characters.read_fw_stats.v1", + "esi-characters.read_loyalty.v1", + "esi-characters.read_medals.v1", + "esi-characters.read_notifications.v1", + "esi-characters.read_opportunities.v1", + "esi-characters.read_standings.v1", + "esi-characters.read_titles.v1", + "esi-characters.write_contacts.v1", + "esi-characterstats.read.v1", + "esi-clones.read_clones.v1", + "esi-clones.read_implants.v1", + "esi-contracts.read_character_contracts.v1", + "esi-contracts.read_corporation_contracts.v1", + "esi-corporations.read_blueprints.v1", + "esi-corporations.read_contacts.v1", + "esi-corporations.read_container_logs.v1", + "esi-corporations.read_corporation_membership.v1", + "esi-corporations.read_divisions.v1", + "esi-corporations.read_facilities.v1", + "esi-corporations.read_fw_stats.v1", + "esi-corporations.read_medals.v1", + "esi-corporations.read_outposts.v1", + "esi-corporations.read_standings.v1", + "esi-corporations.read_starbases.v1", + "esi-corporations.read_structures.v1", + "esi-corporations.read_titles.v1", + "esi-corporations.track_members.v1", + "esi-corporations.write_structures.v1", + "esi-fittings.read_fittings.v1", + "esi-fittings.write_fittings.v1", + "esi-fleets.read_fleet.v1", + "esi-fleets.write_fleet.v1", + "esi-industry.read_character_jobs.v1", + "esi-industry.read_character_mining.v1", + "esi-industry.read_corporation_jobs.v1", + "esi-industry.read_corporation_mining.v1", + "esi-killmails.read_corporation_killmails.v1", + "esi-killmails.read_killmails.v1", + "esi-location.read_location.v1", + "esi-location.read_online.v1", + "esi-location.read_ship_type.v1", + "esi-mail.organize_mail.v1", + "esi-mail.read_mail.v1", + "esi-mail.send_mail.v1", + "esi-markets.read_character_orders.v1", + "esi-markets.read_corporation_orders.v1", + "esi-markets.structure_markets.v1", + "esi-planets.manage_planets.v1", + "esi-planets.read_customs_offices.v1", + "esi-search.search_structures.v1", + "esi-skills.read_skillqueue.v1", + "esi-skills.read_skills.v1", + "esi-ui.open_window.v1", + "esi-ui.write_waypoint.v1", + "esi-universe.read_structures.v1", + "esi-wallet.read_character_wallet.v1", + "esi-wallet.read_corporation_wallets.v1" +]; + +function onOpen() { + SpreadsheetApp.getUi().createMenu('GESI') + .addItem('Authorize Sheet', 'showSidebar') + .addSeparator() + .addItem('Reset Auth', 'resetAuth') + .addToUi(); -/** - * List all public structures - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of public structure IDs - * @customfunction - */ -function structures(opt_headers) { - return getArrayResponse_(arguments.callee.name, '', opt_headers); } -/** - * Returns information on requested structure, if you are on the ACL. Otherwise, returns "Forbidden" for all inputs. - * @param {string} structure_id structure_id of structure to get information on - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Data about a structure - * @customfunction - */ -function structure(structure_id, opt_headers) { - if (!structure_id) throw 'structure_id is required'; - return getObjectResponse_(arguments.callee.name, '', opt_headers, { - structure_id: structure_id - }, true, true); -} +/** +* Parses array data into more readable format +* @param {string} endpoint_name Name of the endpoint data to be parsed is from. +* @param {string} column_name Name of the column to be parsed. +* @param {array} array Cell that holds the array data to be parsed. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Parsed array data. +* @customfunction +*/ +function parseArray(endpoint_name, column_name, array, opt_headers) { + var headers = []; + var result = []; + var endpoint = findObjectByKey(ENDPOINTS[endpoint_name].headers, 'name', column_name); + if (opt_headers || undefined === opt_headers) result.push(endpoint.sub_headers.map(function(h) { return h })); -/** - * Get information on a type - * @param {string} type_id type_id of item to get information on - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Information about a type - * @customfunction - */ -function typeId(type_id, opt_headers) { - if (!type_id) throw 'type_id is required'; - return getObjectResponse_(arguments.callee.name, '', opt_headers, { - type_id: type_id + JSON.parse(array).forEach(function(a) { + var temp = []; + endpoint.sub_headers.forEach(function(k) { temp.push(a[k]) }); + result.push(temp); }); + return result; } // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Wallet -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Returns a character's wallet balance - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return balance - * @customfunction - */ -function characterWallet(name, opt_headers) { - return getSingleResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Retrieve character wallet journal - * @param {number} from_id Only show transactions happened before the one referenced by this id - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Journal entries - * @customfunction - */ -function characterWalletJournal(from_id, name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - from_id: from_id - }, true); -} - -/** - * Get wallet transactions of a character - * @param {number} from_id Only show transactions happened before the one referenced by this id - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Wallet transactions - * @customfunction - */ -function characterWalletTransactions(from_id, name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - from_id: from_id - }, true); -} - -/** - * Get a corporation's wallets - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return List of corporation wallets - * @customfunction - */ -function corporationWallets(name, opt_headers) { - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, {}, true); -} - -/** - * Retrieve corporation wallet journal - * @param {number} division ID of the division to get wallet journal from - * @param {number} from_id Only show journal entries that happened before the one referenced by this id - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Journal entries - * @customfunction - */ -function corporationWalletJournal(division, from_id, name, opt_headers) { - if (!division) throw 'division is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - division: division, - from_id: from_id - }, true, true); -} - -/** - * Get wallet transactions of a corporation - * @param {number} division ID of the division to get wallet transactions from - * @param {number} from_id Only show transactions happened before the one referenced by this id - * @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Wallet transactions - * @customfunction - */ -function corporationWalletTransactions(division, from_id, name, opt_headers) { - if (!division) throw 'division is required'; - return getArrayObjectResponse_(arguments.callee.name, name, opt_headers, { - division: division, - from_id: from_id - }, true, false); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Wars -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- - -/** - * Return a list of wars - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of war IDs, in decending order by war_id. - * @customfunction - */ -function wars(opt_headers) { - return getArrayResponse_(arguments.callee.name, '', opt_headers); -} - - -/** - * Return details about a war - * @param {number} war_id ID of the war to get information on - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return Details about a war - * @customfunction - */ -function war(war_id, opt_headers) { // 291410 RVB War ID - if (!war_id) throw 'war_id is required'; - return getObjectResponse_(arguments.callee.name, '', opt_headers, { - war_id: war_id - }, false, true); -} - -/** - * Return a list of kills related to a war - * @param {number} war_id ID of the war to get killmails for - * @param {number} page page number of response to fetch. Defauts to page 1 - * @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. - * @return A list of killmail IDs and hashes - * @customfunction - */ -function warKillmails(war_id, page, opt_headers) { - if (!war_id) throw 'war_id is required'; - return getArrayObjectResponse_(arguments.callee.name, '', opt_headers, { - war_id: war_id - }, false, false, page); -} - -// ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// Private Functions +// Private Utility Functions // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -function getData_(endpoint_name, character, page, params, authed) { - character = (!character) ? AUTHING_CHARACTER : findUser_(character); - - var userProperties = PropertiesService.getUserProperties(); - var eveService = createOAuthForUser(character.character_name); - var url = ENDPOINTS[endpoint_name].url + '?'; - - if (page) url += 'page=' + page; - - if (url.indexOf('{character_id}') !== -1) url = url.replace('{character_id}', parseInt(userProperties.getProperty(character.character_name))); - if (url.indexOf('{corporation_id}') !== -1 && endpoint_name !== 'corporationLoyalty') url = url.replace('{corporation_id}', parseInt(character.corporation_id)); - - if ((endpoint_name === 'regionOrders' || endpoint_name === 'itemHistory') && typeof(params.type_id) === 'number') url = url + '&type_id=' + params.type_id; - if (endpoint_name.indexOf('Wallet') !== -1 && typeof(params.from_id) === 'number') url = url + '&from_id=' + params.from_id; - - if (endpoint_name.indexOf('Names') !== -1) { - var key = Object.keys(params)[0]; - var values = params[Object.keys(params)[0]]; - url = url + '&' + key + '=' + values.join(); - } - - for (var p = 0; p < URL_PARAMS.length; p++) { - if (url.indexOf(URL_PARAMS[p]) !== -1) { - url = url.replace(URL_PARAMS[p], params[URL_PARAMS[p].replace('{', '').replace('}', '')]); +function getData_(endpoint_name, params) { + var authed = ENDPOINTS[endpoint_name].authed; + var documentProperties = PropertiesService.getDocumentProperties(); + var path = ENDPOINTS[endpoint_name].path; + var cache = CacheService.getDocumentCache(); + var name = params.name; + if (!name) name = AUTHING_CHARACTER; + + ENDPOINTS[endpoint_name].parameters.forEach(function(param) { + if (param['in'] === 'path' && params[param.name]) { + path = path.replace('{' + param.name + '}', params[param.name]) + } else if (param['in'] === 'query' && params[param.name]) { + path += path.indexOf('?') !== -1 ? '&' : '?'; + path += param.name + '=' + (Array.isArray(params[param.name]) ? params[param.name].join(',') : params[param.name]); } - } + }); + + if (path.indexOf('{character_id}') !== -1) path = path.replace('{character_id}', parseInt(documentProperties.getProperty(name + '_character_id'))); + if (path.indexOf('{alliance_id}') !== -1) path = path.replace('{alliance_id}', parseInt(documentProperties.getProperty(name + '_alliance_id'))); + if (path.indexOf('{corporation_id}') !== -1 && endpoint_name !== 'corporationLoyalty') path = path.replace('{corporation_id}', parseInt(documentProperties.getProperty(name + '_corporation_id'))); - if (!authed) return JSON.parse(UrlFetchApp.fetch(BASE_URL + ENDPOINTS[endpoint_name].version + url)); + if (!authed) return JSON.parse(UrlFetchApp.fetch(BASE_URL + path)); + + var token = cache.get(name + '_access_token'); + if (!token) token = refreshToken_(name); - var response = UrlFetchApp.fetch(BASE_URL + ENDPOINTS[endpoint_name].version + url, { + var response = UrlFetchApp.fetch(BASE_URL + path, { headers: { - Authorization: 'Bearer ' + eveService.getAccessToken() + Authorization: 'Bearer ' + token } }); - + return JSON.parse(response); } -function getArrayObjectResponse_(endpoint_name, character, opt_headers, params, authed, isNested, page) { - var data = getData_(endpoint_name, character, page, params, authed); - - if (endpoint_name === 'characterSkills') data = data['skills']; - if (endpoint_name === 'industrySystems') data = deArrayIndex_(data); - +function parseData_(endpoint_name, params) { + var data = getData_(endpoint_name, params); + var endpoint = ENDPOINTS[endpoint_name]; var result = []; - if (opt_headers === undefined) opt_headers = true; - if (opt_headers) result.push(convertSnakeCase_(ENDPOINTS[endpoint_name].headers)); - if (data.length === 0 && result.length > 0) { - return result; - } else if (data.length === 0 && result.length === 0) { - return null; - } - - for (var i = 0; i < data.length; i++) { + var headers = []; + + var opt_headers = params.opt_headers; + if (opt_headers || undefined === opt_headers) result.push(endpoint.headers.map(function(h) { return h.name })); + + if (endpoint.response_type === 'array' && endpoint.item_type === 'object') { + data.forEach(function(obj) { + var temp = []; + endpoint.headers.forEach(function(header) { + temp.push(parseObject_(obj, header)); + }); + result.push(temp); + }); + } else if (endpoint.response_type === 'object' && endpoint.item_type === 'object') { var temp = []; - if (isNested) data[i] = flatten_(data[i]); - for (var k = 0; k < ENDPOINTS[endpoint_name].headers.length; k++) { - data_value = data[i][ENDPOINTS[endpoint_name].headers[k]]; - temp.push(data_value); - } - result.push(temp); + endpoint.headers.forEach(function(header) { + temp.push(parseObject_(data, header)); + }); + result.push(temp); + } else if (endpoint.response_type === 'array' && endpoint.item_type === 'integer') { + data.forEach(function(dp) { + result.push(dp); + }); + } else if (endpoint.response_type === 'integer' || endpoint.response_type === 'number') { + result.push(data); } - + return result; -}; - -function getObjectResponse_(endpoint_name, character, opt_headers, params, authed, isNested, page) { - var data = getData_(endpoint_name, character, page, params, authed); - - var result = []; - if (opt_headers === undefined) opt_headers = true; - if (opt_headers) result.push(convertSnakeCase_(ENDPOINTS[endpoint_name].headers)); - if (isNested) data = flatten_(data); +} - var temp = []; - for (var k = 0; k < ENDPOINTS[endpoint_name].headers.length; k++) { - temp.push(data[ENDPOINTS[endpoint_name].headers[k]]); +function parseObject_(source, header) { + if (header.type === 'array') { + return JSON.stringify(source[header.name]); + } else if (typeof source === 'object') { + var flat_obj = flatten_(source); + return flat_obj[header.name]; + } else { + return source[header.name]; } - result.push(temp); - - return result; -}; - - -// Private function for basic array of value responses -function getArrayResponse_(endpoint_name, character, opt_headers, params, authed, page) { - var data = getData_(endpoint_name, character, page, params, authed); - - var result = []; - if (opt_headers === undefined) opt_headers = true; - if (opt_headers) result.push(convertSnakeCase_(ENDPOINTS[endpoint_name].headers)); - - for (var i = 0; i < data.length; i++) { - result.push(data[i]); - }; - - return result; -}; - -// Private function for single value responses -function getSingleResponse_(endpoint_name, character, opt_headers, params, authed, page) { - var data = getData_(endpoint_name, character, page, params, authed); - - var result = []; - if (opt_headers === undefined) opt_headers = true; - if (opt_headers) result.push(convertSnakeCase_(ENDPOINTS[endpoint_name].headers)); - result.push(data); - - return result; -}; +} +function extend_(obj, src) { + for (var key in src) { + if (src.hasOwnProperty(key)) obj[key] = src[key]; + } + return obj; +} function flatten_(ob) { var toReturn = {}; @@ -1398,240 +243,78 @@ function flatten_(ob) { return toReturn; }; -function chunkArray_(a, c) { - var g = [], i; - for (i = 0; i < a.length; i += c) { - g.push(a.slice(i, i + c)); - } - return g; -} - -function findUser_(name) { - for (var i = 0; i < CHARACTERS.length; i++) { - if (name === CHARACTERS[i].character_name) return CHARACTERS[i]; - } -} - - -function getNames_(ids, function_name, type, opt_headers) { - var names = []; - var params = {} - var data = Array.isArray(ids) ? chunkArray_(ids, 100) : [ - [ids] - ]; - for (var d = 0; d < data.length; d++) { - data[d] = data[d].filter(function(str) { - return /\S/.test(str) - }); - if (data[d].length === 0) continue; - params[type] = data[d]; - var result = getArrayObjectResponse_(function_name, '', opt_headers, params); - if (d >= 1 && (opt_headers === true || opt_headers === undefined)) result.shift(); - names = names.concat(result); +function findObjectByKey(array, key, value) { + for (var i = 0; i < array.length; i++) { + if (array[i][key] === value) { + return array[i]; + } } - - return names; + return null; } // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -// OAth2 Functions +// Auth Functions // ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -function getToken() { - return createOAuthForUser(AUTHING_CHARACTER.character_name).getAccessToken(); -} - -function onOpen() { - SpreadsheetApp.getUi().createMenu('GESI') - .addItem('Authorize Sheet', 'showSidebar') - .addSeparator() - .addItem('Reset Auth', 'clearService') - .addToUi(); - +function authCallback(request) { + var tokenData = getAccessToken_(request.parameter.code); + var characterData = extend_(tokenData, getCharacterDetails_(tokenData['access_token'])); + var affiliationData = getCharacterAffiliation_(characterData['CharacterID'])[0]; + var userData = extend_(characterData, affiliationData); + cacheData_(userData); + return HtmlService.createHtmlOutput('Thank you for using GESI ' + userData['CharacterName']); } function showSidebar() { - var eveService = createOAuthForUser(AUTHING_CHARACTER.character_name); - if (!eveService.hasAccess()) { - var authorizationUrl = eveService.getAuthorizationUrl(); - var template = HtmlService.createTemplate( - '
Authorize: .'); - template.authorizationUrl = authorizationUrl; - template.character = AUTHING_CHARACTER.character_name; - var page = template.evaluate(); - SpreadsheetApp.getUi().showSidebar(page); - } + var scriptUrl = 'https://script.google.com/macros/d/' + SCRIPT_ID + '/usercallback'; + var stateToken = ScriptApp.newStateToken().withMethod('authCallback').withTimeout(3600).createToken(); + var authorizationUrl = 'https://login.eveonline.com/oauth/authorize/?response_type=code&redirect_uri=' + scriptUrl + '&client_id=' + CLIENT_ID + '&scope=' + SCOPES.join('+') + '&state=' + stateToken; + var template = HtmlService.createTemplate('
Authorize: .'); + template.authorizationUrl = authorizationUrl; + template.character = AUTHING_CHARACTER; + SpreadsheetApp.getUi().showSidebar(template.evaluate()); } -function authCallback(request) { - var eveService = createOAuthForUser(AUTHING_CHARACTER.character_name); - var isAuthorized = eveService.handleCallback(request); - if (isAuthorized) { - getCharacterDetails_(); - return HtmlService.createHtmlOutput('Success! You can close this tab.'); - } else { - return HtmlService.createHtmlOutput('Denied. You can close this tab'); - } +function doRequest_(path, method, token, data) { + var auth = token ? 'Bearer ' + token : 'Basic ' + Utilities.base64EncodeWebSafe(CLIENT_ID + ':' + CLIENT_SECRET) + var options = {'method': method, headers: {'User-Agent': 'GESI user ' + EMAIL,'Content-Type': 'application/json','Authorization': auth}}; + if (data) options['payload'] = JSON.stringify(data); + return JSON.parse(UrlFetchApp.fetch(path, options)); } -function createOAuthForUser(user) { - return OAuth2.createService(user) - .setAuthorizationBaseUrl('https://login.eveonline.com/oauth/authorize/') - .setTokenUrl('https://login.eveonline.com/oauth/token') - .setClientId(CLIENT_ID) - .setClientSecret(CLIENT_SECRET) - .setCallbackFunction('authCallback') - .setPropertyStore(PropertiesService.getUserProperties()) - .setScope(' \ - esi-corporations.read_standings.v1 \ - esi-corporations.read_corporation_membership.v1 \ - esi-corporations.track_members.v1 \ - esi-industry.read_corporation_jobs.v1 \ - esi-corporations.read_structures.v1 \ - esi-industry.read_corporation_mining.v1 \ - esi-industry.read_character_mining.v1 \ - esi-assets.read_corporation_assets.v1 \ - esi-universe.read_structures.v1 \ - esi-wallet.read_corporation_wallets.v1 \ - esi-calendar.read_calendar_events.v1 \ - esi-bookmarks.read_character_bookmarks.v1 \ - esi-contracts.read_character_contracts.v1 \ - esi-industry.read_character_jobs.v1 \ - esi-characters.read_blueprints.v1 \ - esi-markets.read_character_orders.v1 \ - esi-planets.manage_planets.v1 \ - esi-skills.read_skills.v1 \ - esi-skills.read_skillqueue.v1 \ - esi-markets.structure_markets.v1 \ - esi-characters.read_contacts.v1 \ - esi-assets.read_assets.v1 \ - esi-characters.read_loyalty.v1 \ - esi-wallet.read_character_wallet.v1 \ - esi-ui.write_waypoint.v1 \ - esi-bookmarks.read_corporation_bookmarks.v1 \ - esi-contracts.read_corporation_contracts.v1 \ - esi-alliances.read_contacts.v1 \ - ') - .setParam('access_type', 'offline') +function getAccessToken_(code) { + return doRequest_('https://login.eveonline.com/oauth/token', 'post', null, {"grant_type":"authorization_code", "code": code}); } -function clearService() { - for (var i = 0; i < CHARACTERS.length; i++) { - Logger.log(CHARACTERS[i].character_name); - OAuth2.createService(CHARACTERS[i].character_name) - .setPropertyStore(PropertiesService.getUserProperties()) - .reset(); - } +function getCharacterDetails_(token) { + return doRequest_('https://login.eveonline.com/oauth/verify', 'get', token); } -function getCharacterDetails_() { - var userProperties = PropertiesService.getUserProperties(); - var eveService = createOAuthForUser(AUTHING_CHARACTER.character_name); - var response = UrlFetchApp.fetch('https://login.eveonline.com/oauth/verify', { - headers: { - Authorization: 'Bearer ' + eveService.getAccessToken() - } - }); - response = JSON.parse(response); - userProperties.setProperty(AUTHING_CHARACTER.character_name, response.CharacterID.toString()); +function getCharacterAffiliation_(character_id) { + var character_ids = [character_id]; + return doRequest_(BASE_URL + '/v1/characters/affiliation/', 'post', null, character_ids); } -function convertSnakeCase_(headers) { - var formatted_headers = []; - for (var h = 0; h < headers.length; h++) { - str = headers[h].replace(/\_/g, ' '); - formatted_headers.push(str.replace(/\w\S*/g, function(txt) { - return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); - })); - } - return formatted_headers; +function refreshToken_(name) { + var documentProperties = PropertiesService.getDocumentProperties(); + var cache = CacheService.getDocumentCache(); + var response = doRequest_('https://login.eveonline.com/oauth/token', 'post', null, {"grant_type":"refresh_token", "refresh_token": documentProperties.getProperty(name + '_refresh_token')}); + cache.put(name + '_access_token', response['access_token'], 900); + return response['access_token']; } -function deArrayIndex_(data) { - for (var o = 0; o < data.length; o++) { - for (var a in data[o].cost_indices) { - data[o][data[o].cost_indices[a].activity] = data[o].cost_indices[a].cost_index; - } - delete data[o].cost_indices; - } - return data; +function cacheData_(userData) { + var documentProperties = PropertiesService.getDocumentProperties(); + var cache = CacheService.getDocumentCache(); + var userProperties = {}; + prefix = userData['CharacterName'] + '_'; + ['character_id', 'corporation_id', 'alliance_id', 'CharacterName', 'refresh_token'] + .forEach(function(param) { userProperties[prefix + param] = userData[param]; }); + cache.put(prefix + 'access_token', userData['access_token'], 900); + documentProperties.setProperties(userProperties ); } -function characterPlanetDetails_(endpoint_name, character, opt_headers, params, authed, isNested, page) { - var planets = new Array(); - - var response = getData_(endpoint_name, character, page, params, authed); - - // Inserting header for Links - planets.push(['Links']); - - // Insert data values for links - planets.push(['', 'Source Pin ID', 'Dest Pin ID', 'Link Level']); - - for (var i = 0; i < response.links.length; i++) { - planets.push([ - '', - response.links[i].source_pin_id, - response.links[i].destination_pin_id, - response.links[i].link_level - ]); - } - - // Inserting header for Pins - planets.push(['Pins']); - - // Insert data values for Pins - planets.push(['', 'Pin ID', 'Type ID', 'Schematic ID', 'Type Id', 'Install Time', 'Last Cycle Start', 'Latitude', 'Longitude']); - - for (var i = 0; i < response.pins.length; i++) { - planets.push([ - '', - response.pins[i].pin_id, - response.pins[i].type_id, - response.pins[i].schematic_id, - response.pins[i].type_id, - response.pins[i].install_time, - response.pins[i].last_cycle_start, - response.pins[i].latitude, - response.pins[i].longitude - ]); - } - - // Inserting header for Extractors - planets.push(['Extractors']); - - // Insert data values for Extractors - planets.push(['', 'Pin ID', 'Product Type ID', 'Cycle Time', 'Head Radius', 'Quantity Per Cycle']); - - for (var i = 0; i < response.pins.length; i++) { - if (!("extractor_details" in response.pins[i])) { - continue; - } - planets.push(['', - response.pins[i].pin_id, - response.pins[i].extractor_details.product_type_id, - response.pins[i].extractor_details.cycle_time, - response.pins[i].extractor_details.head_radius, - response.pins[i].extractor_details.qty_per_cycle - ]); - } - - // Inserting header for Routes - planets.push(['Routes']); - - // Insert data values for Routes - planets.push(['', 'Route ID', 'Source Pin ID', 'Dest Pin ID', 'Content Type ID', 'Quantity']); - - for (var i = 0; i < response.routes.length; i++) { - planets.push(['', - response.routes[i].route_id, - response.routes[i].source_pin_id, - response.routes[i].destination_pin_id, - response.routes[i].content_type_id, - response.routes[i].quantity - ]); - } - - - return planets; +function resetAuth() { + var documentProperties = PropertiesService.getDocumentProperties(); + documentProperties.deleteAllProperties(); } diff --git a/README.md b/README.md index 7acaea6..1e5f6a2 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,26 @@ # GESI Google Sheets Script for interacting with EVE ESI -Modified version of Google's https://github.com/googlesamples/apps-script-oauth2 to work with EVE SSO/ESI - -To request new endpoints/changes/etc create issues or mail me in game (Blacksmoke16). - ### Setup for single character use: 1. Create a new google sheet or go to the one you want to use the script on. 2. In the menu bar go to Tools -> Script Editor. - 3. Click on the menu item "Resources > Libraries..." - * In the "Add a Library" text box, enter 1B7FSrk5Zi6L1rSxxTDgDEUsPzlukDsi4KGuTMorsTQHhGBzBkMun4iDF and click the "Add" button. - * Choose a version in the dropdown box (usually best to pick the latest version). - * Click the "Save" button. - 4. Copy the contents of GESI.gs into the editor window and save the script. You may need to name the project to save it, so use any name. - 5. Go to File -> Project Properties and copy the Script ID. - 6. Make a new app on the devsite https://developers.eveonline.com/applications/create. + 3. Copy the GESI files. You may need to name the project to save it, so use any name. + * Copy the contents of GESI.gs into the Code.gs script file and save the script. (Can rename Code.gs to GESI.gs if you want) + * Create a new script file (File -> New -> Script File) and name it `endpoints`. + * Copy the contents of `endpoints.gs` into this file and save the script + * Create a new script file (File -> New -> Script File) and name it `functions`. + * Copy the contents of `functions.gs` into this file and save the script + 4. Go to File -> Project Properties and copy the Script ID. + * Update the SCRIPT_ID variable towards the top with your copied value. + 5. Make a new app on the devsite https://developers.eveonline.com/applications/create. * Content Type: Authentication & API Access - * PERMISSIONS: Select all ESI endpoints so you wont' have to edit the app each time a new endpoint is added for GESI. - * CALLBACK URL: https://script.google.com/macros/d/{SCRIPT_ID_COPIED_IN_STEP_FIVE}/usercallback - * Be sure to replace the `{SCRIPT_ID_COPIED_IN_STEP_FIVE}` in the URL with YOUR script ID! + * PERMISSIONS: Select all ESI endpoints. + * CALLBACK URL: https://script.google.com/macros/d/{SCRIPT_ID_COPIED_IN_STEP_FOUR}/usercallback + * Be sure to replace the `{SCRIPT_ID_COPIED_IN_STEP_FOUR}` in the URL with YOUR script ID! * Also be sure to replace the `{` and `}` as well. Url should look something like this, but with your Script ID: * `https://script.google.com/macros/d/15lw-cjwWYnHgLU_tmx6KnyHtZ9aR9Q/usercallback` - 7. Replace the example CLIENT_ID and CLIENT_SECRET variables towards the top with your info from the dev app, and save. + 6. Replace the CLIENT_ID and CLIENT_SECRET variables towards the top with your info from the dev app, and save the script. + 7. Replace `YOUR_CHARACTER_NAME` with the name of your character in the CHARACTERS array, and save the script. 8. Close the script and refresh the spreadsheet. 9. There will now be a GESI option in the menu bar. Click it and then click 'Authorize Sheet'. 10. Give the script permission to do what it needs. @@ -31,32 +30,88 @@ To request new endpoints/changes/etc create issues or mail me in game (Blacksmok ### Setup for multiple character use: 1. Complete steps 1-8 in single character use. - 2. In the script there is a constant variable called `CHARACTERS` (line 13) which is an array of objects. - * Replace the contents of the array with the names and corporation_ids of the characters you wish to authorize. - * E.x. `CHARACTERS = [{ character_name: 'character1', corporation_id: 123 }, { character_name: 'character2', corporation_id: 456 }, { character_name: 'character3', corporation_id: 789 }];` - 4. To auth the characters: - * In the script there is another constant variable `AUTHING_CHARACTER` (line 20). + 2. In the script there is a constant variable called `CHARACTERS` towards the top which is an array of strings. + * Add the names of the other characters you want to auth to the contents of the array with the names and corporation_ids of the characters you wish to authorize. + * E.x. `CHARACTERS = ['character1', 'character2', 'character3'];` + 3. To auth the characters: + * In the script there is another constant variable `AUTHING_CHARACTER` below the `CHARACTERS` constant. * Complete steps 9-13 in single character use. * Add one (1) to the number in brackets. * E.x. `AUTHING_CHARACTER = CHARACTERS[1];` - 5. Repeat step 4 until all characters are authorized. + 4. Repeat step 3 until all characters are authorized. * `AUTHING_CHARACTER = CHARACTERS[1];` -> authorize `character2` using steps 9-13 in single character use. * `AUTHING_CHARACTER = CHARACTERS[2];` -> authorize `character3` using steps 9-13 in single character use. -### Features for advanced users +### Usage Tips + +##### Parameter datatype samples +| Type | Description | Sample | +|---------|--------------------------------------|------------------------| +| array | A string with comma seperated values | "value1,value2,value3" | +| boolean | True or False | true | +| integer | An integer | 16 | +| string | A string | "value" | + +##### Using the parseArray function +As of now if an endpoint returns a property that is an array of objects nested inside the response, I am JSON stringifying it and displaying it in the column. The `parseArray` allows you to parse that array of values and output it like an endpoint function does, wherever you want to. You supply it with the name of the function the data is from, the column you are parsing, and the cell with the array data. See the documentation above the function in GESI.gs right above the private utility functions header below the scopes list. -##### To change order of column headers - 1. Find the corresponding object in the ENDPOINTS array. +##### Changing order of column headers + 1. Find the corresponding object in the ENDPOINTS array in the `endpoints.gs` file * E.x. ``` - "allianceNames": { - "version": 1, - "url": "/alliances/names/", - "headers": ['alliance_id', 'alliance_name'] - } +"alliances_alliance": { + "description": "Public information about an alliance", + "summary": "Get alliance information", + "request": "get", + "version": 3, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "creator_corporation_id", + "type": "integer" + }, + { + "name": "ticker", + "type": "string" + }, + { + "name": "executor_corporation_id", + "type": "integer" + }, + { + "name": "date_founded", + "type": "string" + }, + { + "name": "faction_id", + "type": "integer" + } + ], + "path": "/v3/alliances/{alliance_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "alliance_id", + "description": "An EVE alliance ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + } ``` - 2. Re order the values in the `headers` array to the order you want. - * The value furthest to the left is first + 2. Re order the objects in the `headers` array to the order you want. + * The first object in the array is the first column on the sheet + 3. If a header has a `sub_headers` array, the first value in that array is first as well. ### Note: In order to use functions that use new scopes, you will have to re-auth your character(s). diff --git a/endpoints.gs b/endpoints.gs new file mode 100644 index 0000000..701cad2 --- /dev/null +++ b/endpoints.gs @@ -0,0 +1,9078 @@ +ENDPOINTS = { + "alliances_alliance": { + "description": "Public information about an alliance", + "summary": "Get alliance information", + "request": "get", + "version": 3, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "creator_corporation_id", + "type": "integer" + }, + { + "name": "ticker", + "type": "string" + }, + { + "name": "executor_corporation_id", + "type": "integer" + }, + { + "name": "date_founded", + "type": "string" + }, + { + "name": "faction_id", + "type": "integer" + } + ], + "path": "/v3/alliances/{alliance_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "alliance_id", + "description": "An EVE alliance ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "alliances_alliance_corporations": { + "description": "List all current member corporations of an alliance", + "summary": "List alliance's corporations", + "request": "get", + "version": 1, + "headers": [ + { + "name": "corporation_ids", + "type": "integer" + } + ], + "path": "/v1/alliances/{alliance_id}/corporations/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "alliance_id", + "description": "An EVE alliance ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "alliances_names": { + "description": "Resolve a set of alliance IDs to alliance names", + "summary": "Get alliance names", + "request": "get", + "version": 2, + "headers": [ + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "alliance_name", + "type": "string" + } + ], + "path": "/v2/alliances/names/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "alliance_ids", + "description": "A comma separated list of alliance IDs", + "required": true, + "type": "array", + "in": "query" + } + ] + }, + "alliances_alliance_icons": { + "description": "Get the icon urls for a alliance", + "summary": "Get alliance icon", + "request": "get", + "version": 1, + "headers": [ + { + "name": "px64x64", + "type": "string" + }, + { + "name": "px128x128", + "type": "string" + } + ], + "path": "/v1/alliances/{alliance_id}/icons/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "alliance_id", + "description": "An EVE alliance ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "alliances": { + "description": "List all active player alliances", + "summary": "List all alliances", + "request": "get", + "version": 1, + "headers": [ + { + "name": "alliance_ids", + "type": "integer" + } + ], + "path": "/v1/alliances/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "characters_character_assets": { + "description": "Return a list of the characters assets", + "summary": "Get character assets", + "request": "get", + "version": 3, + "headers": [ + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "location_type", + "type": "string" + }, + { + "name": "item_id", + "type": "integer" + }, + { + "name": "location_flag", + "type": "string" + }, + { + "name": "is_singleton", + "type": "boolean" + } + ], + "path": "/v3/characters/{character_id}/assets/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_assets": { + "description": "Return a list of the corporation assets", + "summary": "Get corporation assets", + "request": "get", + "version": 2, + "headers": [ + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "location_type", + "type": "string" + }, + { + "name": "item_id", + "type": "integer" + }, + { + "name": "location_flag", + "type": "string" + }, + { + "name": "is_singleton", + "type": "boolean" + } + ], + "path": "/v2/corporations/{corporation_id}/assets/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_bookmarks": { + "description": "A list of your character's personal bookmarks", + "summary": "List bookmarks", + "request": "get", + "version": 2, + "headers": [ + { + "name": "bookmark_id", + "type": "integer" + }, + { + "name": "folder_id", + "type": "integer" + }, + { + "name": "created", + "type": "string" + }, + { + "name": "label", + "type": "string" + }, + { + "name": "notes", + "type": "string" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "item-item_id", + "type": "integer" + }, + { + "name": "item-type_id", + "type": "integer" + }, + { + "name": "coordinates-x", + "type": "number" + }, + { + "name": "coordinates-y", + "type": "number" + }, + { + "name": "coordinates-z", + "type": "number" + } + ], + "path": "/v2/characters/{character_id}/bookmarks/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_bookmarks_folders": { + "description": "A list of your character's personal bookmark folders", + "summary": "List bookmark folders", + "request": "get", + "version": 2, + "headers": [ + { + "name": "folder_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + } + ], + "path": "/v2/characters/{character_id}/bookmarks/folders/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_bookmarks": { + "description": "A list of your corporation's bookmarks", + "summary": "List corporation bookmarks", + "request": "get", + "version": 1, + "headers": [ + { + "name": "bookmark_id", + "type": "integer" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "folder_id", + "type": "integer" + }, + { + "name": "created", + "type": "string" + }, + { + "name": "label", + "type": "string" + }, + { + "name": "notes", + "type": "string" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "item-item_id", + "type": "integer" + }, + { + "name": "item-type_id", + "type": "integer" + }, + { + "name": "coordinates-x", + "type": "number" + }, + { + "name": "coordinates-y", + "type": "number" + }, + { + "name": "coordinates-z", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/bookmarks/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_bookmarks_folders": { + "description": "A list of your corporation's bookmark folders", + "summary": "List corporation bookmark folders", + "request": "get", + "version": 1, + "headers": [ + { + "name": "folder_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "creator_id", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/bookmarks/folders/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_calendar": { + "description": "Get 50 event summaries from the calendar. If no from_event ID is given, the resource will return the next 50 chronological event summaries from now. If a from_event ID is specified, it will return the next 50 chronological event summaries from after that event.", + "summary": "List calendar event summaries", + "request": "get", + "version": 1, + "headers": [ + { + "name": "event_id", + "type": "integer" + }, + { + "name": "event_date", + "type": "string" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "importance", + "type": "integer" + }, + { + "name": "event_response", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/calendar/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "from_event", + "description": "The event ID to retrieve events from", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_calendar_event": { + "description": "Get all the information for a specific event", + "summary": "Get an event", + "request": "get", + "version": 3, + "headers": [ + { + "name": "event_id", + "type": "integer" + }, + { + "name": "owner_id", + "type": "integer" + }, + { + "name": "owner_name", + "type": "string" + }, + { + "name": "date", + "type": "string" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "importance", + "type": "integer" + }, + { + "name": "response", + "type": "string" + }, + { + "name": "text", + "type": "string" + }, + { + "name": "owner_type", + "type": "string" + } + ], + "path": "/v3/characters/{character_id}/calendar/{event_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "event_id", + "description": "The id of the event requested", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_calendar_event_attendees": { + "description": "Get all invited attendees for a given event", + "summary": "Get attendees", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "event_response", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/calendar/{event_id}/attendees/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "event_id", + "description": "The id of the event requested", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_stats": { + "description": "Returns aggregate yearly stats for a character", + "summary": "Yearly aggregate stats", + "request": "get", + "version": 2, + "headers": [ + { + "name": "year", + "type": "integer" + }, + { + "name": "character-days_of_activity", + "type": "integer" + }, + { + "name": "character-minutes", + "type": "integer" + }, + { + "name": "character-sessions_started", + "type": "integer" + }, + { + "name": "combat-cap_drainedby_npc", + "type": "integer" + }, + { + "name": "combat-cap_drainedby_pc", + "type": "integer" + }, + { + "name": "combat-cap_draining_pc", + "type": "integer" + }, + { + "name": "combat-criminal_flag_set", + "type": "integer" + }, + { + "name": "combat-damage_from_np_cs_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_np_cs_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_bomb_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_bomb_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_combat_drone_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_combat_drone_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_energy_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_energy_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_fighter_bomber_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_fighter_bomber_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_fighter_drone_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_fighter_drone_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_hybrid_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_hybrid_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_missile_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_missile_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_projectile_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_projectile_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_smart_bomb_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_smart_bomb_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_players_super_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_players_super_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_from_structures_total_amount", + "type": "integer" + }, + { + "name": "combat-damage_from_structures_total_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_bomb_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_bomb_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_combat_drone_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_combat_drone_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_energy_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_energy_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_fighter_bomber_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_fighter_bomber_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_fighter_drone_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_fighter_drone_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_hybrid_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_hybrid_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_missile_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_missile_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_projectile_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_projectile_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_smart_bomb_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_smart_bomb_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_players_super_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_players_super_num_shots", + "type": "integer" + }, + { + "name": "combat-damage_to_structures_total_amount", + "type": "integer" + }, + { + "name": "combat-damage_to_structures_total_num_shots", + "type": "integer" + }, + { + "name": "combat-deaths_high_sec", + "type": "integer" + }, + { + "name": "combat-deaths_low_sec", + "type": "integer" + }, + { + "name": "combat-deaths_null_sec", + "type": "integer" + }, + { + "name": "combat-deaths_pod_high_sec", + "type": "integer" + }, + { + "name": "combat-deaths_pod_low_sec", + "type": "integer" + }, + { + "name": "combat-deaths_pod_null_sec", + "type": "integer" + }, + { + "name": "combat-deaths_pod_wormhole", + "type": "integer" + }, + { + "name": "combat-deaths_wormhole", + "type": "integer" + }, + { + "name": "combat-drone_engage", + "type": "integer" + }, + { + "name": "combat-dscans", + "type": "integer" + }, + { + "name": "combat-duel_requested", + "type": "integer" + }, + { + "name": "combat-engagement_register", + "type": "integer" + }, + { + "name": "combat-kills_assists", + "type": "integer" + }, + { + "name": "combat-kills_high_sec", + "type": "integer" + }, + { + "name": "combat-kills_low_sec", + "type": "integer" + }, + { + "name": "combat-kills_null_sec", + "type": "integer" + }, + { + "name": "combat-kills_pod_high_sec", + "type": "integer" + }, + { + "name": "combat-kills_pod_low_sec", + "type": "integer" + }, + { + "name": "combat-kills_pod_null_sec", + "type": "integer" + }, + { + "name": "combat-kills_pod_wormhole", + "type": "integer" + }, + { + "name": "combat-kills_wormhole", + "type": "integer" + }, + { + "name": "combat-npc_flag_set", + "type": "integer" + }, + { + "name": "combat-probe_scans", + "type": "integer" + }, + { + "name": "combat-pvp_flag_set", + "type": "integer" + }, + { + "name": "combat-repair_armor_by_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_armor_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_armor_self_amount", + "type": "integer" + }, + { + "name": "combat-repair_capacitor_by_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_capacitor_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_capacitor_self_amount", + "type": "integer" + }, + { + "name": "combat-repair_hull_by_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_hull_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_hull_self_amount", + "type": "integer" + }, + { + "name": "combat-repair_shield_by_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_shield_remote_amount", + "type": "integer" + }, + { + "name": "combat-repair_shield_self_amount", + "type": "integer" + }, + { + "name": "combat-self_destructs", + "type": "integer" + }, + { + "name": "combat-warp_scramble_pc", + "type": "integer" + }, + { + "name": "combat-warp_scrambledby_npc", + "type": "integer" + }, + { + "name": "combat-warp_scrambledby_pc", + "type": "integer" + }, + { + "name": "combat-weapon_flag_set", + "type": "integer" + }, + { + "name": "combat-webifiedby_npc", + "type": "integer" + }, + { + "name": "combat-webifiedby_pc", + "type": "integer" + }, + { + "name": "combat-webifying_pc", + "type": "integer" + }, + { + "name": "industry-hacking_successes", + "type": "integer" + }, + { + "name": "industry-jobs_cancelled", + "type": "integer" + }, + { + "name": "industry-jobs_completed_copy_blueprint", + "type": "integer" + }, + { + "name": "industry-jobs_completed_invention", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_asteroid", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_asteroid_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_charge", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_charge_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_commodity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_commodity_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_deployable", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_deployable_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_drone", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_drone_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_implant", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_implant_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_module", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_module_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_other", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_other_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_ship", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_ship_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_structure", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_structure_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_subsystem", + "type": "integer" + }, + { + "name": "industry-jobs_completed_manufacture_subsystem_quantity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_material_productivity", + "type": "integer" + }, + { + "name": "industry-jobs_completed_time_productivity", + "type": "integer" + }, + { + "name": "industry-jobs_started_copy_blueprint", + "type": "integer" + }, + { + "name": "industry-jobs_started_invention", + "type": "integer" + }, + { + "name": "industry-jobs_started_manufacture", + "type": "integer" + }, + { + "name": "industry-jobs_started_material_productivity", + "type": "integer" + }, + { + "name": "industry-jobs_started_time_productivity", + "type": "integer" + }, + { + "name": "industry-reprocess_item", + "type": "integer" + }, + { + "name": "industry-reprocess_item_quantity", + "type": "integer" + }, + { + "name": "inventory-abandon_loot_quantity", + "type": "integer" + }, + { + "name": "inventory-trash_item_quantity", + "type": "integer" + }, + { + "name": "isk-in", + "type": "integer" + }, + { + "name": "isk-out", + "type": "integer" + }, + { + "name": "market-accept_contracts_courier", + "type": "integer" + }, + { + "name": "market-accept_contracts_item_exchange", + "type": "integer" + }, + { + "name": "market-buy_orders_placed", + "type": "integer" + }, + { + "name": "market-cancel_market_order", + "type": "integer" + }, + { + "name": "market-create_contracts_auction", + "type": "integer" + }, + { + "name": "market-create_contracts_courier", + "type": "integer" + }, + { + "name": "market-create_contracts_item_exchange", + "type": "integer" + }, + { + "name": "market-deliver_courier_contract", + "type": "integer" + }, + { + "name": "market-isk_gained", + "type": "integer" + }, + { + "name": "market-isk_spent", + "type": "integer" + }, + { + "name": "market-modify_market_order", + "type": "integer" + }, + { + "name": "market-search_contracts", + "type": "integer" + }, + { + "name": "market-sell_orders_placed", + "type": "integer" + }, + { + "name": "mining-drone_mine", + "type": "integer" + }, + { + "name": "mining-ore_arkonor", + "type": "integer" + }, + { + "name": "mining-ore_bistot", + "type": "integer" + }, + { + "name": "mining-ore_crokite", + "type": "integer" + }, + { + "name": "mining-ore_dark_ochre", + "type": "integer" + }, + { + "name": "mining-ore_gneiss", + "type": "integer" + }, + { + "name": "mining-ore_harvestable_cloud", + "type": "integer" + }, + { + "name": "mining-ore_hedbergite", + "type": "integer" + }, + { + "name": "mining-ore_hemorphite", + "type": "integer" + }, + { + "name": "mining-ore_ice", + "type": "integer" + }, + { + "name": "mining-ore_jaspet", + "type": "integer" + }, + { + "name": "mining-ore_kernite", + "type": "integer" + }, + { + "name": "mining-ore_mercoxit", + "type": "integer" + }, + { + "name": "mining-ore_omber", + "type": "integer" + }, + { + "name": "mining-ore_plagioclase", + "type": "integer" + }, + { + "name": "mining-ore_pyroxeres", + "type": "integer" + }, + { + "name": "mining-ore_scordite", + "type": "integer" + }, + { + "name": "mining-ore_spodumain", + "type": "integer" + }, + { + "name": "mining-ore_veldspar", + "type": "integer" + }, + { + "name": "module-activations_armor_hardener", + "type": "integer" + }, + { + "name": "module-activations_armor_repair_unit", + "type": "integer" + }, + { + "name": "module-activations_armor_resistance_shift_hardener", + "type": "integer" + }, + { + "name": "module-activations_automated_targeting_system", + "type": "integer" + }, + { + "name": "module-activations_bastion", + "type": "integer" + }, + { + "name": "module-activations_bomb_launcher", + "type": "integer" + }, + { + "name": "module-activations_capacitor_booster", + "type": "integer" + }, + { + "name": "module-activations_cargo_scanner", + "type": "integer" + }, + { + "name": "module-activations_cloaking_device", + "type": "integer" + }, + { + "name": "module-activations_clone_vat_bay", + "type": "integer" + }, + { + "name": "module-activations_cynosural_field", + "type": "integer" + }, + { + "name": "module-activations_damage_control", + "type": "integer" + }, + { + "name": "module-activations_data_miners", + "type": "integer" + }, + { + "name": "module-activations_drone_control_unit", + "type": "integer" + }, + { + "name": "module-activations_drone_tracking_modules", + "type": "integer" + }, + { + "name": "module-activations_eccm", + "type": "integer" + }, + { + "name": "module-activations_ecm", + "type": "integer" + }, + { + "name": "module-activations_ecm_burst", + "type": "integer" + }, + { + "name": "module-activations_energy_destabilizer", + "type": "integer" + }, + { + "name": "module-activations_energy_vampire", + "type": "integer" + }, + { + "name": "module-activations_energy_weapon", + "type": "integer" + }, + { + "name": "module-activations_festival_launcher", + "type": "integer" + }, + { + "name": "module-activations_frequency_mining_laser", + "type": "integer" + }, + { + "name": "module-activations_fueled_armor_repairer", + "type": "integer" + }, + { + "name": "module-activations_fueled_shield_booster", + "type": "integer" + }, + { + "name": "module-activations_gang_coordinator", + "type": "integer" + }, + { + "name": "module-activations_gas_cloud_harvester", + "type": "integer" + }, + { + "name": "module-activations_hull_repair_unit", + "type": "integer" + }, + { + "name": "module-activations_hybrid_weapon", + "type": "integer" + }, + { + "name": "module-activations_industrial_core", + "type": "integer" + }, + { + "name": "module-activations_interdiction_sphere_launcher", + "type": "integer" + }, + { + "name": "module-activations_micro_jump_drive", + "type": "integer" + }, + { + "name": "module-activations_mining_laser", + "type": "integer" + }, + { + "name": "module-activations_missile_launcher", + "type": "integer" + }, + { + "name": "module-activations_passive_targeting_system", + "type": "integer" + }, + { + "name": "module-activations_probe_launcher", + "type": "integer" + }, + { + "name": "module-activations_projected_eccm", + "type": "integer" + }, + { + "name": "module-activations_projectile_weapon", + "type": "integer" + }, + { + "name": "module-activations_propulsion_module", + "type": "integer" + }, + { + "name": "module-activations_remote_armor_repairer", + "type": "integer" + }, + { + "name": "module-activations_remote_capacitor_transmitter", + "type": "integer" + }, + { + "name": "module-activations_remote_ecm_burst", + "type": "integer" + }, + { + "name": "module-activations_remote_hull_repairer", + "type": "integer" + }, + { + "name": "module-activations_remote_sensor_booster", + "type": "integer" + }, + { + "name": "module-activations_remote_sensor_damper", + "type": "integer" + }, + { + "name": "module-activations_remote_shield_booster", + "type": "integer" + }, + { + "name": "module-activations_remote_tracking_computer", + "type": "integer" + }, + { + "name": "module-activations_salvager", + "type": "integer" + }, + { + "name": "module-activations_sensor_booster", + "type": "integer" + }, + { + "name": "module-activations_shield_booster", + "type": "integer" + }, + { + "name": "module-activations_shield_hardener", + "type": "integer" + }, + { + "name": "module-activations_ship_scanner", + "type": "integer" + }, + { + "name": "module-activations_siege", + "type": "integer" + }, + { + "name": "module-activations_smart_bomb", + "type": "integer" + }, + { + "name": "module-activations_stasis_web", + "type": "integer" + }, + { + "name": "module-activations_strip_miner", + "type": "integer" + }, + { + "name": "module-activations_super_weapon", + "type": "integer" + }, + { + "name": "module-activations_survey_scanner", + "type": "integer" + }, + { + "name": "module-activations_target_breaker", + "type": "integer" + }, + { + "name": "module-activations_target_painter", + "type": "integer" + }, + { + "name": "module-activations_tracking_computer", + "type": "integer" + }, + { + "name": "module-activations_tracking_disruptor", + "type": "integer" + }, + { + "name": "module-activations_tractor_beam", + "type": "integer" + }, + { + "name": "module-activations_triage", + "type": "integer" + }, + { + "name": "module-activations_warp_disrupt_field_generator", + "type": "integer" + }, + { + "name": "module-activations_warp_scrambler", + "type": "integer" + }, + { + "name": "module-link_weapons", + "type": "integer" + }, + { + "name": "module-overload", + "type": "integer" + }, + { + "name": "module-repairs", + "type": "integer" + }, + { + "name": "orbital-strike_characters_killed", + "type": "integer" + }, + { + "name": "orbital-strike_damage_to_players_armor_amount", + "type": "integer" + }, + { + "name": "orbital-strike_damage_to_players_shield_amount", + "type": "integer" + }, + { + "name": "pve-dungeons_completed_agent", + "type": "integer" + }, + { + "name": "pve-dungeons_completed_distribution", + "type": "integer" + }, + { + "name": "pve-missions_succeeded", + "type": "integer" + }, + { + "name": "pve-missions_succeeded_epic_arc", + "type": "integer" + }, + { + "name": "social-add_contact_bad", + "type": "integer" + }, + { + "name": "social-add_contact_good", + "type": "integer" + }, + { + "name": "social-add_contact_high", + "type": "integer" + }, + { + "name": "social-add_contact_horrible", + "type": "integer" + }, + { + "name": "social-add_contact_neutral", + "type": "integer" + }, + { + "name": "social-add_note", + "type": "integer" + }, + { + "name": "social-added_as_contact_bad", + "type": "integer" + }, + { + "name": "social-added_as_contact_good", + "type": "integer" + }, + { + "name": "social-added_as_contact_high", + "type": "integer" + }, + { + "name": "social-added_as_contact_horrible", + "type": "integer" + }, + { + "name": "social-added_as_contact_neutral", + "type": "integer" + }, + { + "name": "social-calendar_event_created", + "type": "integer" + }, + { + "name": "social-chat_messages_alliance", + "type": "integer" + }, + { + "name": "social-chat_messages_constellation", + "type": "integer" + }, + { + "name": "social-chat_messages_corporation", + "type": "integer" + }, + { + "name": "social-chat_messages_fleet", + "type": "integer" + }, + { + "name": "social-chat_messages_region", + "type": "integer" + }, + { + "name": "social-chat_messages_solarsystem", + "type": "integer" + }, + { + "name": "social-chat_messages_warfaction", + "type": "integer" + }, + { + "name": "social-chat_total_message_length", + "type": "integer" + }, + { + "name": "social-direct_trades", + "type": "integer" + }, + { + "name": "social-fleet_broadcasts", + "type": "integer" + }, + { + "name": "social-fleet_joins", + "type": "integer" + }, + { + "name": "social-mails_received", + "type": "integer" + }, + { + "name": "social-mails_sent", + "type": "integer" + }, + { + "name": "travel-acceleration_gate_activations", + "type": "integer" + }, + { + "name": "travel-align_to", + "type": "integer" + }, + { + "name": "travel-distance_warped_high_sec", + "type": "integer" + }, + { + "name": "travel-distance_warped_low_sec", + "type": "integer" + }, + { + "name": "travel-distance_warped_null_sec", + "type": "integer" + }, + { + "name": "travel-distance_warped_wormhole", + "type": "integer" + }, + { + "name": "travel-docks_high_sec", + "type": "integer" + }, + { + "name": "travel-docks_low_sec", + "type": "integer" + }, + { + "name": "travel-docks_null_sec", + "type": "integer" + }, + { + "name": "travel-jumps_stargate_high_sec", + "type": "integer" + }, + { + "name": "travel-jumps_stargate_low_sec", + "type": "integer" + }, + { + "name": "travel-jumps_stargate_null_sec", + "type": "integer" + }, + { + "name": "travel-jumps_wormhole", + "type": "integer" + }, + { + "name": "travel-warps_high_sec", + "type": "integer" + }, + { + "name": "travel-warps_low_sec", + "type": "integer" + }, + { + "name": "travel-warps_null_sec", + "type": "integer" + }, + { + "name": "travel-warps_to_bookmark", + "type": "integer" + }, + { + "name": "travel-warps_to_celestial", + "type": "integer" + }, + { + "name": "travel-warps_to_fleet_member", + "type": "integer" + }, + { + "name": "travel-warps_to_scan_result", + "type": "integer" + }, + { + "name": "travel-warps_wormhole", + "type": "integer" + } + ], + "path": "/v2/characters/{character_id}/stats/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character": { + "description": "Public information about a character", + "summary": "Get character's public information", + "request": "get", + "version": 4, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "birthday", + "type": "string" + }, + { + "name": "gender", + "type": "string" + }, + { + "name": "race_id", + "type": "integer" + }, + { + "name": "bloodline_id", + "type": "integer" + }, + { + "name": "ancestry_id", + "type": "integer" + }, + { + "name": "security_status", + "type": "number" + }, + { + "name": "faction_id", + "type": "integer" + } + ], + "path": "/v4/characters/{character_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "character_id", + "description": "An EVE character ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_names": { + "description": "Resolve a set of character IDs to character names", + "summary": "Get character names", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "character_name", + "type": "string" + } + ], + "path": "/v1/characters/names/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "character_ids", + "description": "A comma separated list of character IDs", + "required": true, + "type": "array", + "in": "query" + } + ] + }, + "characters_character_portrait": { + "description": "Get portrait urls for a character", + "summary": "Get character portraits", + "request": "get", + "version": 2, + "headers": [ + { + "name": "px64x64", + "type": "string" + }, + { + "name": "px128x128", + "type": "string" + }, + { + "name": "px256x256", + "type": "string" + }, + { + "name": "px512x512", + "type": "string" + } + ], + "path": "/v2/characters/{character_id}/portrait/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "character_id", + "description": "An EVE character ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_corporationhistory": { + "description": "Get a list of all the corporations a character has been a member of", + "summary": "Get corporation history", + "request": "get", + "version": 1, + "headers": [ + { + "name": "start_date", + "type": "string" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "is_deleted", + "type": "boolean" + }, + { + "name": "record_id", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/corporationhistory/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "character_id", + "description": "An EVE character ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_chat_channels": { + "description": "Return chat channels that a character is the owner or operator of", + "summary": "Get chat channels", + "request": "get", + "version": 1, + "headers": [ + { + "name": "channel_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "owner_id", + "type": "integer" + }, + { + "name": "comparison_key", + "type": "string" + }, + { + "name": "has_password", + "type": "boolean" + }, + { + "name": "motd", + "type": "string" + }, + { + "name": "allowed", + "type": "array", + "sub_headers": [ + "accessor_id", + "accessor_type" + ] + }, + { + "name": "operators", + "type": "array", + "sub_headers": [ + "accessor_id", + "accessor_type" + ] + }, + { + "name": "blocked", + "type": "array", + "sub_headers": [ + "accessor_id", + "accessor_type", + "reason", + "end_at" + ] + }, + { + "name": "muted", + "type": "array", + "sub_headers": [ + "accessor_id", + "accessor_type", + "reason", + "end_at" + ] + } + ], + "path": "/v1/characters/{character_id}/chat_channels/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_medals": { + "description": "Return a list of medals the character has", + "summary": "Get medals", + "request": "get", + "version": 1, + "headers": [ + { + "name": "medal_id", + "type": "integer" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "issuer_id", + "type": "integer" + }, + { + "name": "date", + "type": "string" + }, + { + "name": "reason", + "type": "string" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "graphics", + "type": "array", + "sub_headers": [ + "part", + "layer", + "graphic", + "color" + ] + } + ], + "path": "/v1/characters/{character_id}/medals/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_standings": { + "description": "Return character standings from agents, NPC corporations, and factions", + "summary": "Get standings", + "request": "get", + "version": 1, + "headers": [ + { + "name": "from_id", + "type": "integer" + }, + { + "name": "from_type", + "type": "string" + }, + { + "name": "standing", + "type": "number" + } + ], + "path": "/v1/characters/{character_id}/standings/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_agents_research": { + "description": "Return a list of agents research information for a character. The formula for finding the current research points with an agent is: currentPoints = remainderPoints + pointsPerDay * days(currentTime ", + "summary": "Get agents research", + "request": "get", + "version": 1, + "headers": [ + { + "name": "agent_id", + "type": "integer" + }, + { + "name": "skill_type_id", + "type": "integer" + }, + { + "name": "started_at", + "type": "string" + }, + { + "name": "points_per_day", + "type": "number" + }, + { + "name": "remainder_points", + "type": "number" + } + ], + "path": "/v1/characters/{character_id}/agents_research/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_blueprints": { + "description": "Return a list of blueprints the character owns", + "summary": "Get blueprints", + "request": "get", + "version": 2, + "headers": [ + { + "name": "item_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "location_flag", + "type": "string" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "time_efficiency", + "type": "integer" + }, + { + "name": "material_efficiency", + "type": "integer" + }, + { + "name": "runs", + "type": "integer" + } + ], + "path": "/v2/characters/{character_id}/blueprints/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_fatigue": { + "description": "Return a character's jump activation and fatigue information", + "summary": "Get jump fatigue", + "request": "get", + "version": 1, + "headers": [ + { + "name": "last_jump_date", + "type": "string" + }, + { + "name": "jump_fatigue_expire_date", + "type": "string" + }, + { + "name": "last_update_date", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/fatigue/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_notifications_contacts": { + "description": "Return notifications about having been added to someone's contact list", + "summary": "Get new contact notifications", + "request": "get", + "version": 1, + "headers": [ + { + "name": "notification_id", + "type": "integer" + }, + { + "name": "send_date", + "type": "string" + }, + { + "name": "standing_level", + "type": "number" + }, + { + "name": "message", + "type": "string" + }, + { + "name": "sender_character_id", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/notifications/contacts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_notifications": { + "description": "Return character notifications", + "summary": "Get character notifications", + "request": "get", + "version": 1, + "headers": [ + { + "name": "notification_id", + "type": "integer" + }, + { + "name": "type", + "type": "string" + }, + { + "name": "sender_id", + "type": "integer" + }, + { + "name": "sender_type", + "type": "string" + }, + { + "name": "timestamp", + "type": "string" + }, + { + "name": "is_read", + "type": "boolean" + }, + { + "name": "text", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/notifications/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_roles": { + "description": "Returns a character's corporation roles", + "summary": "Get character corporation roles", + "request": "get", + "version": 2, + "headers": [ + { + "name": "roles", + "type": "array" + }, + { + "name": "roles_at_hq", + "type": "array" + }, + { + "name": "roles_at_base", + "type": "array" + }, + { + "name": "roles_at_other", + "type": "array" + } + ], + "path": "/v2/characters/{character_id}/roles/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_titles": { + "description": "Returns a character's titles", + "summary": "Get character corporation titles", + "request": "get", + "version": 1, + "headers": [ + { + "name": "title_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/titles/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_clones": { + "description": "A list of the character's clones", + "summary": "Get clones", + "request": "get", + "version": 3, + "headers": [ + { + "name": "last_clone_jump_date", + "type": "string" + }, + { + "name": "home_location-location_id", + "type": "integer" + }, + { + "name": "home_location-location_type", + "type": "string" + }, + { + "name": "last_station_change_date", + "type": "string" + }, + { + "name": "jump_clones", + "type": "array", + "sub_headers": [ + "jump_clone_id", + "name", + "location_id", + "location_type", + "implants" + ] + } + ], + "path": "/v3/characters/{character_id}/clones/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_implants": { + "description": "Return implants on the active clone of a character", + "summary": "Get active implants", + "request": "get", + "version": 1, + "headers": [ + { + "name": "implant_ids", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/implants/", + "authed": true, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "characters_character_contacts": { + "description": "Return contacts of a character", + "summary": "Get contacts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "standing", + "type": "number" + }, + { + "name": "contact_type", + "type": "string" + }, + { + "name": "contact_id", + "type": "integer" + }, + { + "name": "is_watched", + "type": "boolean" + }, + { + "name": "is_blocked", + "type": "boolean" + }, + { + "name": "label_id", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/contacts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_contacts": { + "description": "Return contacts of a corporation", + "summary": "Get corporation contacts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "standing", + "type": "number" + }, + { + "name": "contact_type", + "type": "string" + }, + { + "name": "contact_id", + "type": "integer" + }, + { + "name": "is_watched", + "type": "boolean" + }, + { + "name": "label_id", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/contacts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "alliances_alliance_contacts": { + "description": "Return contacts of an alliance", + "summary": "Get alliance contacts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "standing", + "type": "number" + }, + { + "name": "contact_type", + "type": "string" + }, + { + "name": "contact_id", + "type": "integer" + }, + { + "name": "label_id", + "type": "integer" + } + ], + "path": "/v1/alliances/{alliance_id}/contacts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_contacts_labels": { + "description": "Return custom labels for contacts the character defined", + "summary": "Get contact labels", + "request": "get", + "version": 1, + "headers": [ + { + "name": "label_id", + "type": "integer" + }, + { + "name": "label_name", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/contacts/labels/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_contracts": { + "description": "Returns contracts available to a character, only if the character is issuer, acceptor or assignee. Only returns contracts no older than 30 days, or if the status is \"in_progress\".", + "summary": "Get contracts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "contract_id", + "type": "integer" + }, + { + "name": "issuer_id", + "type": "integer" + }, + { + "name": "issuer_corporation_id", + "type": "integer" + }, + { + "name": "assignee_id", + "type": "integer" + }, + { + "name": "acceptor_id", + "type": "integer" + }, + { + "name": "start_location_id", + "type": "integer" + }, + { + "name": "end_location_id", + "type": "integer" + }, + { + "name": "type", + "type": "string" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "for_corporation", + "type": "boolean" + }, + { + "name": "availability", + "type": "string" + }, + { + "name": "date_issued", + "type": "string" + }, + { + "name": "date_expired", + "type": "string" + }, + { + "name": "date_accepted", + "type": "string" + }, + { + "name": "days_to_complete", + "type": "integer" + }, + { + "name": "date_completed", + "type": "string" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "reward", + "type": "number" + }, + { + "name": "collateral", + "type": "number" + }, + { + "name": "buyout", + "type": "number" + }, + { + "name": "volume", + "type": "number" + } + ], + "path": "/v1/characters/{character_id}/contracts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_contracts_contract_items": { + "description": "Lists items of a particular contract", + "summary": "Get contract items", + "request": "get", + "version": 1, + "headers": [ + { + "name": "record_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "raw_quantity", + "type": "integer" + }, + { + "name": "is_singleton", + "type": "boolean" + }, + { + "name": "is_included", + "type": "boolean" + } + ], + "path": "/v1/characters/{character_id}/contracts/{contract_id}/items/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "contract_id", + "description": "ID of a contract", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_contracts_contract_bids": { + "description": "Lists bids on a particular auction contract", + "summary": "Get contract bids", + "request": "get", + "version": 1, + "headers": [ + { + "name": "bid_id", + "type": "integer" + }, + { + "name": "bidder_id", + "type": "integer" + }, + { + "name": "date_bid", + "type": "string" + }, + { + "name": "amount", + "type": "number" + } + ], + "path": "/v1/characters/{character_id}/contracts/{contract_id}/bids/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "contract_id", + "description": "ID of a contract", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_corporation_contracts": { + "description": "Returns contracts available to a coporation, only if the corporation is issuer, acceptor or assignee. Only returns contracts no older than 30 days, or if the status is \"in_progress\".", + "summary": "Get coporation contracts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "contract_id", + "type": "integer" + }, + { + "name": "issuer_id", + "type": "integer" + }, + { + "name": "issuer_corporation_id", + "type": "integer" + }, + { + "name": "assignee_id", + "type": "integer" + }, + { + "name": "acceptor_id", + "type": "integer" + }, + { + "name": "start_location_id", + "type": "integer" + }, + { + "name": "end_location_id", + "type": "integer" + }, + { + "name": "type", + "type": "string" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "for_corporation", + "type": "boolean" + }, + { + "name": "availability", + "type": "string" + }, + { + "name": "date_issued", + "type": "string" + }, + { + "name": "date_expired", + "type": "string" + }, + { + "name": "date_accepted", + "type": "string" + }, + { + "name": "days_to_complete", + "type": "integer" + }, + { + "name": "date_completed", + "type": "string" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "reward", + "type": "number" + }, + { + "name": "collateral", + "type": "number" + }, + { + "name": "buyout", + "type": "number" + }, + { + "name": "volume", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/contracts/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_contracts_contract_items": { + "description": "Lists items of a particular contract", + "summary": "Get corporation contract items", + "request": "get", + "version": 1, + "headers": [ + { + "name": "record_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "raw_quantity", + "type": "integer" + }, + { + "name": "is_singleton", + "type": "boolean" + }, + { + "name": "is_included", + "type": "boolean" + } + ], + "path": "/v1/corporations/{corporation_id}/contracts/{contract_id}/items/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "contract_id", + "description": "ID of a contract", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_corporation_contracts_contract_bids": { + "description": "Lists bids on a particular auction contract", + "summary": "Get corporation contract bids", + "request": "get", + "version": 1, + "headers": [ + { + "name": "bid_id", + "type": "integer" + }, + { + "name": "bidder_id", + "type": "integer" + }, + { + "name": "date_bid", + "type": "string" + }, + { + "name": "amount", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/contracts/{contract_id}/bids/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "contract_id", + "description": "ID of a contract", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_shareholders": { + "description": "Return the current shareholders of a corporation.", + "summary": "Get corporation shareholders", + "request": "get", + "version": 1, + "headers": [ + { + "name": "shareholder_id", + "type": "integer" + }, + { + "name": "shareholder_type", + "type": "string" + }, + { + "name": "share_count", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/shareholders/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation": { + "description": "Public information about a corporation", + "summary": "Get corporation information", + "request": "get", + "version": 4, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "ticker", + "type": "string" + }, + { + "name": "member_count", + "type": "integer" + }, + { + "name": "ceo_id", + "type": "integer" + }, + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "tax_rate", + "type": "number" + }, + { + "name": "date_founded", + "type": "string" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "url", + "type": "string" + }, + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "home_station_id", + "type": "integer" + }, + { + "name": "shares", + "type": "integer" + } + ], + "path": "/v4/corporations/{corporation_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "corporation_id", + "description": "An EVE corporation ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_corporation_alliancehistory": { + "description": "Get a list of all the alliances a corporation has been a member of", + "summary": "Get alliance history", + "request": "get", + "version": 2, + "headers": [ + { + "name": "start_date", + "type": "string" + }, + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "is_deleted", + "type": "boolean" + }, + { + "name": "record_id", + "type": "integer" + } + ], + "path": "/v2/corporations/{corporation_id}/alliancehistory/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "corporation_id", + "description": "An EVE corporation ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_names": { + "description": "Resolve a set of corporation IDs to corporation names", + "summary": "Get corporation names", + "request": "get", + "version": 2, + "headers": [ + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "corporation_name", + "type": "string" + } + ], + "path": "/v2/corporations/names/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "corporation_ids", + "description": "A comma separated list of corporation IDs", + "required": true, + "type": "array", + "in": "query" + } + ] + }, + "corporations_corporation_members": { + "description": "Return the current member list of a corporation, the token's character need to be a member of the corporation.", + "summary": "Get corporation members", + "request": "get", + "version": 3, + "headers": [ + { + "name": "member_ids", + "type": "integer" + } + ], + "path": "/v3/corporations/{corporation_id}/members/", + "authed": true, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "corporations_corporation_roles": { + "description": "Return the roles of all members if the character has the personnel manager role or any grantable role.", + "summary": "Get corporation member roles", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "roles", + "type": "array" + }, + { + "name": "grantable_roles", + "type": "array" + }, + { + "name": "roles_at_hq", + "type": "array" + }, + { + "name": "grantable_roles_at_hq", + "type": "array" + }, + { + "name": "roles_at_base", + "type": "array" + }, + { + "name": "grantable_roles_at_base", + "type": "array" + }, + { + "name": "roles_at_other", + "type": "array" + }, + { + "name": "grantable_roles_at_other", + "type": "array" + } + ], + "path": "/v1/corporations/{corporation_id}/roles/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_roles_history": { + "description": "Return how roles have changed for a coporation's members, up to a month", + "summary": "Get corporation member roles history", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "changed_at", + "type": "string" + }, + { + "name": "issuer_id", + "type": "integer" + }, + { + "name": "role_type", + "type": "string" + }, + { + "name": "old_roles", + "type": "array" + }, + { + "name": "new_roles", + "type": "array" + } + ], + "path": "/v1/corporations/{corporation_id}/roles/history/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_icons": { + "description": "Get the icon urls for a corporation", + "summary": "Get corporation icon", + "request": "get", + "version": 1, + "headers": [ + { + "name": "px64x64", + "type": "string" + }, + { + "name": "px128x128", + "type": "string" + }, + { + "name": "px256x256", + "type": "string" + } + ], + "path": "/v1/corporations/{corporation_id}/icons/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "corporation_id", + "description": "An EVE corporation ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_npccorps": { + "description": "Get a list of npc corporations", + "summary": "Get npc corporations", + "request": "get", + "version": 1, + "headers": [ + { + "name": "npccorp_ids", + "type": "integer" + } + ], + "path": "/v1/corporations/npccorps/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "corporations_corporation_structures": { + "description": "Get a list of corporation structures", + "summary": "Get corporation structures", + "request": "get", + "version": 1, + "headers": [ + { + "name": "structure_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "profile_id", + "type": "integer" + }, + { + "name": "fuel_expires", + "type": "string" + }, + { + "name": "services", + "type": "array", + "sub_headers": [ + "name", + "state" + ] + }, + { + "name": "state_timer_start", + "type": "string" + }, + { + "name": "state_timer_end", + "type": "string" + }, + { + "name": "unanchors_at", + "type": "string" + }, + { + "name": "current_vul", + "type": "array", + "sub_headers": [ + "day", + "hour" + ] + }, + { + "name": "next_vul", + "type": "array", + "sub_headers": [ + "day", + "hour" + ] + } + ], + "path": "/v1/corporations/{corporation_id}/structures/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_membertracking": { + "description": "Returns additional information about a corporation's members which helps tracking their activities", + "summary": "Track corporation members", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "start_date", + "type": "string" + }, + { + "name": "base_id", + "type": "integer" + }, + { + "name": "logon_date", + "type": "string" + }, + { + "name": "logoff_date", + "type": "string" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "ship_type_id", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/membertracking/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_divisions": { + "description": "Return corporation hangar and wallet division names, only show if a division is not using the default name", + "summary": "Get corporation divisions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "hangar", + "type": "array", + "sub_headers": [ + "division", + "name" + ] + }, + { + "name": "wallet", + "type": "array", + "sub_headers": [ + "division", + "name" + ] + } + ], + "path": "/v1/corporations/{corporation_id}/divisions/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_members_limit": { + "description": "Return a corporation's member limit, not including CEO himself", + "summary": "Get corporation member limit", + "request": "get", + "version": 1, + "headers": [ + + ], + "path": "/v1/corporations/{corporation_id}/members/limit/", + "authed": true, + "response_type": "integer", + "item_type": "integer", + "parameters": [ + + ] + }, + "corporations_corporation_titles": { + "description": "Returns a corporation's titles", + "summary": "Get corporation titles", + "request": "get", + "version": 1, + "headers": [ + { + "name": "title_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "roles", + "type": "array" + }, + { + "name": "grantable_roles", + "type": "array" + }, + { + "name": "roles_at_hq", + "type": "array" + }, + { + "name": "grantable_roles_at_hq", + "type": "array" + }, + { + "name": "roles_at_base", + "type": "array" + }, + { + "name": "grantable_roles_at_base", + "type": "array" + }, + { + "name": "roles_at_other", + "type": "array" + }, + { + "name": "grantable_roles_at_other", + "type": "array" + } + ], + "path": "/v1/corporations/{corporation_id}/titles/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_members_titles": { + "description": "Returns a corporation's members' titles", + "summary": "Get corporation's members' titles", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "titles", + "type": "array" + } + ], + "path": "/v1/corporations/{corporation_id}/members/titles/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_blueprints": { + "description": "Returns a list of blueprints the corporation owns", + "summary": "Get corporation blueprints", + "request": "get", + "version": 1, + "headers": [ + { + "name": "item_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "location_flag", + "type": "string" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "time_efficiency", + "type": "integer" + }, + { + "name": "material_efficiency", + "type": "integer" + }, + { + "name": "runs", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/blueprints/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_standings": { + "description": "Return corporation standings from agents, NPC corporations, and factions", + "summary": "Get corporation standings", + "request": "get", + "version": 1, + "headers": [ + { + "name": "from_id", + "type": "integer" + }, + { + "name": "from_type", + "type": "string" + }, + { + "name": "standing", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/standings/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_starbases": { + "description": "Returns list of corporation starbases (POSes)", + "summary": "Get corporation starbases (POSes)", + "request": "get", + "version": 1, + "headers": [ + { + "name": "starbase_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "moon_id", + "type": "integer" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "unanchor_at", + "type": "string" + }, + { + "name": "reinforced_until", + "type": "string" + }, + { + "name": "onlined_since", + "type": "string" + } + ], + "path": "/v1/corporations/{corporation_id}/starbases/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_starbases_starbase": { + "description": "Returns various settings and fuels of a starbase (POS)", + "summary": "Get starbase (POS) detail", + "request": "get", + "version": 1, + "headers": [ + { + "name": "fuel_bay_view", + "type": "string" + }, + { + "name": "fuel_bay_take", + "type": "string" + }, + { + "name": "anchor", + "type": "string" + }, + { + "name": "unanchor", + "type": "string" + }, + { + "name": "online", + "type": "string" + }, + { + "name": "offline", + "type": "string" + }, + { + "name": "allow_corporation_members", + "type": "boolean" + }, + { + "name": "allow_alliance_members", + "type": "boolean" + }, + { + "name": "use_alliance_standings", + "type": "boolean" + }, + { + "name": "attack_standing_threshold", + "type": "number" + }, + { + "name": "attack_security_status_threshold", + "type": "number" + }, + { + "name": "attack_if_other_security_status_dropping", + "type": "boolean" + }, + { + "name": "attack_if_at_war", + "type": "boolean" + }, + { + "name": "fuels", + "type": "array", + "sub_headers": [ + "type_id", + "quantity" + ] + } + ], + "path": "/v1/corporations/{corporation_id}/starbases/{starbase_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "starbase_id", + "description": "An EVE starbase (POS) ID", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "system_id", + "description": "The solar system this starbase (POS) is located in,", + "required": true, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_containers_logs": { + "description": "Returns logs recorded in the past seven days from all audit log secure containers (ALSC) owned by a given corporation", + "summary": "Get all corporation ALSC logs", + "request": "get", + "version": 1, + "headers": [ + { + "name": "logged_at", + "type": "string" + }, + { + "name": "container_id", + "type": "integer" + }, + { + "name": "container_type_id", + "type": "integer" + }, + { + "name": "character_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "location_flag", + "type": "string" + }, + { + "name": "action", + "type": "string" + }, + { + "name": "password_type", + "type": "string" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "old_config_bitmask", + "type": "integer" + }, + { + "name": "new_config_bitmask", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/containers/logs/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_facilities": { + "description": "Return a corporation's facilities", + "summary": "Get corporation facilities", + "request": "get", + "version": 1, + "headers": [ + { + "name": "facility_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/facilities/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_medals": { + "description": "Returns a corporation's medals", + "summary": "Get corporation medals", + "request": "get", + "version": 1, + "headers": [ + { + "name": "medal_id", + "type": "integer" + }, + { + "name": "title", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "creator_id", + "type": "integer" + }, + { + "name": "created_at", + "type": "string" + } + ], + "path": "/v1/corporations/{corporation_id}/medals/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_medals_issue": { + "description": "Returns medals issued by a corporation", + "summary": "Get corporation issued medals", + "request": "get", + "version": 1, + "headers": [ + { + "name": "medal_id", + "type": "integer" + }, + { + "name": "character_id", + "type": "integer" + }, + { + "name": "reason", + "type": "string" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "issuer_id", + "type": "integer" + }, + { + "name": "issued_at", + "type": "string" + } + ], + "path": "/v1/corporations/{corporation_id}/medals/issued/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_outposts": { + "description": "Get a list of corporation outpost IDs Note: This endpoint will be removed once outposts are migrated to Citadels as talked about in this blog: https://community.eveonline.com/news/dev", + "summary": "Get corporation outposts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "outpost_ids", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/outposts/", + "authed": true, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_outposts_outpost": { + "description": "Get details about a given outpost. Note: This endpoint will be removed once outposts are migrated to Citadels as talked about in this blog: https://community.eveonline.com/news/dev", + "summary": "Get corporation outpost details", + "request": "get", + "version": 1, + "headers": [ + { + "name": "owner_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "docking_cost_per_ship_volume", + "type": "number" + }, + { + "name": "office_rental_cost", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "reprocessing_efficiency", + "type": "number" + }, + { + "name": "reprocessing_station_take", + "type": "number" + }, + { + "name": "standing_owner_id", + "type": "integer" + }, + { + "name": "coordinates-x", + "type": "number" + }, + { + "name": "coordinates-y", + "type": "number" + }, + { + "name": "coordinates-z", + "type": "number" + }, + { + "name": "services", + "type": "array", + "sub_headers": [ + "service_name", + "minimum_standing", + "surcharge_per_bad_standing", + "discount_per_good_standing" + ] + } + ], + "path": "/v1/corporations/{corporation_id}/outposts/{outpost_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "outpost_id", + "description": "A station (outpost) ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "dogma_attributes": { + "description": "Get a list of dogma attribute ids", + "summary": "Get attributes", + "request": "get", + "version": 1, + "headers": [ + { + "name": "attribute_ids", + "type": "integer" + } + ], + "path": "/v1/dogma/attributes/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "dogma_attributes_attribute": { + "description": "Get information on a dogma attribute", + "summary": "Get attribute information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "attribute_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "icon_id", + "type": "integer" + }, + { + "name": "default_value", + "type": "number" + }, + { + "name": "published", + "type": "boolean" + }, + { + "name": "display_name", + "type": "string" + }, + { + "name": "unit_id", + "type": "integer" + }, + { + "name": "stackable", + "type": "boolean" + }, + { + "name": "high_is_good", + "type": "boolean" + } + ], + "path": "/v1/dogma/attributes/{attribute_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "attribute_id", + "description": "A dogma attribute ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "dogma_effects": { + "description": "Get a list of dogma effect ids", + "summary": "Get effects", + "request": "get", + "version": 1, + "headers": [ + { + "name": "effect_ids", + "type": "integer" + } + ], + "path": "/v1/dogma/effects/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "dogma_effects_effect": { + "description": "Get information on a dogma effect", + "summary": "Get effect information", + "request": "get", + "version": 2, + "headers": [ + { + "name": "effect_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "display_name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "icon_id", + "type": "integer" + }, + { + "name": "effect_category", + "type": "integer" + }, + { + "name": "pre_expression", + "type": "integer" + }, + { + "name": "post_expression", + "type": "integer" + }, + { + "name": "is_offensive", + "type": "boolean" + }, + { + "name": "is_assistance", + "type": "boolean" + }, + { + "name": "disallow_auto_repeat", + "type": "boolean" + }, + { + "name": "published", + "type": "boolean" + }, + { + "name": "is_warp_safe", + "type": "boolean" + }, + { + "name": "range_chance", + "type": "boolean" + }, + { + "name": "electronic_chance", + "type": "boolean" + }, + { + "name": "duration_attribute_id", + "type": "integer" + }, + { + "name": "tracking_speed_attribute_id", + "type": "integer" + }, + { + "name": "discharge_attribute_id", + "type": "integer" + }, + { + "name": "range_attribute_id", + "type": "integer" + }, + { + "name": "falloff_attribute_id", + "type": "integer" + }, + { + "name": "modifiers", + "type": "array", + "sub_headers": [ + "func", + "domain", + "modified_attribute_id", + "modifying_attribute_id", + "effect_id", + "operator" + ] + } + ], + "path": "/v2/dogma/effects/{effect_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "effect_id", + "description": "A dogma effect ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "fw_wars": { + "description": "Data about which NPC factions are at war", + "summary": "Data about which NPC factions are at war", + "request": "get", + "version": 1, + "headers": [ + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "against_id", + "type": "integer" + } + ], + "path": "/v1/fw/wars/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "fw_stats": { + "description": "Statistical overviews of factions involved in faction warfare", + "summary": "An overview of statistics about factions involved in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "pilots", + "type": "integer" + }, + { + "name": "systems_controlled", + "type": "integer" + }, + { + "name": "kills-yesterday", + "type": "integer" + }, + { + "name": "kills-last_week", + "type": "integer" + }, + { + "name": "kills-total", + "type": "integer" + }, + { + "name": "victory_points-yesterday", + "type": "integer" + }, + { + "name": "victory_points-last_week", + "type": "integer" + }, + { + "name": "victory_points-total", + "type": "integer" + } + ], + "path": "/v1/fw/stats/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "fw_systems": { + "description": "An overview of the current ownership of faction warfare solar systems", + "summary": "Ownership of faction warfare systems", + "request": "get", + "version": 1, + "headers": [ + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "owner_faction_id", + "type": "integer" + }, + { + "name": "occupier_faction_id", + "type": "integer" + }, + { + "name": "victory_points", + "type": "integer" + }, + { + "name": "victory_points_threshold", + "type": "integer" + }, + { + "name": "contested", + "type": "boolean" + } + ], + "path": "/v1/fw/systems/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "fw_leaderboards": { + "description": "Top 4 leaderboard of factions for kills and victory points separated by total, last week and yesterday.", + "summary": "List of the top factions in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "kills-yesterday", + "type": "array" + }, + { + "name": "kills-last_week", + "type": "array" + }, + { + "name": "kills-active_total", + "type": "array" + }, + { + "name": "victory_points-yesterday", + "type": "array" + }, + { + "name": "victory_points-last_week", + "type": "array" + }, + { + "name": "victory_points-active_total", + "type": "array" + } + ], + "path": "/v1/fw/leaderboards/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "fw_leaderboards_characters": { + "description": "Top 100 leaderboard of pilots for kills and victory points separated by total, last week and yesterday.", + "summary": "List of the top pilots in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "kills-yesterday", + "type": "array" + }, + { + "name": "kills-last_week", + "type": "array" + }, + { + "name": "kills-active_total", + "type": "array" + }, + { + "name": "victory_points-yesterday", + "type": "array" + }, + { + "name": "victory_points-last_week", + "type": "array" + }, + { + "name": "victory_points-active_total", + "type": "array" + } + ], + "path": "/v1/fw/leaderboards/characters/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "fw_leaderboards_corporations": { + "description": "Top 10 leaderboard of corporations for kills and victory points separated by total, last week and yesterday.", + "summary": "List of the top corporations in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "kills-yesterday", + "type": "array" + }, + { + "name": "kills-last_week", + "type": "array" + }, + { + "name": "kills-active_total", + "type": "array" + }, + { + "name": "victory_points-yesterday", + "type": "array" + }, + { + "name": "victory_points-last_week", + "type": "array" + }, + { + "name": "victory_points-active_total", + "type": "array" + } + ], + "path": "/v1/fw/leaderboards/corporations/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_fw_stats": { + "description": "Statistics about a corporation involved in faction warfare", + "summary": "Overview of a corporation involved in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "enlisted_on", + "type": "string" + }, + { + "name": "pilots", + "type": "integer" + }, + { + "name": "kills-yesterday", + "type": "integer" + }, + { + "name": "kills-last_week", + "type": "integer" + }, + { + "name": "kills-total", + "type": "integer" + }, + { + "name": "victory_points-yesterday", + "type": "integer" + }, + { + "name": "victory_points-last_week", + "type": "integer" + }, + { + "name": "victory_points-total", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/fw/stats/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_fw_stats": { + "description": "Statistical overview of a character involved in faction warfare", + "summary": "Overview of a character involved in faction warfare", + "request": "get", + "version": 1, + "headers": [ + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "enlisted_on", + "type": "string" + }, + { + "name": "current_rank", + "type": "integer" + }, + { + "name": "highest_rank", + "type": "integer" + }, + { + "name": "kills-yesterday", + "type": "integer" + }, + { + "name": "kills-last_week", + "type": "integer" + }, + { + "name": "kills-total", + "type": "integer" + }, + { + "name": "victory_points-yesterday", + "type": "integer" + }, + { + "name": "victory_points-last_week", + "type": "integer" + }, + { + "name": "victory_points-total", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/fw/stats/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_fittings": { + "description": "Return fittings of a character", + "summary": "Get fittings", + "request": "get", + "version": 1, + "headers": [ + { + "name": "fitting_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "ship_type_id", + "type": "integer" + }, + { + "name": "items", + "type": "array", + "sub_headers": [ + "type_id", + "flag", + "quantity" + ] + } + ], + "path": "/v1/characters/{character_id}/fittings/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "fleets_fleet": { + "description": "Return details about a fleet", + "summary": "Get fleet information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "motd", + "type": "string" + }, + { + "name": "is_free_move", + "type": "boolean" + }, + { + "name": "is_registered", + "type": "boolean" + }, + { + "name": "is_voice_enabled", + "type": "boolean" + } + ], + "path": "/v1/fleets/{fleet_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "fleet_id", + "description": "ID for a fleet", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_fleet": { + "description": "Return the fleet ID the character is in, if any.", + "summary": "Get character fleet info", + "request": "get", + "version": 1, + "headers": [ + { + "name": "fleet_id", + "type": "integer" + }, + { + "name": "wing_id", + "type": "integer" + }, + { + "name": "squad_id", + "type": "integer" + }, + { + "name": "role", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/fleet/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "fleets_fleet_members": { + "description": "Return information about fleet members", + "summary": "Get fleet members", + "request": "get", + "version": 1, + "headers": [ + { + "name": "character_id", + "type": "integer" + }, + { + "name": "ship_type_id", + "type": "integer" + }, + { + "name": "wing_id", + "type": "integer" + }, + { + "name": "squad_id", + "type": "integer" + }, + { + "name": "role", + "type": "string" + }, + { + "name": "role_name", + "type": "string" + }, + { + "name": "join_time", + "type": "string" + }, + { + "name": "takes_fleet_warp", + "type": "boolean" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "station_id", + "type": "integer" + } + ], + "path": "/v1/fleets/{fleet_id}/members/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "fleet_id", + "description": "ID for a fleet", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "fleets_fleet_wings": { + "description": "Return information about wings in a fleet", + "summary": "Get fleet wings", + "request": "get", + "version": 1, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "id", + "type": "integer" + }, + { + "name": "squads", + "type": "array", + "sub_headers": [ + "name", + "id" + ] + } + ], + "path": "/v1/fleets/{fleet_id}/wings/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "fleet_id", + "description": "ID for a fleet", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "incursions": { + "description": "Return a list of current incursions", + "summary": "List incursions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "type", + "type": "string" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "influence", + "type": "number" + }, + { + "name": "has_boss", + "type": "boolean" + }, + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "constellation_id", + "type": "integer" + }, + { + "name": "staging_solar_system_id", + "type": "integer" + }, + { + "name": "infested_solar_systems", + "type": "array" + } + ], + "path": "/v1/incursions/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "industry_facilities": { + "description": "Return a list of industry facilities", + "summary": "List industry facilities", + "request": "get", + "version": 1, + "headers": [ + { + "name": "facility_id", + "type": "integer" + }, + { + "name": "tax", + "type": "number" + }, + { + "name": "owner_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "region_id", + "type": "integer" + } + ], + "path": "/v1/industry/facilities/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "industry_systems": { + "description": "Return cost indices for solar systems", + "summary": "List solar system cost indices", + "request": "get", + "version": 1, + "headers": [ + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "cost_indices", + "type": "array", + "sub_headers": [ + "activity", + "cost_index" + ] + } + ], + "path": "/v1/industry/systems/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_industry_jobs": { + "description": "List industry jobs placed by a character", + "summary": "List character industry jobs", + "request": "get", + "version": 1, + "headers": [ + { + "name": "job_id", + "type": "integer" + }, + { + "name": "installer_id", + "type": "integer" + }, + { + "name": "facility_id", + "type": "integer" + }, + { + "name": "station_id", + "type": "integer" + }, + { + "name": "activity_id", + "type": "integer" + }, + { + "name": "blueprint_id", + "type": "integer" + }, + { + "name": "blueprint_type_id", + "type": "integer" + }, + { + "name": "blueprint_location_id", + "type": "integer" + }, + { + "name": "output_location_id", + "type": "integer" + }, + { + "name": "runs", + "type": "integer" + }, + { + "name": "cost", + "type": "number" + }, + { + "name": "licensed_runs", + "type": "integer" + }, + { + "name": "probability", + "type": "number" + }, + { + "name": "product_type_id", + "type": "integer" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "start_date", + "type": "string" + }, + { + "name": "end_date", + "type": "string" + }, + { + "name": "pause_date", + "type": "string" + }, + { + "name": "completed_date", + "type": "string" + }, + { + "name": "completed_character_id", + "type": "integer" + }, + { + "name": "successful_runs", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/industry/jobs/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "include_completed", + "description": "Whether retrieve completed character industry jobs as well", + "required": false, + "type": "boolean", + "in": "query" + } + ] + }, + "characters_character_mining": { + "description": "Paginated record of all mining done by a character for the past 30 days", + "summary": "Character mining ledger", + "request": "get", + "version": 1, + "headers": [ + { + "name": "date", + "type": "string" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/mining/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporation_corporation_mining_observers": { + "description": "Paginated list of all entities capable of observing and recording mining for a corporation", + "summary": "Corporation mining observers", + "request": "get", + "version": 1, + "headers": [ + { + "name": "last_updated", + "type": "string" + }, + { + "name": "observer_id", + "type": "integer" + }, + { + "name": "observer_type", + "type": "string" + } + ], + "path": "/v1/corporation/{corporation_id}/mining/observers/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporation_corporation_mining_observers_observer": { + "description": "Paginated record of all mining seen by an observer", + "summary": "Observed corporation mining", + "request": "get", + "version": 1, + "headers": [ + { + "name": "last_updated", + "type": "string" + }, + { + "name": "character_id", + "type": "integer" + }, + { + "name": "recorded_corporation_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + } + ], + "path": "/v1/corporation/{corporation_id}/mining/observers/{observer_id}/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "observer_id", + "description": "A mining observer id", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_industry_jobs": { + "description": "List industry jobs run by a corporation", + "summary": "List corporation industry jobs", + "request": "get", + "version": 1, + "headers": [ + { + "name": "job_id", + "type": "integer" + }, + { + "name": "installer_id", + "type": "integer" + }, + { + "name": "facility_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "activity_id", + "type": "integer" + }, + { + "name": "blueprint_id", + "type": "integer" + }, + { + "name": "blueprint_type_id", + "type": "integer" + }, + { + "name": "blueprint_location_id", + "type": "integer" + }, + { + "name": "output_location_id", + "type": "integer" + }, + { + "name": "runs", + "type": "integer" + }, + { + "name": "cost", + "type": "number" + }, + { + "name": "licensed_runs", + "type": "integer" + }, + { + "name": "probability", + "type": "number" + }, + { + "name": "product_type_id", + "type": "integer" + }, + { + "name": "status", + "type": "string" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "start_date", + "type": "string" + }, + { + "name": "end_date", + "type": "string" + }, + { + "name": "pause_date", + "type": "string" + }, + { + "name": "completed_date", + "type": "string" + }, + { + "name": "completed_character_id", + "type": "integer" + }, + { + "name": "successful_runs", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/industry/jobs/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "include_completed", + "description": "Whether retrieve completed industry jobs as well", + "required": false, + "type": "boolean", + "in": "query" + }, + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporation_corporation_mining_extractions": { + "description": "Extraction timers for all moon chunks being extracted by refineries belonging to a corporation.", + "summary": "Moon extraction timers", + "request": "get", + "version": 1, + "headers": [ + { + "name": "structure_id", + "type": "integer" + }, + { + "name": "moon_id", + "type": "integer" + }, + { + "name": "extraction_start_time", + "type": "string" + }, + { + "name": "chunk_arrival_time", + "type": "string" + }, + { + "name": "natural_decay_time", + "type": "string" + } + ], + "path": "/v1/corporation/{corporation_id}/mining/extractions/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "insurance_prices": { + "description": "Return available insurance levels for all ship types", + "summary": "List insurance levels", + "request": "get", + "version": 1, + "headers": [ + { + "name": "type_id", + "type": "integer" + }, + { + "name": "levels", + "type": "array", + "sub_headers": [ + "cost", + "payout", + "name" + ] + } + ], + "path": "/v1/insurance/prices/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "killmails_killmail_killmail_hash": { + "description": "Return a single killmail from its ID and hash", + "summary": "Get a single killmail", + "request": "get", + "version": 1, + "headers": [ + { + "name": "killmail_id", + "type": "integer" + }, + { + "name": "killmail_time", + "type": "string" + }, + { + "name": "victim-character_id", + "type": "integer" + }, + { + "name": "victim-corporation_id", + "type": "integer" + }, + { + "name": "victim-alliance_id", + "type": "integer" + }, + { + "name": "victim-faction_id", + "type": "integer" + }, + { + "name": "victim-damage_taken", + "type": "integer" + }, + { + "name": "victim-ship_type_id", + "type": "integer" + }, + { + "name": "victim-items", + "type": "array" + }, + { + "name": "victim-position", + "type": "object" + }, + { + "name": "attackers", + "type": "array", + "sub_headers": [ + "character_id", + "corporation_id", + "alliance_id", + "faction_id", + "security_status", + "final_blow", + "damage_done", + "ship_type_id", + "weapon_type_id" + ] + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "moon_id", + "type": "integer" + }, + { + "name": "war_id", + "type": "integer" + } + ], + "path": "/v1/killmails/{killmail_id}/{killmail_hash}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "killmail_hash", + "description": "The killmail hash for verification", + "required": true, + "type": "string", + "in": "path" + }, + { + "name": "killmail_id", + "description": "The killmail ID to be queried", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_killmails_recent": { + "description": "Return a list of character's recent kills and losses", + "summary": "Get character kills and losses", + "request": "get", + "version": 1, + "headers": [ + { + "name": "killmail_id", + "type": "integer" + }, + { + "name": "killmail_hash", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/killmails/recent/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "max_count", + "description": "How many killmails to return at maximum", + "required": false, + "type": "integer", + "in": "query" + }, + { + "name": "max_kill_id", + "description": "Only return killmails with ID smaller than this.\n", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_killmails_recent": { + "description": "Get a list of corporation's recent kills and losses", + "summary": "Get corporation kills and losses", + "request": "get", + "version": 1, + "headers": [ + { + "name": "killmail_id", + "type": "integer" + }, + { + "name": "killmail_hash", + "type": "string" + } + ], + "path": "/v1/corporations/{corporation_id}/killmails/recent/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "max_kill_id", + "description": "Only return killmails with ID smaller than this", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_location": { + "description": "Information about the characters current location. Returns the current solar system id, and also the current station or structure ID if applicable.", + "summary": "Get character location", + "request": "get", + "version": 1, + "headers": [ + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "station_id", + "type": "integer" + }, + { + "name": "structure_id", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/location/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_ship": { + "description": "Get the current ship type, name and id", + "summary": "Get current ship", + "request": "get", + "version": 1, + "headers": [ + { + "name": "ship_type_id", + "type": "integer" + }, + { + "name": "ship_item_id", + "type": "integer" + }, + { + "name": "ship_name", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/ship/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_online": { + "description": "Checks if the character is currently online", + "summary": "Get character online", + "request": "get", + "version": 2, + "headers": [ + { + "name": "online", + "type": "boolean" + }, + { + "name": "last_login", + "type": "string" + }, + { + "name": "last_logout", + "type": "string" + }, + { + "name": "logins", + "type": "integer" + } + ], + "path": "/v2/characters/{character_id}/online/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "loyalty_stores_corporation_offers": { + "description": "Return a list of offers from a specific corporation's loyalty store", + "summary": "List loyalty store offers", + "request": "get", + "version": 1, + "headers": [ + { + "name": "offer_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "lp_cost", + "type": "integer" + }, + { + "name": "isk_cost", + "type": "integer" + }, + { + "name": "ak_cost", + "type": "integer" + }, + { + "name": "required_items", + "type": "array", + "sub_headers": [ + "type_id", + "quantity" + ] + } + ], + "path": "/v1/loyalty/stores/{corporation_id}/offers/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "corporation_id", + "description": "An EVE corporation ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_loyalty_points": { + "description": "Return a list of loyalty points for all corporations the character has worked for", + "summary": "Get loyalty points", + "request": "get", + "version": 1, + "headers": [ + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "loyalty_points", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/loyalty/points/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_mail": { + "description": "Return the 50 most recent mail headers belonging to the character that match the query criteria. Queries can be filtered by label, and last_mail_id can be used to paginate backwards.", + "summary": "Return mail headers", + "request": "get", + "version": 1, + "headers": [ + { + "name": "mail_id", + "type": "integer" + }, + { + "name": "subject", + "type": "string" + }, + { + "name": "from", + "type": "integer" + }, + { + "name": "timestamp", + "type": "string" + }, + { + "name": "labels", + "type": "array" + }, + { + "name": "recipients", + "type": "array", + "sub_headers": [ + "recipient_type", + "recipient_id" + ] + }, + { + "name": "is_read", + "type": "boolean" + } + ], + "path": "/v1/characters/{character_id}/mail/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "labels", + "description": "Fetch only mails that match one or more of the given labels", + "required": false, + "type": "array", + "in": "query" + }, + { + "name": "last_mail_id", + "description": "List only mail with an ID lower than the given ID, if present", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_mail_labels": { + "description": "Return a list of the users mail labels, unread counts for each label and a total unread count.", + "summary": "Get mail labels and unread counts", + "request": "get", + "version": 3, + "headers": [ + { + "name": "total_unread_count", + "type": "integer" + }, + { + "name": "labels", + "type": "array", + "sub_headers": [ + "unread_count", + "label_id", + "name", + "color" + ] + } + ], + "path": "/v3/characters/{character_id}/mail/labels/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_mail_lists": { + "description": "Return all mailing lists that the character is subscribed to", + "summary": "Return mailing list subscriptions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "mailing_list_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/mail/lists/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_mail_mail": { + "description": "Return the contents of an EVE mail", + "summary": "Return a mail", + "request": "get", + "version": 1, + "headers": [ + { + "name": "subject", + "type": "string" + }, + { + "name": "from", + "type": "integer" + }, + { + "name": "timestamp", + "type": "string" + }, + { + "name": "recipients", + "type": "array", + "sub_headers": [ + "recipient_type", + "recipient_id" + ] + }, + { + "name": "body", + "type": "string" + }, + { + "name": "labels", + "type": "array" + }, + { + "name": "read", + "type": "boolean" + } + ], + "path": "/v1/characters/{character_id}/mail/{mail_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "mail_id", + "description": "An EVE mail ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "markets_prices": { + "description": "Return a list of prices", + "summary": "List market prices", + "request": "get", + "version": 1, + "headers": [ + { + "name": "type_id", + "type": "integer" + }, + { + "name": "average_price", + "type": "number" + }, + { + "name": "adjusted_price", + "type": "number" + } + ], + "path": "/v1/markets/prices/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "markets_region_orders": { + "description": "Return a list of orders in a region", + "summary": "List orders in a region", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "range", + "type": "string" + } + ], + "path": "/v1/markets/{region_id}/orders/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "order_type", + "description": "Filter buy/sell orders, return all orders by default. If you query without type_id, we always return both buy and sell orders.", + "required": true, + "type": "string", + "in": "query" + }, + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + }, + { + "name": "region_id", + "description": "Return orders in this region", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "type_id", + "description": "Return orders only for this type", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "markets_region_history": { + "description": "Return a list of historical market statistics for the specified type in a region", + "summary": "List historical market statistics in a region", + "request": "get", + "version": 1, + "headers": [ + { + "name": "date", + "type": "string" + }, + { + "name": "order_count", + "type": "integer" + }, + { + "name": "volume", + "type": "integer" + }, + { + "name": "highest", + "type": "number" + }, + { + "name": "average", + "type": "number" + }, + { + "name": "lowest", + "type": "number" + } + ], + "path": "/v1/markets/{region_id}/history/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "region_id", + "description": "Return statistics in this region", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "type_id", + "description": "Return statistics for this type", + "required": true, + "type": "integer", + "in": "query" + } + ] + }, + "markets_structures_structure": { + "description": "Return all orders in a structure", + "summary": "List orders in a structure", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "range", + "type": "string" + } + ], + "path": "/v1/markets/structures/{structure_id}/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + }, + { + "name": "structure_id", + "description": "Return orders in this structure", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "markets_groups": { + "description": "Get a list of item groups", + "summary": "Get item groups", + "request": "get", + "version": 1, + "headers": [ + { + "name": "group_ids", + "type": "integer" + } + ], + "path": "/v1/markets/groups/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "markets_groups_market_group": { + "description": "Get information on an item group", + "summary": "Get item group information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "market_group_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "types", + "type": "array" + }, + { + "name": "parent_group_id", + "type": "integer" + } + ], + "path": "/v1/markets/groups/{market_group_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "market_group_id", + "description": "An Eve item group ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_orders": { + "description": "List market orders placed by a character", + "summary": "List open orders from a character", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "region_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "range", + "type": "string" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "account_id", + "type": "integer" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "is_corp", + "type": "boolean" + }, + { + "name": "escrow", + "type": "number" + } + ], + "path": "/v1/characters/{character_id}/orders/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_orders_history": { + "description": "List cancelled and expired market orders placed by a character up to 90 days in the past.", + "summary": "List historical orders by a character", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "region_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "range", + "type": "string" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "escrow", + "type": "number" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "is_corporation", + "type": "boolean" + } + ], + "path": "/v1/characters/{character_id}/orders/history/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "markets_region_types": { + "description": "Return a list of type IDs that have active orders in the region, for efficient market indexing.", + "summary": "List type IDs relevant to a market", + "request": "get", + "version": 1, + "headers": [ + { + "name": "type_ids", + "type": "integer" + } + ], + "path": "/v1/markets/{region_id}/types/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + }, + { + "name": "region_id", + "description": "Return statistics in this region", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_corporation_orders": { + "description": "List open market orders placed on behalf of a corporation", + "summary": "List open orders from a corporation", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "region_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "range", + "type": "string" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "wallet_division", + "type": "integer" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "escrow", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/orders/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_orders_history": { + "description": "List cancelled and expired market orders placed on behalf of a corporation up to 90 days in the past.", + "summary": "List historical orders from a corporation", + "request": "get", + "version": 1, + "headers": [ + { + "name": "order_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "region_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "range", + "type": "string" + }, + { + "name": "price", + "type": "number" + }, + { + "name": "volume_total", + "type": "integer" + }, + { + "name": "volume_remain", + "type": "integer" + }, + { + "name": "issued", + "type": "string" + }, + { + "name": "is_buy_order", + "type": "boolean" + }, + { + "name": "min_volume", + "type": "integer" + }, + { + "name": "escrow", + "type": "number" + }, + { + "name": "duration", + "type": "integer" + }, + { + "name": "state", + "type": "string" + }, + { + "name": "wallet_division", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/orders/history/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "opportunities_groups": { + "description": "Return a list of opportunities groups", + "summary": "Get opportunities groups", + "request": "get", + "version": 1, + "headers": [ + { + "name": "group_ids", + "type": "integer" + } + ], + "path": "/v1/opportunities/groups/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "opportunities_groups_group": { + "description": "Return information of an opportunities group", + "summary": "Get opportunities group", + "request": "get", + "version": 1, + "headers": [ + { + "name": "group_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "notification", + "type": "string" + }, + { + "name": "required_tasks", + "type": "array" + }, + { + "name": "connected_groups", + "type": "array" + } + ], + "path": "/v1/opportunities/groups/{group_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "group_id", + "description": "ID of an opportunities group", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "opportunities_tasks": { + "description": "Return a list of opportunities tasks", + "summary": "Get opportunities tasks", + "request": "get", + "version": 1, + "headers": [ + { + "name": "task_ids", + "type": "integer" + } + ], + "path": "/v1/opportunities/tasks/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "opportunities_tasks_task": { + "description": "Return information of an opportunities task", + "summary": "Get opportunities task", + "request": "get", + "version": 1, + "headers": [ + { + "name": "task_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "notification", + "type": "string" + } + ], + "path": "/v1/opportunities/tasks/{task_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "task_id", + "description": "ID of an opportunities task", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_opportunities": { + "description": "Return a list of tasks finished by a character", + "summary": "Get a character's completed tasks", + "request": "get", + "version": 1, + "headers": [ + { + "name": "task_id", + "type": "integer" + }, + { + "name": "completed_at", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/opportunities/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_planets": { + "description": "Returns a list of all planetary colonies owned by a character.", + "summary": "Get colonies", + "request": "get", + "version": 1, + "headers": [ + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "planet_id", + "type": "integer" + }, + { + "name": "owner_id", + "type": "integer" + }, + { + "name": "upgrade_level", + "type": "integer" + }, + { + "name": "num_pins", + "type": "integer" + }, + { + "name": "last_update", + "type": "string" + }, + { + "name": "planet_type", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/planets/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_planets_planet": { + "description": "Returns full details on the layout of a single planetary colony, including links, pins and routes. Note: Planetary information is only recalculated when the colony is viewed through the client. Information will not update until this criteria is met.", + "summary": "Get colony layout", + "request": "get", + "version": 3, + "headers": [ + { + "name": "links", + "type": "array", + "sub_headers": [ + "source_pin_id", + "destination_pin_id", + "link_level" + ] + }, + { + "name": "pins", + "type": "array", + "sub_headers": [ + "latitude", + "longitude", + "pin_id", + "type_id", + "schematic_id", + "extractor_details", + "factory_details", + "contents", + "install_time", + "expiry_time", + "last_cycle_start" + ] + }, + { + "name": "routes", + "type": "array", + "sub_headers": [ + "route_id", + "source_pin_id", + "destination_pin_id", + "content_type_id", + "quantity", + "waypoints" + ] + } + ], + "path": "/v3/characters/{character_id}/planets/{planet_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "planet_id", + "description": "Planet id of the target planet", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_schematics_schematic": { + "description": "Get information on a planetary factory schematic", + "summary": "Get schematic information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "schematic_name", + "type": "string" + }, + { + "name": "cycle_time", + "type": "integer" + } + ], + "path": "/v1/universe/schematics/{schematic_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "schematic_id", + "description": "A PI schematic ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "corporations_corporation_customs_offices": { + "description": "List customs offices owned by a corporation", + "summary": "List corporation customs offices", + "request": "get", + "version": 1, + "headers": [ + { + "name": "office_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "reinforce_exit_start", + "type": "integer" + }, + { + "name": "reinforce_exit_end", + "type": "integer" + }, + { + "name": "corporation_tax_rate", + "type": "number" + }, + { + "name": "allow_alliance_access", + "type": "boolean" + }, + { + "name": "alliance_tax_rate", + "type": "number" + }, + { + "name": "allow_access_with_standings", + "type": "boolean" + }, + { + "name": "standing_level", + "type": "string" + }, + { + "name": "excellent_standing_tax_rate", + "type": "number" + }, + { + "name": "good_standing_tax_rate", + "type": "number" + }, + { + "name": "neutral_standing_tax_rate", + "type": "number" + }, + { + "name": "bad_standing_tax_rate", + "type": "number" + }, + { + "name": "terrible_standing_tax_rate", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/customs_offices/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "route_origin_destination": { + "description": "Get the systems between origin and destination", + "summary": "Get route", + "request": "get", + "version": 1, + "headers": [ + { + "name": "integer", + "type": "integer" + } + ], + "path": "/v1/route/{origin}/{destination}/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "avoid", + "description": "avoid solar system ID(s)", + "required": null, + "type": "array", + "in": "query" + }, + { + "name": "connections", + "description": "connected solar system pairs", + "required": null, + "type": "array", + "in": "query" + }, + { + "name": "destination", + "description": "destination solar system ID", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "flag", + "description": "route security preference", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "origin", + "description": "origin solar system ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "characters_character_search": { + "description": "Search for entities that match a given sub", + "summary": "Search on a string", + "request": "get", + "version": 3, + "headers": [ + { + "name": "agent", + "type": "array" + }, + { + "name": "alliance", + "type": "array" + }, + { + "name": "character", + "type": "array" + }, + { + "name": "constellation", + "type": "array" + }, + { + "name": "corporation", + "type": "array" + }, + { + "name": "faction", + "type": "array" + }, + { + "name": "inventory_type", + "type": "array" + }, + { + "name": "region", + "type": "array" + }, + { + "name": "solar_system", + "type": "array" + }, + { + "name": "station", + "type": "array" + }, + { + "name": "structure", + "type": "array" + } + ], + "path": "/v3/characters/{character_id}/search/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "categories", + "description": "Type of entities to search for", + "required": true, + "type": "array", + "in": "query" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "search", + "description": "The string to search on", + "required": true, + "type": "string", + "in": "query" + }, + { + "name": "strict", + "description": "Whether the search should be a strict match", + "required": null, + "type": "boolean", + "in": "query" + } + ] + }, + "eve_search": { + "description": "Search for entities that match a given sub", + "summary": "Search on a string", + "request": "get", + "version": 2, + "headers": [ + { + "name": "agent", + "type": "array" + }, + { + "name": "alliance", + "type": "array" + }, + { + "name": "character", + "type": "array" + }, + { + "name": "constellation", + "type": "array" + }, + { + "name": "corporation", + "type": "array" + }, + { + "name": "faction", + "type": "array" + }, + { + "name": "inventory_type", + "type": "array" + }, + { + "name": "region", + "type": "array" + }, + { + "name": "solar_system", + "type": "array" + }, + { + "name": "station", + "type": "array" + } + ], + "path": "/v2/search/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "categories", + "description": "Type of entities to search for", + "required": true, + "type": "array", + "in": "query" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "search", + "description": "The string to search on", + "required": true, + "type": "string", + "in": "query" + }, + { + "name": "strict", + "description": "Whether the search should be a strict match", + "required": null, + "type": "boolean", + "in": "query" + } + ] + }, + "characters_character_skillqueue": { + "description": "List the configured skill queue for the given character", + "summary": "Get character's skill queue", + "request": "get", + "version": 2, + "headers": [ + { + "name": "skill_id", + "type": "integer" + }, + { + "name": "finish_date", + "type": "string" + }, + { + "name": "start_date", + "type": "string" + }, + { + "name": "finished_level", + "type": "integer" + }, + { + "name": "queue_position", + "type": "integer" + }, + { + "name": "training_start_sp", + "type": "integer" + }, + { + "name": "level_end_sp", + "type": "integer" + }, + { + "name": "level_start_sp", + "type": "integer" + } + ], + "path": "/v2/characters/{character_id}/skillqueue/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_skills": { + "description": "List all trained skills for the given character", + "summary": "Get character skills", + "request": "get", + "version": 4, + "headers": [ + { + "name": "skills", + "type": "array", + "sub_headers": [ + "skill_id", + "skillpoints_in_skill", + "trained_skill_level", + "active_skill_level" + ] + }, + { + "name": "total_sp", + "type": "integer" + }, + { + "name": "unallocated_sp", + "type": "integer" + } + ], + "path": "/v4/characters/{character_id}/skills/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "characters_character_attributes": { + "description": "Return attributes of a character", + "summary": "Get character attributes", + "request": "get", + "version": 1, + "headers": [ + { + "name": "charisma", + "type": "integer" + }, + { + "name": "intelligence", + "type": "integer" + }, + { + "name": "memory", + "type": "integer" + }, + { + "name": "perception", + "type": "integer" + }, + { + "name": "willpower", + "type": "integer" + }, + { + "name": "bonus_remaps", + "type": "integer" + }, + { + "name": "last_remap_date", + "type": "string" + }, + { + "name": "accrued_remap_cooldown_date", + "type": "string" + } + ], + "path": "/v1/characters/{character_id}/attributes/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "sovereignty_structures": { + "description": "Shows sovereignty data for structures.", + "summary": "List sovereignty structures", + "request": "get", + "version": 1, + "headers": [ + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "structure_id", + "type": "integer" + }, + { + "name": "structure_type_id", + "type": "integer" + }, + { + "name": "vulnerability_occupancy_level", + "type": "number" + }, + { + "name": "vulnerable_start_time", + "type": "string" + }, + { + "name": "vulnerable_end_time", + "type": "string" + } + ], + "path": "/v1/sovereignty/structures/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "sovereignty_campaigns": { + "description": "Shows sovereignty data for campaigns.", + "summary": "List sovereignty campaigns", + "request": "get", + "version": 1, + "headers": [ + { + "name": "campaign_id", + "type": "integer" + }, + { + "name": "structure_id", + "type": "integer" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "constellation_id", + "type": "integer" + }, + { + "name": "event_type", + "type": "string" + }, + { + "name": "start_time", + "type": "string" + }, + { + "name": "defender_id", + "type": "integer" + }, + { + "name": "defender_score", + "type": "number" + }, + { + "name": "attackers_score", + "type": "number" + }, + { + "name": "participants", + "type": "array", + "sub_headers": [ + "alliance_id", + "score" + ] + } + ], + "path": "/v1/sovereignty/campaigns/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "sovereignty_map": { + "description": "Shows sovereignty information for solar systems", + "summary": "List sovereignty of systems", + "request": "get", + "version": 1, + "headers": [ + { + "name": "system_id", + "type": "integer" + }, + { + "name": "alliance_id", + "type": "integer" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "faction_id", + "type": "integer" + } + ], + "path": "/v1/sovereignty/map/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "status": { + "description": "EVE Server status", + "summary": "Retrieve the uptime and player counts", + "request": "get", + "version": 1, + "headers": [ + { + "name": "start_time", + "type": "string" + }, + { + "name": "players", + "type": "integer" + }, + { + "name": "server_version", + "type": "string" + }, + { + "name": "vip", + "type": "boolean" + } + ], + "path": "/v1/status/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + + ] + }, + "universe_planets_planet": { + "description": "Get information on a planet", + "summary": "Get planet information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "planet_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "system_id", + "type": "integer" + } + ], + "path": "/v1/universe/planets/{planet_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "planet_id", + "description": "planet_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_stations_station": { + "description": "Get information on a station", + "summary": "Get station information", + "request": "get", + "version": 2, + "headers": [ + { + "name": "station_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "owner", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "race_id", + "type": "integer" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "reprocessing_efficiency", + "type": "number" + }, + { + "name": "reprocessing_stations_take", + "type": "number" + }, + { + "name": "max_dockable_ship_volume", + "type": "number" + }, + { + "name": "office_rental_cost", + "type": "number" + }, + { + "name": "services", + "type": "array" + } + ], + "path": "/v2/universe/stations/{station_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "station_id", + "description": "station_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_structures_structure": { + "description": "Returns information on requested structure, if you are on the ACL. Otherwise, returns \"Forbidden\" for all inputs.", + "summary": "Get structure information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + } + ], + "path": "/v1/universe/structures/{structure_id}/", + "authed": true, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "structure_id", + "description": "An Eve structure ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_systems_system": { + "description": "Get information on a solar system", + "summary": "Get solar system information", + "request": "get", + "version": 3, + "headers": [ + { + "name": "star_id", + "type": "integer" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "security_status", + "type": "number" + }, + { + "name": "security_class", + "type": "string" + }, + { + "name": "constellation_id", + "type": "integer" + }, + { + "name": "planets", + "type": "array", + "sub_headers": [ + "planet_id", + "moons" + ] + }, + { + "name": "stargates", + "type": "array" + }, + { + "name": "stations", + "type": "array" + } + ], + "path": "/v3/universe/systems/{system_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "system_id", + "description": "system_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_systems": { + "description": "Get a list of solar systems", + "summary": "Get solar systems", + "request": "get", + "version": 1, + "headers": [ + { + "name": "system_ids", + "type": "integer" + } + ], + "path": "/v1/universe/systems/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_types_type": { + "description": "Get information on a type", + "summary": "Get type information", + "request": "get", + "version": 3, + "headers": [ + { + "name": "type_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "published", + "type": "boolean" + }, + { + "name": "group_id", + "type": "integer" + }, + { + "name": "market_group_id", + "type": "integer" + }, + { + "name": "radius", + "type": "number" + }, + { + "name": "volume", + "type": "number" + }, + { + "name": "packaged_volume", + "type": "number" + }, + { + "name": "icon_id", + "type": "integer" + }, + { + "name": "capacity", + "type": "number" + }, + { + "name": "portion_size", + "type": "integer" + }, + { + "name": "mass", + "type": "number" + }, + { + "name": "graphic_id", + "type": "integer" + }, + { + "name": "dogma_attributes", + "type": "array", + "sub_headers": [ + "attribute_id", + "value" + ] + }, + { + "name": "dogma_effects", + "type": "array", + "sub_headers": [ + "effect_id", + "is_default" + ] + } + ], + "path": "/v3/universe/types/{type_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "type_id", + "description": "An Eve item type ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_types": { + "description": "Get a list of type ids", + "summary": "Get types", + "request": "get", + "version": 1, + "headers": [ + { + "name": "type_ids", + "type": "integer" + } + ], + "path": "/v1/universe/types/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "universe_groups": { + "description": "Get a list of item groups", + "summary": "Get item groups", + "request": "get", + "version": 1, + "headers": [ + { + "name": "group_ids", + "type": "integer" + } + ], + "path": "/v1/universe/groups/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + } + ] + }, + "universe_groups_group": { + "description": "Get information on an item group", + "summary": "Get item group information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "group_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "published", + "type": "boolean" + }, + { + "name": "category_id", + "type": "integer" + }, + { + "name": "types", + "type": "array" + } + ], + "path": "/v1/universe/groups/{group_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "group_id", + "description": "An Eve item group ID", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_categories": { + "description": "Get a list of item categories", + "summary": "Get item categories", + "request": "get", + "version": 1, + "headers": [ + { + "name": "categorie_ids", + "type": "integer" + } + ], + "path": "/v1/universe/categories/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_categories_category": { + "description": "Get information of an item category", + "summary": "Get item category information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "category_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "published", + "type": "boolean" + }, + { + "name": "groups", + "type": "array" + } + ], + "path": "/v1/universe/categories/{category_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "category_id", + "description": "An Eve item category ID", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_structures": { + "description": "List all public structures", + "summary": "List all public structures", + "request": "get", + "version": 1, + "headers": [ + { + "name": "structure_ids", + "type": "integer" + } + ], + "path": "/v1/universe/structures/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_races": { + "description": "Get a list of character races", + "summary": "Get character races", + "request": "get", + "version": 1, + "headers": [ + { + "name": "race_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "alliance_id", + "type": "integer" + } + ], + "path": "/v1/universe/races/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_factions": { + "description": "Get a list of factions", + "summary": "Get factions", + "request": "get", + "version": 2, + "headers": [ + { + "name": "faction_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "militia_corporation_id", + "type": "integer" + }, + { + "name": "size_factor", + "type": "number" + }, + { + "name": "station_count", + "type": "integer" + }, + { + "name": "station_system_count", + "type": "integer" + }, + { + "name": "is_unique", + "type": "boolean" + } + ], + "path": "/v2/universe/factions/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_bloodlines": { + "description": "Get a list of bloodlines", + "summary": "Get bloodlines", + "request": "get", + "version": 1, + "headers": [ + { + "name": "bloodline_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "race_id", + "type": "integer" + }, + { + "name": "ship_type_id", + "type": "integer" + }, + { + "name": "corporation_id", + "type": "integer" + }, + { + "name": "perception", + "type": "integer" + }, + { + "name": "willpower", + "type": "integer" + }, + { + "name": "charisma", + "type": "integer" + }, + { + "name": "memory", + "type": "integer" + }, + { + "name": "intelligence", + "type": "integer" + } + ], + "path": "/v1/universe/bloodlines/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_regions": { + "description": "Get a list of regions", + "summary": "Get regions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "region_ids", + "type": "integer" + } + ], + "path": "/v1/universe/regions/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_regions_region": { + "description": "Get information on a region", + "summary": "Get region information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "region_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "constellations", + "type": "array" + } + ], + "path": "/v1/universe/regions/{region_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + }, + { + "name": "region_id", + "description": "region_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_constellations": { + "description": "Get a list of constellations", + "summary": "Get constellations", + "request": "get", + "version": 1, + "headers": [ + { + "name": "constellation_ids", + "type": "integer" + } + ], + "path": "/v1/universe/constellations/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_constellations_constellation": { + "description": "Get information on a constellation", + "summary": "Get constellation information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "constellation_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "region_id", + "type": "integer" + }, + { + "name": "systems", + "type": "array" + } + ], + "path": "/v1/universe/constellations/{constellation_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "constellation_id", + "description": "constellation_id integer", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "universe_moons_moon": { + "description": "Get information on a moon", + "summary": "Get moon information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "moon_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "system_id", + "type": "integer" + } + ], + "path": "/v1/universe/moons/{moon_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "moon_id", + "description": "moon_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_stargates_stargate": { + "description": "Get information on a stargate", + "summary": "Get stargate information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "stargate_id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "position-x", + "type": "number" + }, + { + "name": "position-y", + "type": "number" + }, + { + "name": "position-z", + "type": "number" + }, + { + "name": "system_id", + "type": "integer" + }, + { + "name": "destination-system_id", + "type": "integer" + }, + { + "name": "destination-stargate_id", + "type": "integer" + } + ], + "path": "/v1/universe/stargates/{stargate_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "stargate_id", + "description": "stargate_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_graphics": { + "description": "Get a list of graphics", + "summary": "Get graphics", + "request": "get", + "version": 1, + "headers": [ + { + "name": "graphic_ids", + "type": "integer" + } + ], + "path": "/v1/universe/graphics/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + + ] + }, + "universe_graphics_graphic": { + "description": "Get information on a graphic", + "summary": "Get graphic information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "graphic_id", + "type": "integer" + }, + { + "name": "graphic_file", + "type": "string" + }, + { + "name": "sof_race_name", + "type": "string" + }, + { + "name": "sof_fation_name", + "type": "string" + }, + { + "name": "sof_dna", + "type": "string" + }, + { + "name": "sof_hull_name", + "type": "string" + }, + { + "name": "collision_file", + "type": "string" + }, + { + "name": "icon_folder", + "type": "string" + } + ], + "path": "/v1/universe/graphics/{graphic_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "graphic_id", + "description": "graphic_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_system_jumps": { + "description": "Get the number of jumps in solar systems within the last hour ending at the timestamp of the Last", + "summary": "Get system jumps", + "request": "get", + "version": 1, + "headers": [ + { + "name": "system_id", + "type": "integer" + }, + { + "name": "ship_jumps", + "type": "integer" + } + ], + "path": "/v1/universe/system_jumps/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "universe_system_kills": { + "description": "Get the number of ship, pod and NPC kills per solar system within the last hour ending at the timestamp of the Last", + "summary": "Get system kills", + "request": "get", + "version": 2, + "headers": [ + { + "name": "system_id", + "type": "integer" + }, + { + "name": "ship_kills", + "type": "integer" + }, + { + "name": "npc_kills", + "type": "integer" + }, + { + "name": "pod_kills", + "type": "integer" + } + ], + "path": "/v2/universe/system_kills/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "universe_stars_star": { + "description": "Get information on a star", + "summary": "Get star information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "name", + "type": "string" + }, + { + "name": "solar_system_id", + "type": "integer" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "age", + "type": "integer" + }, + { + "name": "luminosity", + "type": "number" + }, + { + "name": "radius", + "type": "integer" + }, + { + "name": "spectral_class", + "type": "string" + }, + { + "name": "temperature", + "type": "integer" + } + ], + "path": "/v1/universe/stars/{star_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "star_id", + "description": "star_id integer", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "universe_ancestries": { + "description": "Get all character ancestries", + "summary": "Get ancestries", + "request": "get", + "version": 1, + "headers": [ + { + "name": "id", + "type": "integer" + }, + { + "name": "name", + "type": "string" + }, + { + "name": "bloodline_id", + "type": "integer" + }, + { + "name": "description", + "type": "string" + }, + { + "name": "short_description", + "type": "string" + }, + { + "name": "icon_id", + "type": "integer" + } + ], + "path": "/v1/universe/ancestries/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "language", + "description": "Language to use in the response", + "required": null, + "type": "string", + "in": "query" + } + ] + }, + "characters_character_wallet": { + "description": "Returns a character's wallet balance", + "summary": "Get a character's wallet balance", + "request": "get", + "version": 1, + "headers": [ + + ], + "path": "/v1/characters/{character_id}/wallet/", + "authed": true, + "response_type": "number", + "item_type": "number", + "parameters": [ + + ] + }, + "characters_character_wallet_journal": { + "description": "Retrieve character wallet journal", + "summary": "Get character wallet journal", + "request": "get", + "version": 3, + "headers": [ + { + "name": "date", + "type": "string" + }, + { + "name": "ref_id", + "type": "integer" + }, + { + "name": "ref_type", + "type": "string" + }, + { + "name": "first_party_id", + "type": "integer" + }, + { + "name": "first_party_type", + "type": "string" + }, + { + "name": "second_party_id", + "type": "integer" + }, + { + "name": "second_party_type", + "type": "string" + }, + { + "name": "amount", + "type": "number" + }, + { + "name": "balance", + "type": "number" + }, + { + "name": "reason", + "type": "string" + }, + { + "name": "tax_receiver_id", + "type": "integer" + }, + { + "name": "tax", + "type": "number" + }, + { + "name": "extra_info-location_id", + "type": "integer" + }, + { + "name": "extra_info-transaction_id", + "type": "integer" + }, + { + "name": "extra_info-npc_name", + "type": "string" + }, + { + "name": "extra_info-npc_id", + "type": "integer" + }, + { + "name": "extra_info-destroyed_ship_type_id", + "type": "integer" + }, + { + "name": "extra_info-character_id", + "type": "integer" + }, + { + "name": "extra_info-corporation_id", + "type": "integer" + }, + { + "name": "extra_info-alliance_id", + "type": "integer" + }, + { + "name": "extra_info-job_id", + "type": "integer" + }, + { + "name": "extra_info-contract_id", + "type": "integer" + }, + { + "name": "extra_info-system_id", + "type": "integer" + }, + { + "name": "extra_info-planet_id", + "type": "integer" + } + ], + "path": "/v3/characters/{character_id}/wallet/journal/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "from_id", + "description": "Only show journal entries happened before the transaction referenced by this id", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "characters_character_wallet_transactions": { + "description": "Get wallet transactions of a character", + "summary": "Get wallet transactions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "transaction_id", + "type": "integer" + }, + { + "name": "date", + "type": "string" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "unit_price", + "type": "number" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "client_id", + "type": "integer" + }, + { + "name": "is_buy", + "type": "boolean" + }, + { + "name": "is_personal", + "type": "boolean" + }, + { + "name": "journal_ref_id", + "type": "integer" + } + ], + "path": "/v1/characters/{character_id}/wallet/transactions/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "from_id", + "description": "Only show transactions happened before the one referenced by this id", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_wallets": { + "description": "Get a corporation's wallets", + "summary": "Returns a corporation's wallet balance", + "request": "get", + "version": 1, + "headers": [ + { + "name": "division", + "type": "integer" + }, + { + "name": "balance", + "type": "number" + } + ], + "path": "/v1/corporations/{corporation_id}/wallets/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + + ] + }, + "corporations_corporation_wallets_division_journal": { + "description": "Retrieve corporation wallet journal", + "summary": "Get corporation wallet journal", + "request": "get", + "version": 2, + "headers": [ + { + "name": "date", + "type": "string" + }, + { + "name": "ref_id", + "type": "integer" + }, + { + "name": "ref_type", + "type": "string" + }, + { + "name": "first_party_id", + "type": "integer" + }, + { + "name": "first_party_type", + "type": "string" + }, + { + "name": "second_party_id", + "type": "integer" + }, + { + "name": "second_party_type", + "type": "string" + }, + { + "name": "amount", + "type": "number" + }, + { + "name": "balance", + "type": "number" + }, + { + "name": "reason", + "type": "string" + }, + { + "name": "tax_receiver_id", + "type": "integer" + }, + { + "name": "tax", + "type": "number" + }, + { + "name": "extra_info-location_id", + "type": "integer" + }, + { + "name": "extra_info-transaction_id", + "type": "integer" + }, + { + "name": "extra_info-npc_name", + "type": "string" + }, + { + "name": "extra_info-npc_id", + "type": "integer" + }, + { + "name": "extra_info-destroyed_ship_type_id", + "type": "integer" + }, + { + "name": "extra_info-character_id", + "type": "integer" + }, + { + "name": "extra_info-corporation_id", + "type": "integer" + }, + { + "name": "extra_info-alliance_id", + "type": "integer" + }, + { + "name": "extra_info-job_id", + "type": "integer" + }, + { + "name": "extra_info-contract_id", + "type": "integer" + }, + { + "name": "extra_info-system_id", + "type": "integer" + }, + { + "name": "extra_info-planet_id", + "type": "integer" + } + ], + "path": "/v2/corporations/{corporation_id}/wallets/{division}/journal/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "division", + "description": "Wallet key of the division to fetch journals from", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "from_id", + "description": "Only show journal entries happened before the transaction referenced by this id", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "corporations_corporation_wallets_division_transactions": { + "description": "Get wallet transactions of a corporation", + "summary": "Get corporation wallet transactions", + "request": "get", + "version": 1, + "headers": [ + { + "name": "transaction_id", + "type": "integer" + }, + { + "name": "date", + "type": "string" + }, + { + "name": "type_id", + "type": "integer" + }, + { + "name": "location_id", + "type": "integer" + }, + { + "name": "unit_price", + "type": "number" + }, + { + "name": "quantity", + "type": "integer" + }, + { + "name": "client_id", + "type": "integer" + }, + { + "name": "is_buy", + "type": "boolean" + }, + { + "name": "journal_ref_id", + "type": "integer" + } + ], + "path": "/v1/corporations/{corporation_id}/wallets/{division}/transactions/", + "authed": true, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "division", + "description": "Wallet key of the division to fetch journals from", + "required": true, + "type": "integer", + "in": "path" + }, + { + "name": "from_id", + "description": "Only show journal entries happened before the transaction referenced by this id", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "wars": { + "description": "Return a list of wars", + "summary": "List wars", + "request": "get", + "version": 1, + "headers": [ + { + "name": "war_ids", + "type": "integer" + } + ], + "path": "/v1/wars/", + "authed": false, + "response_type": "array", + "item_type": "integer", + "parameters": [ + { + "name": "max_war_id", + "description": "Only return wars with ID smaller than this.", + "required": false, + "type": "integer", + "in": "query" + } + ] + }, + "wars_war": { + "description": "Return details about a war", + "summary": "Get war information", + "request": "get", + "version": 1, + "headers": [ + { + "name": "id", + "type": "integer" + }, + { + "name": "declared", + "type": "string" + }, + { + "name": "started", + "type": "string" + }, + { + "name": "retracted", + "type": "string" + }, + { + "name": "finished", + "type": "string" + }, + { + "name": "mutual", + "type": "boolean" + }, + { + "name": "open_for_allies", + "type": "boolean" + }, + { + "name": "aggressor-corporation_id", + "type": "integer" + }, + { + "name": "aggressor-alliance_id", + "type": "integer" + }, + { + "name": "aggressor-ships_killed", + "type": "integer" + }, + { + "name": "aggressor-isk_destroyed", + "type": "number" + }, + { + "name": "defender-corporation_id", + "type": "integer" + }, + { + "name": "defender-alliance_id", + "type": "integer" + }, + { + "name": "defender-ships_killed", + "type": "integer" + }, + { + "name": "defender-isk_destroyed", + "type": "number" + }, + { + "name": "allies", + "type": "array", + "sub_headers": [ + "corporation_id", + "alliance_id" + ] + } + ], + "path": "/v1/wars/{war_id}/", + "authed": false, + "response_type": "object", + "item_type": "object", + "parameters": [ + { + "name": "war_id", + "description": "ID for a war", + "required": true, + "type": "integer", + "in": "path" + } + ] + }, + "wars_war_killmails": { + "description": "Return a list of kills related to a war", + "summary": "List kills for a war", + "request": "get", + "version": 1, + "headers": [ + { + "name": "killmail_id", + "type": "integer" + }, + { + "name": "killmail_hash", + "type": "string" + } + ], + "path": "/v1/wars/{war_id}/killmails/", + "authed": false, + "response_type": "array", + "item_type": "object", + "parameters": [ + { + "name": "page", + "description": "Which page of results to return", + "required": null, + "type": "integer", + "in": "query" + }, + { + "name": "war_id", + "description": "A valid war ID", + "required": true, + "type": "integer", + "in": "path" + } + ] + } +}; diff --git a/function.gs b/function.gs new file mode 100644 index 0000000..fad9bd3 --- /dev/null +++ b/function.gs @@ -0,0 +1,2009 @@ +/** +* Public information about an alliance +* @param {integer} alliance_id (Required) An EVE alliance ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get alliance information. +* @customfunction +*/ +function alliances_alliance(alliance_id, opt_headers) { + if(!alliance_id) throw 'alliance_id is required'; + return parseData_(arguments.callee.name,{alliance_id:alliance_id,opt_headers:opt_headers}); +} + +/** +* List all current member corporations of an alliance +* @param {integer} alliance_id (Required) An EVE alliance ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List alliance's corporations. +* @customfunction +*/ +function alliances_alliance_corporations(alliance_id, opt_headers) { + if(!alliance_id) throw 'alliance_id is required'; + return parseData_(arguments.callee.name,{alliance_id:alliance_id,opt_headers:opt_headers}); +} + +/** +* Resolve a set of alliance IDs to alliance names +* @param {array} alliance_ids (Required) A comma separated list of alliance IDs. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get alliance names. +* @customfunction +*/ +function alliances_names(alliance_ids, opt_headers) { + if(!alliance_ids) throw 'alliance_ids is required'; + return parseData_(arguments.callee.name,{alliance_ids:alliance_ids,opt_headers:opt_headers}); +} + +/** +* Get the icon urls for a alliance +* @param {integer} alliance_id (Required) An EVE alliance ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get alliance icon. +* @customfunction +*/ +function alliances_alliance_icons(alliance_id, opt_headers) { + if(!alliance_id) throw 'alliance_id is required'; + return parseData_(arguments.callee.name,{alliance_id:alliance_id,opt_headers:opt_headers}); +} + +/** +* List all active player alliances +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List all alliances. +* @customfunction +*/ +function alliances(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return a list of the characters assets +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character assets. +* @customfunction +*/ +function characters_character_assets(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return a list of the corporation assets +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation assets. +* @customfunction +*/ +function corporations_corporation_assets(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* A list of your character's personal bookmarks +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List bookmarks. +* @customfunction +*/ +function characters_character_bookmarks(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* A list of your character's personal bookmark folders +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List bookmark folders. +* @customfunction +*/ +function characters_character_bookmarks_folders(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* A list of your corporation's bookmarks +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List corporation bookmarks. +* @customfunction +*/ +function corporations_corporation_bookmarks(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* A list of your corporation's bookmark folders +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List corporation bookmark folders. +* @customfunction +*/ +function corporations_corporation_bookmarks_folders(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get 50 event summaries from the calendar. If no from_event ID is given, the resource will return the next 50 chronological event summaries from now. If a from_event ID is specified, it will return the next 50 chronological event summaries from after that event. +* @param {integer} from_event The event ID to retrieve events from. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List calendar event summaries. +* @customfunction +*/ +function characters_character_calendar(from_event, name, opt_headers) { + return parseData_(arguments.callee.name,{from_event:from_event,name:name,opt_headers:opt_headers}); +} + +/** +* Get all the information for a specific event +* @param {integer} event_id (Required) The id of the event requested. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get an event. +* @customfunction +*/ +function characters_character_calendar_event(event_id, name, opt_headers) { + if(!event_id) throw 'event_id is required'; + return parseData_(arguments.callee.name,{event_id:event_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get all invited attendees for a given event +* @param {integer} event_id (Required) The id of the event requested. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get attendees. +* @customfunction +*/ +function characters_character_calendar_event_attendees(event_id, name, opt_headers) { + if(!event_id) throw 'event_id is required'; + return parseData_(arguments.callee.name,{event_id:event_id,name:name,opt_headers:opt_headers}); +} + +/** +* Returns aggregate yearly stats for a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Yearly aggregate stats. +* @customfunction +*/ +function characters_character_stats(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Public information about a character +* @param {integer} character_id (Required) An EVE character ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character's public information. +* @customfunction +*/ +function characters_character(character_id, opt_headers) { + if(!character_id) throw 'character_id is required'; + return parseData_(arguments.callee.name,{character_id:character_id,opt_headers:opt_headers}); +} + +/** +* Resolve a set of character IDs to character names +* @param {array} character_ids (Required) A comma separated list of character IDs. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character names. +* @customfunction +*/ +function characters_names(character_ids, opt_headers) { + if(!character_ids) throw 'character_ids is required'; + return parseData_(arguments.callee.name,{character_ids:character_ids,opt_headers:opt_headers}); +} + +/** +* Get portrait urls for a character +* @param {integer} character_id (Required) An EVE character ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character portraits. +* @customfunction +*/ +function characters_character_portrait(character_id, opt_headers) { + if(!character_id) throw 'character_id is required'; + return parseData_(arguments.callee.name,{character_id:character_id,opt_headers:opt_headers}); +} + +/** +* Get a list of all the corporations a character has been a member of +* @param {integer} character_id (Required) An EVE character ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation history. +* @customfunction +*/ +function characters_character_corporationhistory(character_id, opt_headers) { + if(!character_id) throw 'character_id is required'; + return parseData_(arguments.callee.name,{character_id:character_id,opt_headers:opt_headers}); +} + +/** +* Return chat channels that a character is the owner or operator of +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get chat channels. +* @customfunction +*/ +function characters_character_chat_channels(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of medals the character has +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get medals. +* @customfunction +*/ +function characters_character_medals(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return character standings from agents, NPC corporations, and factions +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get standings. +* @customfunction +*/ +function characters_character_standings(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of agents research information for a character. The formula for finding the current research points with an agent is: currentPoints = remainderPoints + pointsPerDay * days(currentTime +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get agents research. +* @customfunction +*/ +function characters_character_agents_research(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of blueprints the character owns +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get blueprints. +* @customfunction +*/ +function characters_character_blueprints(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return a character's jump activation and fatigue information +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get jump fatigue. +* @customfunction +*/ +function characters_character_fatigue(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return notifications about having been added to someone's contact list +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get new contact notifications. +* @customfunction +*/ +function characters_character_notifications_contacts(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return character notifications +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character notifications. +* @customfunction +*/ +function characters_character_notifications(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a character's corporation roles +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character corporation roles. +* @customfunction +*/ +function characters_character_roles(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a character's titles +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character corporation titles. +* @customfunction +*/ +function characters_character_titles(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* A list of the character's clones +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get clones. +* @customfunction +*/ +function characters_character_clones(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return implants on the active clone of a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get active implants. +* @customfunction +*/ +function characters_character_implants(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return contacts of a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get contacts. +* @customfunction +*/ +function characters_character_contacts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return contacts of a corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation contacts. +* @customfunction +*/ +function corporations_corporation_contacts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return contacts of an alliance +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get alliance contacts. +* @customfunction +*/ +function alliances_alliance_contacts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return custom labels for contacts the character defined +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get contact labels. +* @customfunction +*/ +function characters_character_contacts_labels(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns contracts available to a character, only if the character is issuer, acceptor or assignee. Only returns contracts no older than 30 days, or if the status is "in_progress". +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get contracts. +* @customfunction +*/ +function characters_character_contracts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Lists items of a particular contract +* @param {integer} contract_id (Required) ID of a contract. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get contract items. +* @customfunction +*/ +function characters_character_contracts_contract_items(contract_id, name, opt_headers) { + if(!contract_id) throw 'contract_id is required'; + return parseData_(arguments.callee.name,{contract_id:contract_id,name:name,opt_headers:opt_headers}); +} + +/** +* Lists bids on a particular auction contract +* @param {integer} contract_id (Required) ID of a contract. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get contract bids. +* @customfunction +*/ +function characters_character_contracts_contract_bids(contract_id, name, opt_headers) { + if(!contract_id) throw 'contract_id is required'; + return parseData_(arguments.callee.name,{contract_id:contract_id,name:name,opt_headers:opt_headers}); +} + +/** +* Returns contracts available to a coporation, only if the corporation is issuer, acceptor or assignee. Only returns contracts no older than 30 days, or if the status is "in_progress". +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get coporation contracts. +* @customfunction +*/ +function corporations_corporation_contracts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Lists items of a particular contract +* @param {integer} contract_id (Required) ID of a contract. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation contract items. +* @customfunction +*/ +function corporations_corporation_contracts_contract_items(contract_id, name, opt_headers) { + if(!contract_id) throw 'contract_id is required'; + return parseData_(arguments.callee.name,{contract_id:contract_id,name:name,opt_headers:opt_headers}); +} + +/** +* Lists bids on a particular auction contract +* @param {integer} contract_id (Required) ID of a contract. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation contract bids. +* @customfunction +*/ +function corporations_corporation_contracts_contract_bids(contract_id, name, page, opt_headers) { + if(!contract_id) throw 'contract_id is required'; + return parseData_(arguments.callee.name,{contract_id:contract_id,name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return the current shareholders of a corporation. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation shareholders. +* @customfunction +*/ +function corporations_corporation_shareholders(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Public information about a corporation +* @param {integer} corporation_id (Required) An EVE corporation ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation information. +* @customfunction +*/ +function corporations_corporation(corporation_id, opt_headers) { + if(!corporation_id) throw 'corporation_id is required'; + return parseData_(arguments.callee.name,{corporation_id:corporation_id,opt_headers:opt_headers}); +} + +/** +* Get a list of all the alliances a corporation has been a member of +* @param {integer} corporation_id (Required) An EVE corporation ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get alliance history. +* @customfunction +*/ +function corporations_corporation_alliancehistory(corporation_id, opt_headers) { + if(!corporation_id) throw 'corporation_id is required'; + return parseData_(arguments.callee.name,{corporation_id:corporation_id,opt_headers:opt_headers}); +} + +/** +* Resolve a set of corporation IDs to corporation names +* @param {array} corporation_ids (Required) A comma separated list of corporation IDs. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation names. +* @customfunction +*/ +function corporations_names(corporation_ids, opt_headers) { + if(!corporation_ids) throw 'corporation_ids is required'; + return parseData_(arguments.callee.name,{corporation_ids:corporation_ids,opt_headers:opt_headers}); +} + +/** +* Return the current member list of a corporation, the token's character need to be a member of the corporation. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation members. +* @customfunction +*/ +function corporations_corporation_members(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return the roles of all members if the character has the personnel manager role or any grantable role. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation member roles. +* @customfunction +*/ +function corporations_corporation_roles(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return how roles have changed for a coporation's members, up to a month +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation member roles history. +* @customfunction +*/ +function corporations_corporation_roles_history(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get the icon urls for a corporation +* @param {integer} corporation_id (Required) An EVE corporation ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation icon. +* @customfunction +*/ +function corporations_corporation_icons(corporation_id, opt_headers) { + if(!corporation_id) throw 'corporation_id is required'; + return parseData_(arguments.callee.name,{corporation_id:corporation_id,opt_headers:opt_headers}); +} + +/** +* Get a list of npc corporations +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get npc corporations. +* @customfunction +*/ +function corporations_npccorps(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get a list of corporation structures +* @param {string} language Language to use in the response. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation structures. +* @customfunction +*/ +function corporations_corporation_structures(language, name, page, opt_headers) { + return parseData_(arguments.callee.name,{language:language,name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Returns additional information about a corporation's members which helps tracking their activities +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Track corporation members. +* @customfunction +*/ +function corporations_corporation_membertracking(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return corporation hangar and wallet division names, only show if a division is not using the default name +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation divisions. +* @customfunction +*/ +function corporations_corporation_divisions(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return a corporation's member limit, not including CEO himself +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation member limit. +* @customfunction +*/ +function corporations_corporation_members_limit(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a corporation's titles +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation titles. +* @customfunction +*/ +function corporations_corporation_titles(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a corporation's members' titles +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation's members' titles. +* @customfunction +*/ +function corporations_corporation_members_titles(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a list of blueprints the corporation owns +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation blueprints. +* @customfunction +*/ +function corporations_corporation_blueprints(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return corporation standings from agents, NPC corporations, and factions +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation standings. +* @customfunction +*/ +function corporations_corporation_standings(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Returns list of corporation starbases (POSes) +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation starbases (POSes). +* @customfunction +*/ +function corporations_corporation_starbases(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Returns various settings and fuels of a starbase (POS) +* @param {integer} starbase_id (Required) An EVE starbase (POS) ID. +* @param {integer} system_id (Required) The solar system this starbase (POS) is located in,. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get starbase (POS) detail. +* @customfunction +*/ +function corporations_corporation_starbases_starbase(starbase_id, system_id, name, opt_headers) { + if(!starbase_id) throw 'starbase_id is required'; + if(!system_id) throw 'system_id is required'; + return parseData_(arguments.callee.name,{starbase_id:starbase_id,system_id:system_id,name:name,opt_headers:opt_headers}); +} + +/** +* Returns logs recorded in the past seven days from all audit log secure containers (ALSC) owned by a given corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get all corporation ALSC logs. +* @customfunction +*/ +function corporations_corporation_containers_logs(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return a corporation's facilities +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation facilities. +* @customfunction +*/ +function corporations_corporation_facilities(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a corporation's medals +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation medals. +* @customfunction +*/ +function corporations_corporation_medals(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Returns medals issued by a corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation issued medals. +* @customfunction +*/ +function corporations_corporation_medals_issue(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get a list of corporation outpost IDs Note: This endpoint will be removed once outposts are migrated to Citadels as talked about in this blog: https://community.eveonline.com/news/dev +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation outposts. +* @customfunction +*/ +function corporations_corporation_outposts(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get details about a given outpost. Note: This endpoint will be removed once outposts are migrated to Citadels as talked about in this blog: https://community.eveonline.com/news/dev +* @param {integer} outpost_id (Required) A station (outpost) ID. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation outpost details. +* @customfunction +*/ +function corporations_corporation_outposts_outpost(outpost_id, name, opt_headers) { + if(!outpost_id) throw 'outpost_id is required'; + return parseData_(arguments.callee.name,{outpost_id:outpost_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get a list of dogma attribute ids +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get attributes. +* @customfunction +*/ +function dogma_attributes(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a dogma attribute +* @param {integer} attribute_id (Required) A dogma attribute ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get attribute information. +* @customfunction +*/ +function dogma_attributes_attribute(attribute_id, opt_headers) { + if(!attribute_id) throw 'attribute_id is required'; + return parseData_(arguments.callee.name,{attribute_id:attribute_id,opt_headers:opt_headers}); +} + +/** +* Get a list of dogma effect ids +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get effects. +* @customfunction +*/ +function dogma_effects(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a dogma effect +* @param {integer} effect_id (Required) A dogma effect ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get effect information. +* @customfunction +*/ +function dogma_effects_effect(effect_id, opt_headers) { + if(!effect_id) throw 'effect_id is required'; + return parseData_(arguments.callee.name,{effect_id:effect_id,opt_headers:opt_headers}); +} + +/** +* Data about which NPC factions are at war +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Data about which NPC factions are at war. +* @customfunction +*/ +function fw_wars(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Statistical overviews of factions involved in faction warfare +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return An overview of statistics about factions involved in faction warfare. +* @customfunction +*/ +function fw_stats(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* An overview of the current ownership of faction warfare solar systems +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Ownership of faction warfare systems. +* @customfunction +*/ +function fw_systems(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Top 4 leaderboard of factions for kills and victory points separated by total, last week and yesterday. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List of the top factions in faction warfare. +* @customfunction +*/ +function fw_leaderboards(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Top 100 leaderboard of pilots for kills and victory points separated by total, last week and yesterday. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List of the top pilots in faction warfare. +* @customfunction +*/ +function fw_leaderboards_characters(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Top 10 leaderboard of corporations for kills and victory points separated by total, last week and yesterday. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List of the top corporations in faction warfare. +* @customfunction +*/ +function fw_leaderboards_corporations(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Statistics about a corporation involved in faction warfare +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Overview of a corporation involved in faction warfare. +* @customfunction +*/ +function corporations_corporation_fw_stats(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Statistical overview of a character involved in faction warfare +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Overview of a character involved in faction warfare. +* @customfunction +*/ +function characters_character_fw_stats(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return fittings of a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get fittings. +* @customfunction +*/ +function characters_character_fittings(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return details about a fleet +* @param {integer} fleet_id (Required) ID for a fleet. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get fleet information. +* @customfunction +*/ +function fleets_fleet(fleet_id, name, opt_headers) { + if(!fleet_id) throw 'fleet_id is required'; + return parseData_(arguments.callee.name,{fleet_id:fleet_id,name:name,opt_headers:opt_headers}); +} + +/** +* Return the fleet ID the character is in, if any. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character fleet info. +* @customfunction +*/ +function characters_character_fleet(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return information about fleet members +* @param {integer} fleet_id (Required) ID for a fleet. +* @param {string} language Language to use in the response. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get fleet members. +* @customfunction +*/ +function fleets_fleet_members(fleet_id, language, name, opt_headers) { + if(!fleet_id) throw 'fleet_id is required'; + return parseData_(arguments.callee.name,{fleet_id:fleet_id,language:language,name:name,opt_headers:opt_headers}); +} + +/** +* Return information about wings in a fleet +* @param {integer} fleet_id (Required) ID for a fleet. +* @param {string} language Language to use in the response. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get fleet wings. +* @customfunction +*/ +function fleets_fleet_wings(fleet_id, language, name, opt_headers) { + if(!fleet_id) throw 'fleet_id is required'; + return parseData_(arguments.callee.name,{fleet_id:fleet_id,language:language,name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of current incursions +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List incursions. +* @customfunction +*/ +function incursions(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return a list of industry facilities +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List industry facilities. +* @customfunction +*/ +function industry_facilities(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return cost indices for solar systems +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List solar system cost indices. +* @customfunction +*/ +function industry_systems(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* List industry jobs placed by a character +* @param {boolean} include_completed Whether retrieve completed character industry jobs as well. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List character industry jobs. +* @customfunction +*/ +function characters_character_industry_jobs(include_completed, name, opt_headers) { + return parseData_(arguments.callee.name,{include_completed:include_completed,name:name,opt_headers:opt_headers}); +} + +/** +* Paginated record of all mining done by a character for the past 30 days +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Character mining ledger. +* @customfunction +*/ +function characters_character_mining(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Paginated list of all entities capable of observing and recording mining for a corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Corporation mining observers. +* @customfunction +*/ +function corporation_corporation_mining_observers(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Paginated record of all mining seen by an observer +* @param {integer} observer_id (Required) A mining observer id. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Observed corporation mining. +* @customfunction +*/ +function corporation_corporation_mining_observers_observer(observer_id, name, page, opt_headers) { + if(!observer_id) throw 'observer_id is required'; + return parseData_(arguments.callee.name,{observer_id:observer_id,name:name,page:page,opt_headers:opt_headers}); +} + +/** +* List industry jobs run by a corporation +* @param {boolean} include_completed Whether retrieve completed industry jobs as well. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List corporation industry jobs. +* @customfunction +*/ +function corporations_corporation_industry_jobs(include_completed, name, page, opt_headers) { + return parseData_(arguments.callee.name,{include_completed:include_completed,name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Extraction timers for all moon chunks being extracted by refineries belonging to a corporation. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Moon extraction timers. +* @customfunction +*/ +function corporation_corporation_mining_extractions(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return available insurance levels for all ship types +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List insurance levels. +* @customfunction +*/ +function insurance_prices(language, opt_headers) { + return parseData_(arguments.callee.name,{language:language,opt_headers:opt_headers}); +} + +/** +* Return a single killmail from its ID and hash +* @param {string} killmail_hash (Required) The killmail hash for verification. +* @param {integer} killmail_id (Required) The killmail ID to be queried. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get a single killmail. +* @customfunction +*/ +function killmails_killmail_killmail_hash(killmail_hash, killmail_id, opt_headers) { + if(!killmail_hash) throw 'killmail_hash is required'; + if(!killmail_id) throw 'killmail_id is required'; + return parseData_(arguments.callee.name,{killmail_hash:killmail_hash,killmail_id:killmail_id,opt_headers:opt_headers}); +} + +/** +* Return a list of character's recent kills and losses +* @param {integer} max_count How many killmails to return at maximum. +* @param {integer} max_kill_id Only return killmails with ID smaller than this. +. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character kills and losses. +* @customfunction +*/ +function characters_character_killmails_recent(max_count, max_kill_id, name, opt_headers) { + return parseData_(arguments.callee.name,{max_count:max_count,max_kill_id:max_kill_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get a list of corporation's recent kills and losses +* @param {integer} max_kill_id Only return killmails with ID smaller than this. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation kills and losses. +* @customfunction +*/ +function corporations_corporation_killmails_recent(max_kill_id, name, opt_headers) { + return parseData_(arguments.callee.name,{max_kill_id:max_kill_id,name:name,opt_headers:opt_headers}); +} + +/** +* Information about the characters current location. Returns the current solar system id, and also the current station or structure ID if applicable. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character location. +* @customfunction +*/ +function characters_character_location(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Get the current ship type, name and id +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get current ship. +* @customfunction +*/ +function characters_character_ship(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Checks if the character is currently online +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character online. +* @customfunction +*/ +function characters_character_online(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of offers from a specific corporation's loyalty store +* @param {integer} corporation_id (Required) An EVE corporation ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List loyalty store offers. +* @customfunction +*/ +function loyalty_stores_corporation_offers(corporation_id, opt_headers) { + if(!corporation_id) throw 'corporation_id is required'; + return parseData_(arguments.callee.name,{corporation_id:corporation_id,opt_headers:opt_headers}); +} + +/** +* Return a list of loyalty points for all corporations the character has worked for +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get loyalty points. +* @customfunction +*/ +function characters_character_loyalty_points(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return the 50 most recent mail headers belonging to the character that match the query criteria. Queries can be filtered by label, and last_mail_id can be used to paginate backwards. +* @param {array} labels Fetch only mails that match one or more of the given labels. +* @param {integer} last_mail_id List only mail with an ID lower than the given ID, if present. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Return mail headers. +* @customfunction +*/ +function characters_character_mail(labels, last_mail_id, name, opt_headers) { + return parseData_(arguments.callee.name,{labels:labels,last_mail_id:last_mail_id,name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of the users mail labels, unread counts for each label and a total unread count. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get mail labels and unread counts. +* @customfunction +*/ +function characters_character_mail_labels(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return all mailing lists that the character is subscribed to +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Return mailing list subscriptions. +* @customfunction +*/ +function characters_character_mail_lists(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return the contents of an EVE mail +* @param {integer} mail_id (Required) An EVE mail ID. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Return a mail. +* @customfunction +*/ +function characters_character_mail_mail(mail_id, name, opt_headers) { + if(!mail_id) throw 'mail_id is required'; + return parseData_(arguments.callee.name,{mail_id:mail_id,name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of prices +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List market prices. +* @customfunction +*/ +function markets_prices(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return a list of orders in a region +* @param {string} order_type (Required) Filter buy/sell orders, return all orders by default. If you query without type_id, we always return both buy and sell orders.. +* @param {integer} region_id (Required) Return orders in this region. +* @param {integer} type_id Return orders only for this type. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List orders in a region. +* @customfunction +*/ +function markets_region_orders(order_type, region_id, type_id, page, opt_headers) { + if(!order_type) throw 'order_type is required'; + if(!region_id) throw 'region_id is required'; + return parseData_(arguments.callee.name,{order_type:order_type,region_id:region_id,type_id:type_id,page:page,opt_headers:opt_headers}); +} + +/** +* Return a list of historical market statistics for the specified type in a region +* @param {integer} region_id (Required) Return statistics in this region. +* @param {integer} type_id (Required) Return statistics for this type. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List historical market statistics in a region. +* @customfunction +*/ +function markets_region_history(region_id, type_id, opt_headers) { + if(!region_id) throw 'region_id is required'; + if(!type_id) throw 'type_id is required'; + return parseData_(arguments.callee.name,{region_id:region_id,type_id:type_id,opt_headers:opt_headers}); +} + +/** +* Return all orders in a structure +* @param {integer} structure_id (Required) Return orders in this structure. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List orders in a structure. +* @customfunction +*/ +function markets_structures_structure(structure_id, name, page, opt_headers) { + if(!structure_id) throw 'structure_id is required'; + return parseData_(arguments.callee.name,{structure_id:structure_id,name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get a list of item groups +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item groups. +* @customfunction +*/ +function markets_groups(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on an item group +* @param {string} language Language to use in the response. +* @param {integer} market_group_id (Required) An Eve item group ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item group information. +* @customfunction +*/ +function markets_groups_market_group(language, market_group_id, opt_headers) { + if(!market_group_id) throw 'market_group_id is required'; + return parseData_(arguments.callee.name,{language:language,market_group_id:market_group_id,opt_headers:opt_headers}); +} + +/** +* List market orders placed by a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List open orders from a character. +* @customfunction +*/ +function characters_character_orders(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* List cancelled and expired market orders placed by a character up to 90 days in the past. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List historical orders by a character. +* @customfunction +*/ +function characters_character_orders_history(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return a list of type IDs that have active orders in the region, for efficient market indexing. +* @param {integer} region_id (Required) Return statistics in this region. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List type IDs relevant to a market. +* @customfunction +*/ +function markets_region_types(region_id, page, opt_headers) { + if(!region_id) throw 'region_id is required'; + return parseData_(arguments.callee.name,{region_id:region_id,page:page,opt_headers:opt_headers}); +} + +/** +* List open market orders placed on behalf of a corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List open orders from a corporation. +* @customfunction +*/ +function corporations_corporation_orders(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* List cancelled and expired market orders placed on behalf of a corporation up to 90 days in the past. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List historical orders from a corporation. +* @customfunction +*/ +function corporations_corporation_orders_history(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Return a list of opportunities groups +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get opportunities groups. +* @customfunction +*/ +function opportunities_groups(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return information of an opportunities group +* @param {integer} group_id (Required) ID of an opportunities group. +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get opportunities group. +* @customfunction +*/ +function opportunities_groups_group(group_id, language, opt_headers) { + if(!group_id) throw 'group_id is required'; + return parseData_(arguments.callee.name,{group_id:group_id,language:language,opt_headers:opt_headers}); +} + +/** +* Return a list of opportunities tasks +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get opportunities tasks. +* @customfunction +*/ +function opportunities_tasks(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Return information of an opportunities task +* @param {integer} task_id (Required) ID of an opportunities task. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get opportunities task. +* @customfunction +*/ +function opportunities_tasks_task(task_id, opt_headers) { + if(!task_id) throw 'task_id is required'; + return parseData_(arguments.callee.name,{task_id:task_id,opt_headers:opt_headers}); +} + +/** +* Return a list of tasks finished by a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get a character's completed tasks. +* @customfunction +*/ +function characters_character_opportunities(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns a list of all planetary colonies owned by a character. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get colonies. +* @customfunction +*/ +function characters_character_planets(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Returns full details on the layout of a single planetary colony, including links, pins and routes. Note: Planetary information is only recalculated when the colony is viewed through the client. Information will not update until this criteria is met. +* @param {integer} planet_id (Required) Planet id of the target planet. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get colony layout. +* @customfunction +*/ +function characters_character_planets_planet(planet_id, name, opt_headers) { + if(!planet_id) throw 'planet_id is required'; + return parseData_(arguments.callee.name,{planet_id:planet_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get information on a planetary factory schematic +* @param {integer} schematic_id (Required) A PI schematic ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get schematic information. +* @customfunction +*/ +function universe_schematics_schematic(schematic_id, opt_headers) { + if(!schematic_id) throw 'schematic_id is required'; + return parseData_(arguments.callee.name,{schematic_id:schematic_id,opt_headers:opt_headers}); +} + +/** +* List customs offices owned by a corporation +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List corporation customs offices. +* @customfunction +*/ +function corporations_corporation_customs_offices(name, page, opt_headers) { + return parseData_(arguments.callee.name,{name:name,page:page,opt_headers:opt_headers}); +} + +/** +* Get the systems between origin and destination +* @param {array} avoid avoid solar system ID(s). +* @param {array} connections connected solar system pairs. +* @param {integer} destination (Required) destination solar system ID. +* @param {string} flag route security preference. +* @param {integer} origin (Required) origin solar system ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get route. +* @customfunction +*/ +function route_origin_destination(avoid, connections, destination, flag, origin, opt_headers) { + if(!destination) throw 'destination is required'; + if(!origin) throw 'origin is required'; + return parseData_(arguments.callee.name,{avoid:avoid,connections:connections,destination:destination,flag:flag,origin:origin,opt_headers:opt_headers}); +} + +/** +* Search for entities that match a given sub +* @param {array} categories (Required) Type of entities to search for. +* @param {string} language Language to use in the response. +* @param {string} search (Required) The string to search on. +* @param {boolean} strict Whether the search should be a strict match. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Search on a string. +* @customfunction +*/ +function characters_character_search(categories, language, search, strict, name, opt_headers) { + if(!categories) throw 'categories is required'; + if(!search) throw 'search is required'; + return parseData_(arguments.callee.name,{categories:categories,language:language,search:search,strict:strict,name:name,opt_headers:opt_headers}); +} + +/** +* Search for entities that match a given sub +* @param {array} categories (Required) Type of entities to search for. +* @param {string} language Language to use in the response. +* @param {string} search (Required) The string to search on. +* @param {boolean} strict Whether the search should be a strict match. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Search on a string. +* @customfunction +*/ +function eve_search(categories, language, search, strict, opt_headers) { + if(!categories) throw 'categories is required'; + if(!search) throw 'search is required'; + return parseData_(arguments.callee.name,{categories:categories,language:language,search:search,strict:strict,opt_headers:opt_headers}); +} + +/** +* List the configured skill queue for the given character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character's skill queue. +* @customfunction +*/ +function characters_character_skillqueue(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* List all trained skills for the given character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character skills. +* @customfunction +*/ +function characters_character_skills(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Return attributes of a character +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character attributes. +* @customfunction +*/ +function characters_character_attributes(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Shows sovereignty data for structures. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List sovereignty structures. +* @customfunction +*/ +function sovereignty_structures(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Shows sovereignty data for campaigns. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List sovereignty campaigns. +* @customfunction +*/ +function sovereignty_campaigns(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Shows sovereignty information for solar systems +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List sovereignty of systems. +* @customfunction +*/ +function sovereignty_map(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* EVE Server status +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Retrieve the uptime and player counts. +* @customfunction +*/ +function status(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a planet +* @param {integer} planet_id (Required) planet_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get planet information. +* @customfunction +*/ +function universe_planets_planet(planet_id, opt_headers) { + if(!planet_id) throw 'planet_id is required'; + return parseData_(arguments.callee.name,{planet_id:planet_id,opt_headers:opt_headers}); +} + +/** +* Get information on a station +* @param {integer} station_id (Required) station_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get station information. +* @customfunction +*/ +function universe_stations_station(station_id, opt_headers) { + if(!station_id) throw 'station_id is required'; + return parseData_(arguments.callee.name,{station_id:station_id,opt_headers:opt_headers}); +} + +/** +* Returns information on requested structure, if you are on the ACL. Otherwise, returns "Forbidden" for all inputs. +* @param {integer} structure_id (Required) An Eve structure ID. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get structure information. +* @customfunction +*/ +function universe_structures_structure(structure_id, name, opt_headers) { + if(!structure_id) throw 'structure_id is required'; + return parseData_(arguments.callee.name,{structure_id:structure_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get information on a solar system +* @param {string} language Language to use in the response. +* @param {integer} system_id (Required) system_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get solar system information. +* @customfunction +*/ +function universe_systems_system(language, system_id, opt_headers) { + if(!system_id) throw 'system_id is required'; + return parseData_(arguments.callee.name,{language:language,system_id:system_id,opt_headers:opt_headers}); +} + +/** +* Get a list of solar systems +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get solar systems. +* @customfunction +*/ +function universe_systems(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a type +* @param {string} language Language to use in the response. +* @param {integer} type_id (Required) An Eve item type ID. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get type information. +* @customfunction +*/ +function universe_types_type(language, type_id, opt_headers) { + if(!type_id) throw 'type_id is required'; + return parseData_(arguments.callee.name,{language:language,type_id:type_id,opt_headers:opt_headers}); +} + +/** +* Get a list of type ids +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get types. +* @customfunction +*/ +function universe_types(page, opt_headers) { + return parseData_(arguments.callee.name,{page:page,opt_headers:opt_headers}); +} + +/** +* Get a list of item groups +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item groups. +* @customfunction +*/ +function universe_groups(page, opt_headers) { + return parseData_(arguments.callee.name,{page:page,opt_headers:opt_headers}); +} + +/** +* Get information on an item group +* @param {integer} group_id (Required) An Eve item group ID. +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item group information. +* @customfunction +*/ +function universe_groups_group(group_id, language, opt_headers) { + if(!group_id) throw 'group_id is required'; + return parseData_(arguments.callee.name,{group_id:group_id,language:language,opt_headers:opt_headers}); +} + +/** +* Get a list of item categories +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item categories. +* @customfunction +*/ +function universe_categories(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information of an item category +* @param {integer} category_id (Required) An Eve item category ID. +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get item category information. +* @customfunction +*/ +function universe_categories_category(category_id, language, opt_headers) { + if(!category_id) throw 'category_id is required'; + return parseData_(arguments.callee.name,{category_id:category_id,language:language,opt_headers:opt_headers}); +} + +/** +* List all public structures +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List all public structures. +* @customfunction +*/ +function universe_structures(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get a list of character races +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character races. +* @customfunction +*/ +function universe_races(language, opt_headers) { + return parseData_(arguments.callee.name,{language:language,opt_headers:opt_headers}); +} + +/** +* Get a list of factions +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get factions. +* @customfunction +*/ +function universe_factions(language, opt_headers) { + return parseData_(arguments.callee.name,{language:language,opt_headers:opt_headers}); +} + +/** +* Get a list of bloodlines +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get bloodlines. +* @customfunction +*/ +function universe_bloodlines(language, opt_headers) { + return parseData_(arguments.callee.name,{language:language,opt_headers:opt_headers}); +} + +/** +* Get a list of regions +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get regions. +* @customfunction +*/ +function universe_regions(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a region +* @param {string} language Language to use in the response. +* @param {integer} region_id (Required) region_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get region information. +* @customfunction +*/ +function universe_regions_region(language, region_id, opt_headers) { + if(!region_id) throw 'region_id is required'; + return parseData_(arguments.callee.name,{language:language,region_id:region_id,opt_headers:opt_headers}); +} + +/** +* Get a list of constellations +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get constellations. +* @customfunction +*/ +function universe_constellations(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a constellation +* @param {integer} constellation_id (Required) constellation_id integer. +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get constellation information. +* @customfunction +*/ +function universe_constellations_constellation(constellation_id, language, opt_headers) { + if(!constellation_id) throw 'constellation_id is required'; + return parseData_(arguments.callee.name,{constellation_id:constellation_id,language:language,opt_headers:opt_headers}); +} + +/** +* Get information on a moon +* @param {integer} moon_id (Required) moon_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get moon information. +* @customfunction +*/ +function universe_moons_moon(moon_id, opt_headers) { + if(!moon_id) throw 'moon_id is required'; + return parseData_(arguments.callee.name,{moon_id:moon_id,opt_headers:opt_headers}); +} + +/** +* Get information on a stargate +* @param {integer} stargate_id (Required) stargate_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get stargate information. +* @customfunction +*/ +function universe_stargates_stargate(stargate_id, opt_headers) { + if(!stargate_id) throw 'stargate_id is required'; + return parseData_(arguments.callee.name,{stargate_id:stargate_id,opt_headers:opt_headers}); +} + +/** +* Get a list of graphics +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get graphics. +* @customfunction +*/ +function universe_graphics(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a graphic +* @param {integer} graphic_id (Required) graphic_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get graphic information. +* @customfunction +*/ +function universe_graphics_graphic(graphic_id, opt_headers) { + if(!graphic_id) throw 'graphic_id is required'; + return parseData_(arguments.callee.name,{graphic_id:graphic_id,opt_headers:opt_headers}); +} + +/** +* Get the number of jumps in solar systems within the last hour ending at the timestamp of the Last +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get system jumps. +* @customfunction +*/ +function universe_system_jumps(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get the number of ship, pod and NPC kills per solar system within the last hour ending at the timestamp of the Last +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get system kills. +* @customfunction +*/ +function universe_system_kills(opt_headers) { + return parseData_(arguments.callee.name,{opt_headers:opt_headers}); +} + +/** +* Get information on a star +* @param {integer} star_id (Required) star_id integer. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get star information. +* @customfunction +*/ +function universe_stars_star(star_id, opt_headers) { + if(!star_id) throw 'star_id is required'; + return parseData_(arguments.callee.name,{star_id:star_id,opt_headers:opt_headers}); +} + +/** +* Get all character ancestries +* @param {string} language Language to use in the response. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get ancestries. +* @customfunction +*/ +function universe_ancestries(language, opt_headers) { + return parseData_(arguments.callee.name,{language:language,opt_headers:opt_headers}); +} + +/** +* Returns a character's wallet balance +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get a character's wallet balance. +* @customfunction +*/ +function characters_character_wallet(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Retrieve character wallet journal +* @param {integer} from_id Only show journal entries happened before the transaction referenced by this id. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get character wallet journal. +* @customfunction +*/ +function characters_character_wallet_journal(from_id, name, opt_headers) { + return parseData_(arguments.callee.name,{from_id:from_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get wallet transactions of a character +* @param {integer} from_id Only show transactions happened before the one referenced by this id. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get wallet transactions. +* @customfunction +*/ +function characters_character_wallet_transactions(from_id, name, opt_headers) { + return parseData_(arguments.callee.name,{from_id:from_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get a corporation's wallets +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Returns a corporation's wallet balance. +* @customfunction +*/ +function corporations_corporation_wallets(name, opt_headers) { + return parseData_(arguments.callee.name,{name:name,opt_headers:opt_headers}); +} + +/** +* Retrieve corporation wallet journal +* @param {integer} division (Required) Wallet key of the division to fetch journals from. +* @param {integer} from_id Only show journal entries happened before the transaction referenced by this id. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation wallet journal. +* @customfunction +*/ +function corporations_corporation_wallets_division_journal(division, from_id, name, opt_headers) { + if(!division) throw 'division is required'; + return parseData_(arguments.callee.name,{division:division,from_id:from_id,name:name,opt_headers:opt_headers}); +} + +/** +* Get wallet transactions of a corporation +* @param {integer} division (Required) Wallet key of the division to fetch journals from. +* @param {integer} from_id Only show journal entries happened before the transaction referenced by this id. +* @param {string} name Name of the character used for auth. If none is given, defaults to AUTHING_CHARACTER. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get corporation wallet transactions. +* @customfunction +*/ +function corporations_corporation_wallets_division_transactions(division, from_id, name, opt_headers) { + if(!division) throw 'division is required'; + return parseData_(arguments.callee.name,{division:division,from_id:from_id,name:name,opt_headers:opt_headers}); +} + +/** +* Return a list of wars +* @param {integer} max_war_id Only return wars with ID smaller than this.. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List wars. +* @customfunction +*/ +function wars(max_war_id, opt_headers) { + return parseData_(arguments.callee.name,{max_war_id:max_war_id,opt_headers:opt_headers}); +} + +/** +* Return details about a war +* @param {integer} war_id (Required) ID for a war. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return Get war information. +* @customfunction +*/ +function wars_war(war_id, opt_headers) { + if(!war_id) throw 'war_id is required'; + return parseData_(arguments.callee.name,{war_id:war_id,opt_headers:opt_headers}); +} + +/** +* Return a list of kills related to a war +* @param {integer} war_id (Required) A valid war ID. +* @param {integer} page Which page of results to return. +* @param {boolean} opt_headers Default: True, Boolean if column headings should be listed or not. +* @return List kills for a war. +* @customfunction +*/ +function wars_war_killmails(war_id, page, opt_headers) { + if(!war_id) throw 'war_id is required'; + return parseData_(arguments.callee.name,{war_id:war_id,page:page,opt_headers:opt_headers}); +}