Game Data - swgoh-utils/swgoh-comlink GitHub Wiki

Table of Contents

  1. Getting the game data
  2. Main data objects

Getting the game data

To retrieve game data from the api you will need to use the /data endpoint. If you do not have the latest game data version id you will need to first send a request to /metadata and grab the value from "latestGamedataVersion" and use it for the "version" parameter. The request body will look like this:

{
 "payload": {
    "version": "0.28.6:benKkOetTsaMZVWKY4E-LA",
    "includePveUnits": true,
    "requestSegment": 0
 },
 "enums": false
}

includePveUnits
Specifies whether you want the game data to include NPC unit information. Currently this option only affects the NPC information found within the units object and will reduce the file size of it by 30+ MB.

requestSegment
Used to indicate if you want all of the data at once or to request it in pieces. When requesting it in pieces each segment will still return all available objects, but only specific ones will have the data in them. You can find a list of the specific objects that get returned with data in them below for each value.

0 = All data, 200+ MB
1 = Partial data, about 50 MB
2 = Partial data, about 50 MB
3 = Partial data, 80+ MB, 50+ MB with includePveUnits: false
4 = Partial data, 25+ MB

requestSegment: 1
This request will return data for the following objects:
requestSegment: 2
This request will return data for the following objects:
requestSegment: 3
This request will return data for the following objects:
requestSegment: 4
This request will return data for the following objects:

Main data objects

The game's data is separated into several main collections. Most of the collections point to the other main collections to get additional information. This section will go over a brief description of what each collection contains and what it is used for. It will also include the main key used to identify the objects within that specific collection and the id used by the other main collections to reference them.

IMPORTANT: All values in the nameKey and descKey keys require using the data from the /localization endpoint to convert the value to the in-game displayed value.

LEGEND:

Identifier: is the key that contains the value used to point at that specific element/object within the main collection.
Reference ID: the key in another collection that points to the Identifier in the collection being talked about.
Referenced in: the name of the main collection the reference ID can be found in along with the key that holds the location of the reference id. The symbol => is used to indicate within.

Example:
//Main Object
units: [
   0: {
      "id": "BB8:SEVEN_STAR",    //Identifier A
      "baseId": "BB8",           //Identifier B
      ...
   },...
]
//Referenced in object for ID A
//Reference ID = id
//Referenced in = requirement => requirementItem
requirement: [
   0: {
      "requirementItem": [
         0: {
            "id": "BB8:SEVEN_STAR",
            ...
         },...
      ],...
   },...
]
//Referenced in object for ID B
//Reference ID = unitBaseId
//Reference in = unitGuideDefinition
unitGuideDefinition: [
   0: {
      unitBaseId: "BB8",
      ...
   },...
]

ability

Contains mechanics and descriptions for each ability in the game.
Used for displaying in-game descriptions and ability mechanics.

Identifier: id
Reference ID: abilityId
Referenced in:
  units => basicAttackRef
  units => limitBreakRef
  units => uniqueAbilityRef
  units => leaderAbilityRef
  artifactDefinition => grantedAbility
  consumeableDefinition => grantedAbility
  conquestMission => grantedAbility
  territoryBattleDefinition => strategicAbilities
  territoryBattleDefinition => grantedAbilities
  datacronAffixTemplateSet => affix
Reference ID: abilityReference
Referenced in: skill

artifactDefinition

Contains the information and mechanics for all Data Disks.
Used for showing Data Disk information and granted mechanics.

Identifier: id
Reference ID: none
Referenced in: none

artifactTierDefinition

Contains the rarity information for Data Disks.
Used for getting rarity level and icon asset for Data Disks.

Identifier: id
Reference ID: tierId
Referenced in: artificatDefinition

battleEnvironments

Contains lists of environment prefabs and the sound file names that goes with them.
Used for finding assets for campaign.

Identifier: prefab
Reference ID: prefab
Referenced in: campaign => environment

battleTargetingRule

Contains targeting rules and definitions for abilities.
Used for ability mechanics.

