|
|
|
@ -12,88 +12,291 @@ regions = [
@@ -12,88 +12,291 @@ regions = [
|
|
|
|
|
#{'code': 'cn', 'locales': ['zh_CN']} |
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
groups = [ |
|
|
|
|
'Achievement', |
|
|
|
|
'Auction House', |
|
|
|
|
'Azerite Essence', |
|
|
|
|
'Connected Realm', |
|
|
|
|
'Covenant', |
|
|
|
|
'Creature', |
|
|
|
|
'Guild Crest', |
|
|
|
|
'Item', |
|
|
|
|
'Journal', |
|
|
|
|
'Media Search', |
|
|
|
|
'Modified Crafting', |
|
|
|
|
'Mount', |
|
|
|
|
'Mythic Keystone Affix', |
|
|
|
|
'Mythic Keystone Dungeon', |
|
|
|
|
'Mythic Keystone Leaderboard', |
|
|
|
|
'Mythic Raid Leaderboard', |
|
|
|
|
'Pet', |
|
|
|
|
'Playable Class', |
|
|
|
|
'Playable Race', |
|
|
|
|
'Playable Specialization', |
|
|
|
|
'Power Type', |
|
|
|
|
'Profession', |
|
|
|
|
'PvP Season', |
|
|
|
|
'PvP Tier', |
|
|
|
|
'Quest', |
|
|
|
|
'Realm', |
|
|
|
|
'Region', |
|
|
|
|
'Reputations', |
|
|
|
|
'Spell', |
|
|
|
|
'Talent', |
|
|
|
|
'Tech Talent', |
|
|
|
|
'Title', |
|
|
|
|
'WoW Token', |
|
|
|
|
] |
|
|
|
|
|
|
|
|
|
""" |
|
|
|
|
https://develop.battle.net/documentation/world-of-warcraft/game-data-apis |
|
|
|
|
""" |
|
|
|
|
apis = [ |
|
|
|
|
{'group': 'Achievement', 'path': '/data/wow/achievement-category/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': 'Achievement', 'path': '/data/wow/achievement/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': 'Connected Realm', 'path': '/data/wow/connected-realm/index', 'namespaces': ['dynamic', 'dynamic-classic'], 'index': True}, |
|
|
|
|
{'group': 'Covenant', 'path': '/data/wow/covenant/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': 'Covenant', 'path': '/data/wow/covenant/soulbind/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': 'Covenant', 'path': '/data/wow/covenant/conduit/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': 'Creature', 'path': '/data/wow/creature-family/index', 'namespaces': ['static', 'static-classic'], 'index': True}, |
|
|
|
|
{'group': 'Creature', 'path': '/data/wow/creature-type/index', 'namespaces': ['static', 'static-classic'], 'index': True}, |
|
|
|
|
{'group': 'Guild Crest', 'path': '/data/wow/guild-crest/index', 'namespaces': ['static', 'static-classic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/item-class/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/item-set/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/journal-expansion/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/journal-encounter/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/journal-instance/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/modified-crafting/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/modified-crafting/category/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/modified-crafting/reagent-slot-type/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/mount/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/keystone-affix/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/mythic-keystone/dungeon/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/mythic-keystone/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/mythic-keystone/period/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/pet/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/pet-ability/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/playable-class/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/playable-race/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/playable-specialization/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/power-type/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/profession/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/pvp-season/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/pvp-tier/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/quest/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/quest/category/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/quest/area/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/quest/type/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/realm/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/region/index', 'namespaces': ['dynamic'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/reputation-faction/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/reputation-tiers/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/talent/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/pvp-talent/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/tech-talent-tree/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/tech-talent/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{'group': '', 'path': '/data/wow/title/index', 'namespaces': ['static'], 'index': True}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Achievement', |
|
|
|
|
'path': '/data/wow/achievement-category/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Achievement', |
|
|
|
|
'path': '/data/wow/achievement/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Connected Realm', |
|
|
|
|
'path': '/data/wow/connected-realm/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
#{ |
|
|
|
|
# 'group': 'Connected Realm', |
|
|
|
|
# 'path': '/data/wow/connected-realm/{connectedRealmId}', |
|
|
|
|
# 'namespace': 'dynamic', |
|
|
|
|
# 'connectedRealmId': { |
|
|
|
|
# 'source': '/data/wow/connected-realm/index', |
|
|
|
|
# 'loop': lambda l: l |
|
|
|
|
# } |
|
|
|
|
#}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Covenant', |
|
|
|
|
'path': '/data/wow/covenant/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Covenant', |
|
|
|
|
'path': '/data/wow/covenant/soulbind/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Covenant', |
|
|
|
|
'path': '/data/wow/covenant/conduit/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Creature', |
|
|
|
|
'path': '/data/wow/creature-family/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Creature', |
|
|
|
|
'path': '/data/wow/creature-type/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Guild Crest', |
|
|
|
|
'path': '/data/wow/guild-crest/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Item', |
|
|
|
|
'path': '/data/wow/item-class/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Item', |
|
|
|
|
'path': '/data/wow/item-set/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Journal', |
|
|
|
|
'path': '/data/wow/journal-expansion/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Journal', |
|
|
|
|
'path': '/data/wow/journal-encounter/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Journal', |
|
|
|
|
'path': '/data/wow/journal-instance/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Modified Crafting', |
|
|
|
|
'path': '/data/wow/modified-crafting/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Modified Crafting', |
|
|
|
|
'path': '/data/wow/modified-crafting/category/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Modified Crafting', |
|
|
|
|
'path': '/data/wow/modified-crafting/reagent-slot-type/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Mount', |
|
|
|
|
'path': '/data/wow/mount/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Mythic Keystone Affix', |
|
|
|
|
'path': '/data/wow/keystone-affix/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Mythic Keystone Dungeon', |
|
|
|
|
'path': '/data/wow/mythic-keystone/dungeon/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Mythic Keystone Dungeon', |
|
|
|
|
'path': '/data/wow/mythic-keystone/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Mythic Keystone Dungeon', |
|
|
|
|
'path': '/data/wow/mythic-keystone/period/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Pet', |
|
|
|
|
'path': '/data/wow/pet/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Pet', |
|
|
|
|
'path': '/data/wow/pet-ability/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Playable Class', |
|
|
|
|
'path': '/data/wow/playable-class/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Playable Race', |
|
|
|
|
'path': '/data/wow/playable-race/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Playable Specialization', |
|
|
|
|
'path': '/data/wow/playable-specialization/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Power Type', |
|
|
|
|
'path': '/data/wow/power-type/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Profession', |
|
|
|
|
'path': '/data/wow/profession/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'PvP Season', |
|
|
|
|
'path': '/data/wow/pvp-season/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'PvP Tier', |
|
|
|
|
'path': '/data/wow/pvp-tier/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Quest', |
|
|
|
|
'path': '/data/wow/quest/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Quest', |
|
|
|
|
'path': '/data/wow/quest/category/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Quest', |
|
|
|
|
'path': '/data/wow/quest/area/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Quest', |
|
|
|
|
'path': '/data/wow/quest/type/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Realm', |
|
|
|
|
'path': '/data/wow/realm/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Region', |
|
|
|
|
'path': '/data/wow/region/index', |
|
|
|
|
'namespace': 'dynamic', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Reputations', |
|
|
|
|
'path': '/data/wow/reputation-faction/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Reputations', |
|
|
|
|
'path': '/data/wow/reputation-tiers/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Talent', |
|
|
|
|
'path': '/data/wow/talent/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Talent', |
|
|
|
|
'path': '/data/wow/pvp-talent/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Tech Talent', |
|
|
|
|
'path': '/data/wow/tech-talent-tree/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Tech Talent', |
|
|
|
|
'path': '/data/wow/tech-talent/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Title', |
|
|
|
|
'path': '/data/wow/title/index', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'index': True |
|
|
|
|
}, |
|
|
|
|
{ |
|
|
|
|
'group': 'Title', |
|
|
|
|
'path': '/data/wow/title/{titleId}', |
|
|
|
|
'namespace': 'static', |
|
|
|
|
'titleId': { |
|
|
|
|
'source': '/data/wow/title/index', |
|
|
|
|
'list': 'titles', |
|
|
|
|
'value': lambda item: item['id'] |
|
|
|
|
} |
|
|
|
|
}, |
|
|
|
|
] |
|
|
|
|