- For the data previously at "ItemLink", see ItemLink/Archive.
Item hyperlinks are used to encode information for item tooltips and to pass item information between clients.
Format[]
Hyperlink
|cffxxxxxx|Hitem:payload|h[text]|h|r
Payload
itemID : enchantID : gemID1 : gemID2 : gemID3 : gemID4 : suffixID : uniqueID : linkLevel : specializationID : modifiersMask : itemContext : numBonusIDs[:bonusID1:...] : numModifiers[:modifierType1:modifierValue1:...] : relic1NumBonusIDs[:relicBonusID1:...] : relic2NumBonusIDs[...] : relic3NumBonusIDs[...] : crafterGUID : extraEnchantID
- itemID
- Item ID used for e.g. GetItemInfo()
- # enchantID
- Permanent Enchants.
- # gemID1, gemID2, gemID3, gemID4
- Item IDs of socketed Gems.
gemID4
is unused. - # suffixID
- Random Item suffix e.g. "of the Owl".
- uniqueID
- Data pertaining to a specific instance of the item. No longer used.
- linkLevel
- Level of the character supplying the link. This is used to render scaling heirloom item tooltips at the proper level.
- specializationID
- Class SpecializationID of the character supplying the link. This is used to display the appropriate primary stat and set bonuses on gear.
- modifiersMask
- No longer used.
- # itemContext
- Context for the item source (EnumeratedString).
- # numModifiers
- The number of item modifiers.
- modifierType1, modifierValue1, ...
- Key/Value pairs for item modifiers.
- # numBonusIDs
- The number of bonusIDs.
- bonusID1, bonusID2, ...
- Data describing how the item differs from a generic instance of its base Item ID.
- # relic1NumBonusIDs, ...
- The number of bonusIDs for the socketed artifact relic.
- relic1BonusID1, relic1BonusID2, ...
- Data describing how the socketed artifact relic differs from a generic instance of its base Item ID.
- # crafterGUID
- Unit GUID of the player who crafted the equipment item.
- # extraEnchantID
- For example engineering tinkers.
Details[]
Enchant IDs[]
See list of EnchantIds and SpellItemEnchantment.db2
- ItemLinks can be altered to have any enchantID and still be valid for use in SendChatMessage() and tooltips.
- Temporary enchants like [Windfury Weapon] and [Rough Sharpening Stone] do not appear in the ItemLink, even though they are listed in
SpellItemEnchantment.db2
Example: Item enchanted with [Minor Stamina].
"|cff0070dd|Hitem:80921:4721:::::::36:103::1:::::::|h[Saboteur's Stabilizing Bracers]|h|r"
Gem IDs[]
Gems are listed by itemID for each socket.
Example: [Helm of Elemental Binding] socketed with [Perfect Brilliant Bloodstone] for only the 2nd gem slot.
"|cff0070dd|Hitem:87451:::41438:::::53:257:::1:6658:2:9:35:28:1035:::::|h[Helm of Elemental Binding]|h|r" 4: 41438 -- gemID2
Suffix IDs[]
Item suffixes in Classic are given to items that get randomized stat ratings e.g. "of the Bear" and refer to (multiple) enchantIDs.
- Positive IDs (obtained pre-2.0) are listed in SuffixId and ItemRandomProperties.db2
- Negative IDs (obtained post-2.0) are listed in ItemRandomSuffix and ItemRandomSuffix.db2.
Example: Suffix with a positive ID from Classic Era.
"|cff1eff00|Hitem:9849::::::776:661453184:33:::::::::|h[Conjurer's Hood of the Owl]|h|r"
Example: Suffix with a negative ID from Burning Crusade Classic.
"|cff1eff00|Hitem:6267::::::-9:1379794946:33:::::::::|h[Disciple's Pants of the Owl]|h|r"
Bonus IDs[]
- See also: Raidbots bonus IDs data
BonusIDs can adjust item levels, modify stats, change item quality, add item titles, append words to item names, add sockets, adjust appearance, adjust required equip level, and possibly many more. They can be looked up in ItemBonus.db2.ParentItemBonusListID
Example: Timewarped Warforged [Gauntlets of Vindication]. If say you want to find all possible Warforged Bonus IDs, look up the ItemNameDescription IDs for "warforged" and filter for IDs 11428|13220.
"|cff0070dd|Hitem:127232::::::::50:72::22:2:615:656:1:9:40:::::|h[Gauntlets of Vindication]|h|r" 13: 2 -- numBonusIDs 14: 615 -- bonusID1: Timewarped 15: 656 -- bonusID2: Warforged
Example: Level 86 / Item level 140 [Heart of Azeroth].
"|cffe6cc80|Hitem:158075::::::::53:257::11:4:4932:4933:6316:1554::::::|h[Heart of Azeroth]|h|r" 13: 4 -- numBonusIDs 14: 4932 -- bonusID1: No Bonus 15: 4933 -- bonusID2: No Bonus 16: 6316 -- bonusID3: Increase iLevel 17: 1554 -- bonusID4: Increase iLevel
Item Context[]
Contains information about the Item Source. For example the starter gear:
"|cffffffff|Hitem:51::::::::1:1452::75:::::::|h[Neophyte's Boots]|h|r" 12: 75 -- New Character
|
|
Modifier Types[]
Item modifiers contain extra item information in key-value pairs.
Value | Key | Info | Description |
---|---|---|---|
0 | TransmogrifyItemModifiedAppearanceIDSpecAll | TRANSMOG_APPEARANCE_ALL_SPECS | |
1 | TransmogrifyItemModifiedAppearanceIDSpec_0 | TRANSMOG_APPEARANCE_SPEC_1 | |
2 | IncrementLevelObsolete | UPGRADE_ID | |
3 | BattlePetSpecies | BATTLE_PET_SPECIES_ID | BattlePetSpeciesID |
4 | BattlePetBreed | BATTLE_PET_BREED_DATA | |
5 | BattlePetLevel | BATTLE_PET_LEVEL | |
6 | BattlePetCreaturedisplayid | BATTLE_PET_DISPLAY_ID | |
7 | TransmogrifyOverrideEnchantVisualIDSpecAll | ENCHANT_ILLUSION_ALL_SPECS | |
8 | ArtifactAppearanceID | ARTIFACT_APPEARANCE_ID | ArtifactAppearanceID |
9 | TimewalkerLevel | TIMEWALKER_LEVEL | |
10 | TransmogrifyOverrideEnchantVisualIDSpec_0 | ENCHANT_ILLUSION_SPEC_1 | |
11 | TransmogrifyItemModifiedAppearanceIDSpec_1 | TRANSMOG_APPEARANCE_SPEC_2 | |
12 | TransmogrifyOverrideEnchantVisualIDSpec_1 | ENCHANT_ILLUSION_SPEC_2 | |
13 | TransmogrifyItemModifiedAppearanceIDSpec_2 | TRANSMOG_APPEARANCE_SPEC_3 | |
14 | TransmogrifyOverrideEnchantVisualIDSpec_2 | ENCHANT_ILLUSION_SPEC_3 | |
15 | TransmogrifyItemModifiedAppearanceIDSpec_3 | TRANSMOG_APPEARANCE_SPEC_4 | |
16 | TransmogrifyOverrideEnchantVisualIDSpec_3 | ENCHANT_ILLUSION_SPEC_4 | |
17 | KeystoneMapChallengeModeID | CHALLENGE_MAP_CHALLENGE_MODE_ID | MapChallengeMode.db2 |
18 | KeystonePowerLevel | CHALLENGE_KEYSTONE_LEVEL | |
19 | KeystoneAffix0 | CHALLENGE_KEYSTONE_AFFIX_ID_1 | KeystoneAffix.db2 |
20 | KeystoneAffix01 | CHALLENGE_KEYSTONE_AFFIX_ID_2 | |
21 | KeystoneAffix02 | CHALLENGE_KEYSTONE_AFFIX_ID_3 | |
22 | KeystoneAffix03 | CHALLENGE_KEYSTONE_AFFIX_ID_4 | |
23 | LegionArtifactKnowledgeObsolete | ARTIFACT_KNOWLEDGE_LEVEL | |
24 | ArtifactTier | ARTIFACT_TIER | |
25 | TransmogrifyItemModifiedAppearanceIDSpec_4 | TRANSMOG_APPEARANCE_SPEC_5 | |
26 | PvPRating | PVP_RATING | |
27 | TransmogrifyOverrideEnchantVisualIDSpec_4 | ENCHANT_ILLUSION_SPEC_5 | |
28 | ContentTuningID | CONTENT_TUNING_ID | ContentTuning.db2 |
29 | ChangeModifiedCraftingStat_1 | CHANGE_MODIFIED_CRAFTING_STAT_1 | |
30 | ChangeModifiedCraftingStat_2 | CHANGE_MODIFIED_CRAFTING_STAT_2 | |
31 | TransmogrifySecondaryItemModifiedAppearanceIDSpecAll | TRANSMOG_SECONDARY_APPEARANCE_ALL_SPECS | |
32 | TransmogrifySecondaryItemModifiedAppearanceIDSpec_0 | TRANSMOG_SECONDARY_APPEARANCE_SPEC_1 | |
33 | TransmogrifySecondaryItemModifiedAppearanceIDSpec_1 | TRANSMOG_SECONDARY_APPEARANCE_SPEC_2 | |
34 | TransmogrifySecondaryItemModifiedAppearanceIDSpec_2 | TRANSMOG_SECONDARY_APPEARANCE_SPEC_3 | |
35 | TransmogrifySecondaryItemModifiedAppearanceIDSpec_3 | TRANSMOG_SECONDARY_APPEARANCE_SPEC_4 | |
36 | TransmogrifySecondaryItemModifiedAppearanceIDSpec_4 | TRANSMOG_SECONDARY_APPEARANCE_SPEC_5 | |
37 | SoulbindConduitRank | SOULBIND_CONDUIT_RANK | |
38 | CraftingQualityID | ITEM_MODIFIER_CRAFTING_QUALITY_ID | |
39 | CraftingSkillLineAbilityID | ITEM_MODIFIER_CRAFTING_SKILL_LINE_ABILITY_ID | |
40 | CraftingDataID | ITEM_MODIFIER_CRAFTING_DATA_ID | |
41 | CraftingSkillReagents | ITEM_MODIFIER_CRAFTING_SKILL_REAGENTS | |
42 | CraftingSkillWatermark | ITEM_MODIFIER_CRAFTING_SKILL_WATERMARK | |
43 | CraftingReagentSlot_0 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_0 | |
44 | CraftingReagentSlot_1 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_1 | |
45 | CraftingReagentSlot_2 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_2 | |
46 | CraftingReagentSlot_3 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_3 | |
47 | CraftingReagentSlot_4 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_4 | |
48 | CraftingReagentSlot_5 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_5 | |
49 | CraftingReagentSlot_6 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_6 | |
50 | CraftingReagentSlot_7 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_7 | |
51 | CraftingReagentSlot_8 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_8 | |
52 | CraftingReagentSlot_9 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_9 | |
53 | CraftingReagentSlot_10 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_10 | |
54 | CraftingReagentSlot_11 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_11 | |
55 | CraftingReagentSlot_12 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_12 | |
56 | CraftingReagentSlot_13 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_13 | |
57 | CraftingReagentSlot_14 | ITEM_MODIFIER_CRAFTING_REAGENT_SLOT_14 |
Example: [Missing Diplomat's Pauldrons] from Heroic Deadmines.
"|cff0070dd|Hitem:63470::::::::53:257::2:1:4198:2:28:1199:9:35:::::|h[Missing Diplomat's Pauldrons]|h|r" 15: 2 -- numModifiers 16: 28 -- modifierType1: CONTENT_TUNING_ID 17: 1199 -- modifierValue1 18: 9 -- modifierType2: TIMEWALKER_LEVEL 19: 35 -- modifierValue2
Example: [Mythic Keystone] when seen in CHAT_MSG_LOOT. See also keystoneLink.
"|cffa335ee|Hitem:180653::::::::60:250::::6:17:381:18:13:19:9:20:7:21:124:22:121:::::|h[Mythic Keystone]|h|r" 14: 6 -- numModifiers 15: 17 -- modifierType1: CHALLENGE_MAP_CHALLENGE_MODE_ID 16: 381 -- modifierValue1: Spires of Ascension 17: 18 -- modifierType2: CHALLENGE_KEYSTONE_LEVEL 18: 13 -- modifierValue2 19: 19 -- modifierType3: CHALLENGE_KEYSTONE_AFFIX_ID_1 20: 9 -- modifierValue3: Tyrannical 21: 20 -- modifierType4: CHALLENGE_KEYSTONE_AFFIX_ID_2 22: 7 -- modifierValue4: Bolstering 23: 21 -- modifierType5: CHALLENGE_KEYSTONE_AFFIX_ID_3 24: 124 -- modifierValue5: Storming 25: 22 -- modifierType6: CHALLENGE_KEYSTONE_AFFIX_ID_4 26: 121 -- modifierValue6: Prideful
Relic Bonus IDs[]
Example: [T'uure, Beacon of the Naaru] with Artifact Relics as Gems.
"|cffe6cc80|Hitem:128825::140844:140839:152044::::53:257::9:2:739:1522:2:8:749:24:1:3:3520:1472:3337:3:3520:1472:3337:3:3610:1472:3528::|h[T'uure, Beacon of the Naaru]|h|r"
0: item
1: 128825 -- itemID
2: -- enchantID
3: 140844 -- gemID1: Archaic Nathrezim Keepsake
4: 140839 -- gemID2: Parasitic Spore
5: 152044 -- gemID3: Spark of Everburning Light
6: -- gemID4
7: -- suffixID
8: -- uniqueID
9: 53 -- linkLevel
10: 257 -- specializationID: Holy
11: -- modifiersMask
12: 9 -- itemContext: Scenario: Normal
13: 2 -- numBonusIDs
14: 739 -- bonusID1
15: 1522 -- bonusID2
16: 2 -- numModifiers
17: 8 -- modifierType1: ITEM_MODIFIER_ARTIFACT_APPEARANCE_ID
18: 749 -- modifierValue1: ArtifactAppearanceID
19: 24 -- modifierType2: ITEM_MODIFIER_ARTIFACT_TIER
20: 1 -- modifierValue2
21: 3 -- relic1NumBonusIDs
22: 3520 -- relic1BonusID1: Raid Finder
23: 1472 -- relic1BonusID2: Increase iLevel
24: 3337 -- relic1BonusID3: Titanforged
25: 3 -- relic2NumBonusIDs
26: 3520 -- relic2BonusID1
27: 1472 -- relic2BonusID2
28: 3337 -- relic2BonusID3
29: 3 -- relic3NumBonusIDs
30: 3610 -- relic3BonusID1
31: 1472 -- relic3BonusID2
32: 3528 -- relic3BonusID3
33: -- crafterGUID
34: -- extraEnchantID
Crafter GUID[]
Unit GUID of the player who crafted the item. For example a [Lesser Magic Wand].
"|cff1eff00|Hitem:11287::::::::36:103::::1:28:1418::::Player-3299-0050F7FB:|h[Lesser Magic Wand]|h|r"
Extra Enchant IDs[]
For example an item with the Nitro Boosts engineering tinker.
"|cff1eff00|Hitem:173341::::::::53:257::11:1:6707:2:9:51:28:1318:::::4223|h[Cord of Uncertain Devotion]|h|r"
Other details[]
- Any Transmogrification info is not supplied to item links.
- Item links obtained from the Void Storage will give a generic GetItemInfo() link which only contain the
itemID
,linkLevel
andspecializationID
since all modifications will have been removed.
Examples[]
/run SendChatMessage("\124cffffffff\124Hitem:6948::::::::54:257:::::::::\124h[Hearthstone]\124h\124r")
- The first number is the ItemID for a [Hearthstone]. The next 7 values are empty, which tells the client it has no enchants, gems and extra stats. The 9th number means that the link originated from a level 54 character. The 10th number 257 (SpecializationID) specifies the character to be a Holy Priest.
/run SendChatMessage("\124cffa335ee\124Hitem:18832:2564:::::::::::::::::\124h[Brutality Blade]\124h\124r")
- The first number is the ItemID for a [Brutality Blade]. The second number (EnchantId) denotes that it is enchanted with +3 agility.
Inspecting links[]
You can inspect a hyperlink from the in-game chat window.
/dump "[Red Winter Hat]" > "|cff1eff00|Hitem:21524::::::::53:257::::::::|h[Red Winter Hat]|h|r"
From an addon, when clicking a hyperlink in-game.
hooksecurefunc("SetItemRef", function(link, text)
print(text:gsub("|", "||"))
for k, v in pairs({strsplit(":", link)}) do
if #v > 0 then
print(k-1, v)
end
end
end)
"|cff1eff00|Hitem:21524::::::::53:257::::::::|h[Red Winter Hat]|h|r"
0, "item"
1, "21524"
9, "53"
10, "257
Patch changes[]
Patch 9.2.5 (2022-05-31): Added Enum.ItemCreationContext
, Enum.ItemModification
Patch 9.1.0 (2021-06-29): Added crafterGUID
, extraEnchantID
Patch 7.0.3 (2016-07-19): Added relicBonusIDs
. Lone 0's in item strings have been removed so something like ":0:0:0"
has become ":::"
Patch 6.2.0 (2015-06-23): Added specializationID
, upgradeTypeID
and modifiersMask
Patch 6.0.2 (2014-10-14): Added itemContext
and bonusIDs
Patch 5.1.0 (2012-11-27): Added upgradeValues
Patch 3.0.2 (2008-10-14): Added linkLevel
Patch 2.0.1 (2006-12-05): Added gemID