Identifier: id
Reference ID: targetRuleId
Referenced in:
  campaign => grantedAbilities
  territoryBattleDefinition => grantedAbilities
  artifactDefinition => grantedAbility
  consumeableDefinition => grantedAbility
Reference ID: targetRule
Referenced in: datacronAffixTemplateSet => affix
Reference ID: allyTargetingRule
Referenced in: ability
Reference ID: preferredEnemyTargetingRuleIdList, preferredAllyTargetingRuleIdList
Referenced in: ability => aiParams

calendarCategoryDefinition

Contains details for Calendar categories.
Used for calendar functionality and sort order.

Identifier: id
Reference ID: category
Referenced in: dailyLoginRewardDefinition

campaign

Contains the information for all the playable content in the game that involves battles, such as Territory Battles, Cantina Battles, Marquees, and events. This object uses many identifiers including ones for mission nodes, events, territory zones, etc.. The identifier listed below is only referencing the main campaign object that holds each type of content, Cantina Battles, Light Side Battles, Territory Battles, etc.
Used for defining many aspects about the content in the game including enemies, rewards, and battle modifiers.

Identifier: id
Reference ID: campaignId
Referenced in:
  equipment => missionIdentifier
  material => missionIdentifier
  statMod => missionIdentifier
  unitGuideDefinition => campaignElementIdentifier
Reference ID: feature
Referenced in: unlockAnnouncementDefinition
Reference ID: id
Referenced in: territoryBattleDefinition
Other references:
  Also included in string for "actionLinkDef.link" within challenege
  Also included in "id" for "requirementItem" within requirement

category

Contains lists of categories including alignment, professions, and factions.
Used for converting the category id to the actual names used in-game and to show if the category is visible in-game.

Identifier: id
Reference ID: categoryId
Referenced in:
  units
  effect => category
  ability => category
  battleTargetingRule => category
  campaign => entryCategoryAllowed
  conquestMission => entryCategoryAllowed

challenge

Contains the information related to all quests, achievements, feats, and dailies.
Used for defining rewards, completion requirements, and in-game details for the above.

Identifier: id
Reference ID: none
Referenced in: none
Notes: Even though every game mode that has a feat is defined in the game data, none of them include references to those feats in challenges. Feats use their id to point to what game mode and run of it they are used for.

challengeStyle

Contains further details on challenges.
Used to get assets, quest giver name (if any), and quest titles

Identifier: id
Reference ID: styleId
Referenced in: challenge

conquestDefinition

Contains the details for every run of Conquest.
Used for getting conquest rewards, requirements, and sector information.

Identifier: id
Reference ID: none
Referenced in: none

conquestMission

Contains additional details for each node in Conquest.
Used for getting assets, entry requirements, node energy cost, and node specific rewards.

Identifier: id
Reference ID: conquestArcadeMissionId
Referenced in: conquestDefinition => node

consumableDefinition

Contains details for each consumable used in Conquest such as stims and boosters.
Used for defining granted mechanics, functionality and information for consumables.

Identifier: id
Reference ID: id
Referenced in: mysteryBox => previewItem

consumableTierDefinition

Contains additional details for Conquest consumables.
Used for getting rarity and assets for consumables.

Identifier: id
Reference ID: tierId
Referenced in: consumableDefinition

consumableType

Contains additional details for Conquest consumables.
Used for getting type and assets for consumables.

Identifier: typeId
Reference ID: consumableTypeId
Referenced in: consumableDefinition

cooldown

Contains a list of objects related to refresh cooldown costs and details for different things in the game.
Used for getting cooldown refresh cost amounts.

Identifier: typeId
Reference ID: none
Referenced in: none

dailyActionCap

Contains a list of objects relating to refresh\purchase limits and amounts for missions, stores, data cards and various other things in the game.
Used for getting limits and amounts for refreshing above.

Identifier: id
Reference ID: dailyBattleCapKey
Referenced in: campaign => campaignNodeMission

dailyLoginRewardDefinition

