factions = ['alliance', 'horde'] """ https://develop.battle.net/documentation/guides/regionality-and-apis """ regions = [ {'code': 'us', 'locales': ['en_US', 'es_MX', 'pt_BR']}, {'code': 'eu', 'locales': ['en_GB', 'es_ES', 'fr_FR', 'ru_RU', 'de_DE', 'pt_PT', 'it_IT']}, {'code': 'kr', 'locales': ['ko_KR']}, {'code': 'tw', 'locales': ['zh_TW']}, #{'code': 'cn', 'locales': ['zh_CN']} ] """ https://develop.battle.net/documentation/world-of-warcraft/game-data-apis """ apis = [ { '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'] } }, ]