Contains all of the login calendars.
Used for showing rewards and details for calendars.

Identifier: id
Reference ID: id
Referenced in: requirement

datacronSet

Contains a list of all datacron sets.
Used to define the expiration date for the datacron and holds ids for retrieving reroll amounts, upgrade costs, and dismantle details. Also includes assets.

Identifier: id
Reference ID: setId
Referenced in: datacronTemplate

datacronTemplate

Contains a list of templates for each datacron set along with variations that have set bonuses at datacron levels 3, 6, and/or 9.
Used to define the requirements to activate each bonus and holds the id for the bonus mechanic details.

Identifier: id
Reference ID: referenceTemplateId
Referenced in: datacronTemplate
Reference ID: id
Referenced in:
  territoryWarDefinition => detailedReward
  mysteryBox => previewItem
  conquestDefinition => primaryReward, _detailedReward
  dailyLoginRewardDefinition => reward

datacronAffixTemplateSet

Contains a list of bonus mechanic details.
Used to retrieve bonus details such as stat amounts and the ids for the details of any bonus ability mechanic.

Identifier: id
Reference ID: affixTemplateSetId
Referenced in: datacronTemplate => tier
Reference ID: initialAffixTemplateSetId
Referenced in: datacronTemplate => tier

datacronHelpEntry

Contains a list of the help entries found within the game for datacrons.
Used for giving help details.

Identifier: none
Reference ID: none
Referenced in: none

effect

Contains a detailed list of all effects for abilities.
Used for defining mechanics and functionality for abilities including status effects.

Identifier: id
Reference ID: id
Referenced in: ability => effectReference
Reference ID: abilityId
Referenced in: datacronAffixTemplateSet => affix

effectIconPriority

Contains an array of all effect icons.
Used for determining in-game order of icons.

Identifier: none
Reference ID: persistentIcon
Referenced in: effect

energyReward

Contains information about the free daily bonus energy.
Used for bonus energy definitions and functionality.

Identifier: none
Reference ID: none
Referenced in: none

environmentCollection

Contains a list of environment prefabs.
Used for getting environment assets.

Identifier: id
Reference ID: environmentCollectionId
Referenced in: campaign => campaignNodeEncounter

equipment

Contains all of the gear in the game.
Used for defining details, stats, and locations of gear.

Identifier: id
Reference ID: none
Referenced in: units => equipmentSet
Reference ID: id
Referenced in:
  campaign => rewardPreview
  challenge => reward
  galacticBundle => inventoryItem
  guildExchangeItem => item
  mysteryBox => previewItem
  recipe => ingredients
  scavengerConversionSet => consumable
Reference ID: equipmentId
Referenced in: /player endpoint

eventSampling

Contains a small list of data.
Is not used in relation to any of the other available data.

Identifier: eventId
Reference ID: none
Referenced in: none

galacticBundle

Contains the information for the Hyperdrive Bundle.
Used for showing in-game details and rewards for the bundle.

Identifier: id
Reference ID: none
Referenced in: none

guildBanner

Contains the details for the Guild Logo.
Used for defining the logo and color for Guild logos.

Identifier: within logoDefinition => id
Reference ID: guildBannerLogoID
Referenced in: socialStatus => guildLogo

guildExchangeItem

Contains a list of all the resources that can be requested in Guild Exchange.
Used for defining what resources, such as gear, that can be requested.

Identifier: none
Reference ID: none
Referenced in: none

guildRaid

Contains a list of guild raids.
Used for basic information and assets for in-game raids screen.

Identifier: id
Reference ID: campaignNodeId
Referenced in:
  campaign => campaignNode
  equipment => missionIdentifier
  material => missionIdentifier

helpEntry

Contains information for in-game Help menu.
Used for getting information found on help screen.

Identifier: none
Reference ID: none
Referenced in: none

linkedStoreItem

Contains a list of store items linked to journey guide events.
Used for displaying Data Cards and bundles related to acquiring units for Journey Guide events.

Identifier: linkId
Reference ID: activityId
Referenced in: unitGuideDefinition

material

Contains information on all materials and resources in the game except gear.
Used for getting details and locations for game resources including relics, shards, and slicing materials.

Identifier: id
Reference ID: id
Referenced in:
  campaign => rewardPreview
  dailyLoginRewardDefinition => reward
  recipe => ingredients
  scavengerConversionSet => item
  galacticBundle => inventoryItem

modRecommendation

Contains a list of mod recommendations for each character in the game.
Used for showing recommeded mods.

Identifier: id
Reference ID: recommendationSetId
Referenced in: units => modRecommendation

mysteryBox

Contains details on all prize boxes in the game.
Used for getting the information and contents of prize boxes rewarded in various game modes.

Identifier: id
Reference ID: id
Referenced in:
  campaign => primaryReward
  campaign => detailedReward
  conquestDefinition => primaryReward
  conquestDefinition => detailedReward
  territoryBattleDefinition => primaryReward
  territoryBattleDefinition => detailedReward
  territoryWarDefinition => primaryReward
  territoryWarDefinition => detailedReward
  challenge => reward

mysteryStatMod

Contains a list of mod reward definitions.
Used for getting the details of the mods such as tier, rarity and set.

Identifier: id
Reference ID: id
Referenced in:
  campaign => rewardPreview
  campaign => firstCompleteRewardPreview
  campaign => instanceFirstCompleteRewardPreview
  mysteryBox => previewItem

persistentVfx

Contains a list of visual effects.
Used for getting assets.

Identifier: id
Reference ID: id
Referenced in: effect => persistentVfxReference

playerPortrait

Contains a list of all player portraits.
Used for getting player portraits details.

Identifier: id
Reference ID: id
Referenced in:
  challenge => reward
  galacticBundle => inventoryItem
Reference ID: playerPortraitId
Referenced in: socialStatus => chatPortraits

playerTitle

Contains a list of all player titles.
Used for getting player title details.

Identifier: id
Reference ID: id
Referenced in: challenge => reward
Reference ID: playerTitleId
Referenced in: socialStatus => chatTitles

powerUpBundle

Contains a list of gear/power up bundles to offer at set player levels.
Used for advertising power up bundles.

Identifier: id
Reference ID: none
Referenced in: none

raidConfig

Contains a small list of raid settings.
Used for defining roster refreshes.

Identifier: id
Reference ID: _raidConfigId
Referenced in: campaign => compaignNodeMission

recipe

Contains a list of all recipes.
Used for defining the ingredients and result of gear, character unlocking/upgrading, skill upgrading, relics, and mod slicing.

Identifier: id
Reference ID: recipeId
Referenced in:
  skill => tier
  equipment
Reference ID: creationRecipeReference
Referenced in: units
Reference ID: upgradeCostRecipeId, dustGrantRecipeId, rerollCostRecipeId
Referenced in: datacronSet => tier
Reference ID: promotionRecipeReference
Referenced in: units
Reference ID: value
Referenced in: table => row

recommendedSquad

Contains a list of squads recommended for Journey Guide.
Used for defining recommended teams in Journey Guide.

Identifier: id
Reference ID: id
Referenced in: requirement
Note: requirement makes a reference to the id in elements hideRequirement and showRequirement. You can use them to find the top level id by removing the _Hide_Requirement and _Show_Requirement from the requirement id.

relicTierDefinition

Contains a list of relic archetypes at each relic tier.
Used for calculating stats at each relic level.

Identifier: id
Reference ID: relicDefinitionId (array)
Referenced in: units => relicDefinition

requirement

Contains a list of requirements for various things in the game.
Used for defining requirements for things in the game such as territory unlocks in Territory War, ship crew requirements, shipment unlocks, and content unlocks at player levels.

Identifier: id
Reference ID: id
Referenced in:
  dailyLoginRewardDefinition
  recipe => craftRequirement
  recommededSquad => hideRequirement
  recommededSquad => showRequirement
  territoryWarDefinition => unlockRequirement
Reference ID: requirementId
Referenced in:
  material => lookupMission
  campaign => conditionEntryCostOverride
  campaign => conditionalRewardsPreview
Reference ID: additionalActivationRequirementId
Referenced in: unitGuideDefinition

savedSquadConfig

Contains a small list of saved squad configs.
Used for getting saved squad config for Grand Arena preset defense.

Identifier: id
Reference ID: savedSquadConfigId
Referenced in: territoryTournamentDefinition

scavengerConversionSet

Contains a list of relic material that is craftable by the scavenger.
Used for getting details on gear used to create relic material along with point values.

Identifier: id
Reference ID: none
Referenced in: none

seasonDefinition

Contains a list of the Grand Arena season details. This also contains information on the older version of Grand Arena. The new version uses the string _ga2_ in the id.
Used for defining general information for Grand Arena including minimum banners needed for reward, reward table, and division skill boundaries for that season.

Identifier: id
Reference ID: id
Referenced in: territoryTournamentDefinition

seasonDivisionDefinition

OUTDATED: Contains the information for Divisions based on the old version of Grand Arena Championships that went by Galactic Power. Used for nothing, the game uses territoryTournamentDivisionDefinition.

seasonLeagueDefinition

OUTDATED: Contains the information for Leagues for the old version of Grand Arena Championships. Used for nothing, the game uses territoryTournamentLeagueDefinition.

seasonRewardTable

Contains rewards information for Grand Arena . This also contains information on the older version of Grand Arena. The new version uses the string _ga2_ in the id.
Used for defining general information for Grand Arena including minimum banners needed for reward, reward table, and division skill boundaries for that season.

Identifier: id
Reference ID: seasonRewardTableId
Referenced in: seasonDefinition
Reference ID: roundSeasonRewardTableId
Referenced in: territoryTournamentDefinition

skill

Contains information on abilities.
Used for leveling information for each tier information including recipe, required levels, is zeta, is omicron, and omicron area.

Identifier: id
Reference ID: skillId
Referenced in: units => skillReference
Reference ID: id
Referenced in:
  campaign => forcedPlayerSquad => skill
  /player endpoint => skill

socialStatus

Contains information for in-game chat.
Used for getting assets and information for portraits, titles, and guild logos to display in social areas such as in-game chat.

Identifier: none
Reference ID: none
Referenced in: none

starterGuild

Contains the information for the starter guilds.
Used for defining starter guild information.

Identifier: none
Reference ID: none
Referenced in: none

statMod

Contains information on mods.
Used for getting information on mods such as locations and tier up recipes. _Note: This object lists all mods by set, rarity, and slot. It does not have tier information like mods do in rewards which is why the id is 3 long instead of 5.

Identifier: id
Reference ID: definitionId
Referenced in: /player endpoint => rosterUnit => equippedStatMod

statModSet

Contains details on mod sets.
Used for getting stat calculations and requirements for mod sets.

Identifier: id
Reference ID: setId
Referenced in:
  statMod
  mysteryStatMod
Reference ID: modSetId
Referenced in: modRecommendation => setRecommendation

statProgression

Contains a list of all stat tables for units.
Used for calculating unit stats at different gear tiers and rarity.

Identifier: id
Reference ID: statProgressionId
Referenced in: units

table

Contains lists of various tables.
Used for a lot of things such as defining Territory Battle points per wave, stat calculations, mod slicing, league promotions (OUTDATED), crew rating calculations, and galactic power calculations.

Identifier: id
Reference ID: tierUpRecipeTableId
Referenced in: statMod
Reference ID: encounterRewardTableId
Referenced in: territoryBattleDefinition

targetingSet

Contains a list of targeting settings.
Used for determining ai attack functionality.

Identifier: id
Reference ID: none
Referenced in: none

territoryBattleDefinition

Contains detailed information on Territory Battles.
Used for defining structure and functionality and displaying information for Territory Battles including rewards, requirements, enemy information, points needed for stars, and all information that is used in the in-game Territory Battles screens. _Note: This does not contain any platoon information as those are set on the server side.

Identifier: id
Reference ID: id
Referenced in: campaign => id

territoryTournamentDailyRewardTable

Contains a list of daily crystals rewarded at each Grand Arena League and Division ranking.
Used for showing daily crystal rewards by League and Division.

Identifier: league & division within row
Reference ID: league & division
Referenced in: seasonRewardTable => key

territoryTournamentDefinition

Contains details for each Grand Arena. This also contains information on the older version of Grand Arena. The new version uses the string _ga2_ in the id.
Used to define functionality for each round including assets, durations, limits, zone definitions, and points.

Identifier: id
Reference ID: id
Referenced in: seasonDefinition
Reference ID: seasonId
Referenced in: /player endpoint => seasonStatus

territoryTournamentDivisionDefinition

Contains a list of divisions for Grand Arena.
Used for converting the division id into the in-game displayed division.

Identifier: id
Reference ID: divisionId
Referenced in: seasonDefinition => divisionSkillBoundary
Referenced in: /player endpoint => playerRankStatus
Reference ID: division
Referenced in:
  seasonRewardTable => key
  territoryTournamentDailyRewardTable => row

territoryTournamentLeagueDefinition

Contains a list of leagues for Grand Arena.
Used for getting assets and converting the league id into the rank or the rank into the id.

Identifier: id
Reference ID: leagueId
Referenced in:
  seasonDefinition => divisionSkillBoundary
  /player endpoint => playerRankStatus

Identifier: rank
Reference ID: league
Referenced in:
  seasonRewardTable => key
  territoryTournamentDailyRewardTable => row

territoryWarDefinition

Contains details about Territory War.
Used for defining structure and functionality of Territory Wars including rewards, points, zones, and granted abilities.

Identifier: id
Reference ID: none
Referenced in: none

timeZoneChangeConfig

Contains information about player's time zones.
Used for functionality and defintion of time zones and rules for adjusting them.

Identifier: none
Reference ID: none
Referenced in: none

unitGuideDefinition

Contains detailed information on all Journey Guide units.
Used for getting assets and information about the Journey Guide events.

Identifier: activityId
Reference ID: id
Referenced in: campaign => campaignNode
Reference ID: campaignId
Referenced in: material => missionIdentifier

unitGuideLayout

Contains information on the Journey Guide.
Used for defining the layout structure of the Journey Guide.

Identifier: id
Reference ID: none
Referenced in: none

units

Contains all playable units in the game including non-playable characters at each rarity and various difficulties.
Used for defining everything about units including stats, skills, crew, recommended mods, recommended teams, and categories.

Identifier: baseId
Reference ID: id
Referenced in:
  galacticBundle => unitUpgrade
  requirement => requirementItem
  campaign => baseEnemyItem
  campaign => mandatoryRosterUnit
Reference ID: unitBaseId
Referenced in: unitGuideDefinition
Reference ID: unitDefId
Referenced in: recommendedSquad
Reference ID: unitGuideId
Referenced in: unitGuideLayout

Identifier: id
Reference ID: id
Referenced in:
  recipe => result
  requirement => requirementItem
  recommendedSquad => requirementItem
Reference ID: unitDefReference
Referenced in: material
Reference ID: definitionId
Referenced in: /player endpoint

unlockAnnouncementDefinition

Contains a list of features in the game.
Used for announcing when a player unlocks certain features within the game such as allies, guilds, and mods.

Identifier: none
Reference ID: none
Referenced in: none

warDefinition

Contains information about Galactic War.
Used for functionality of Galacitc War.

Identifier: none
Reference ID: none
Referenced in: none

xpTable

Contains lists of information related to leveling up various things in the game.
Used for getting experience tables for leveling up mods and units. Also contains information used for calculating crew rating and galactic power.

Identifier: id
Reference ID: xpTableId
Referenced in: units
Reference ID: levelTableId
Referenced in: statMod

⚠️ **GitHub.com Fallback** ⚠️