blizzard_api 0.5.0 → 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +21 -0
- data/CHANGELOG.md +22 -0
- data/Gemfile.lock +9 -9
- data/README.md +58 -218
- data/blizzard_api.gemspec +6 -4
- data/lib/blizzard_api/diablo/community/act.rb +2 -2
- data/lib/blizzard_api/diablo/community/artisan.rb +2 -2
- data/lib/blizzard_api/diablo/community/character.rb +2 -2
- data/lib/blizzard_api/diablo/community/follower.rb +1 -1
- data/lib/blizzard_api/diablo/community/item.rb +1 -1
- data/lib/blizzard_api/diablo/community/item_type.rb +2 -2
- data/lib/blizzard_api/diablo/community/profile.rb +4 -4
- data/lib/blizzard_api/diablo/game_data/generic_data_endpoint.rb +3 -3
- data/lib/blizzard_api/hearthstone/game_data/back.rb +1 -1
- data/lib/blizzard_api/hearthstone/game_data/card.rb +2 -2
- data/lib/blizzard_api/hearthstone/game_data/generic_data_endpoint.rb +2 -2
- data/lib/blizzard_api/request.rb +3 -3
- data/lib/blizzard_api/starcraft.rb +7 -0
- data/lib/blizzard_api/starcraft/community/account.rb +1 -1
- data/lib/blizzard_api/starcraft/community/ladder.rb +2 -2
- data/lib/blizzard_api/starcraft/community/legacy.rb +88 -0
- data/lib/blizzard_api/starcraft/community/profile.rb +5 -5
- data/lib/blizzard_api/starcraft/game_data/league.rb +1 -1
- data/lib/blizzard_api/version.rb +1 -1
- data/lib/blizzard_api/wow.rb +24 -7
- data/lib/blizzard_api/wow/game_data/achievement.rb +3 -3
- data/lib/blizzard_api/wow/game_data/auction.rb +1 -1
- data/lib/blizzard_api/wow/game_data/azerite_essence.rb +1 -1
- data/lib/blizzard_api/wow/game_data/covenant.rb +79 -0
- data/lib/blizzard_api/wow/game_data/creature.rb +6 -6
- data/lib/blizzard_api/wow/game_data/generic_data_endpoint.rb +3 -3
- data/lib/blizzard_api/wow/game_data/guild_crest.rb +2 -2
- data/lib/blizzard_api/wow/game_data/item.rb +6 -6
- data/lib/blizzard_api/wow/game_data/journal.rb +8 -8
- data/lib/blizzard_api/wow/game_data/modified_crafting.rb +67 -0
- data/lib/blizzard_api/wow/game_data/mythic_keystone.rb +6 -6
- data/lib/blizzard_api/wow/game_data/mythic_keystone_affix.rb +1 -1
- data/lib/blizzard_api/wow/game_data/mythic_keystone_leaderboard.rb +2 -2
- data/lib/blizzard_api/wow/game_data/mythic_raid_leaderboard.rb +1 -1
- data/lib/blizzard_api/wow/game_data/pet.rb +4 -4
- data/lib/blizzard_api/wow/game_data/playable_class.rb +4 -4
- data/lib/blizzard_api/wow/game_data/playable_specialization.rb +2 -2
- data/lib/blizzard_api/wow/game_data/profession.rb +4 -4
- data/lib/blizzard_api/wow/game_data/pvp_season.rb +3 -3
- data/lib/blizzard_api/wow/game_data/pvp_tier.rb +1 -1
- data/lib/blizzard_api/wow/game_data/quest.rb +6 -6
- data/lib/blizzard_api/wow/game_data/reputation.rb +4 -4
- data/lib/blizzard_api/wow/game_data/spell.rb +1 -1
- data/lib/blizzard_api/wow/game_data/talent.rb +2 -2
- data/lib/blizzard_api/wow/game_data/tech_talent.rb +57 -0
- data/lib/blizzard_api/wow/game_data/wow_token.rb +1 -1
- data/lib/blizzard_api/wow/profile/character_profile.rb +63 -49
- data/lib/blizzard_api/wow/profile/guild.rb +8 -8
- data/lib/blizzard_api/wow/profile/profile.rb +5 -5
- data/lib/blizzard_api/wow/search/search_request.rb +1 -1
- metadata +14 -8
- data/.gitlab-ci.yml +0 -12
@@ -18,7 +18,7 @@ module BlizzardApi
|
|
18
18
|
# @!macro request_options
|
19
19
|
#
|
20
20
|
# @!macro response
|
21
|
-
def index(connected_realm_id, options
|
21
|
+
def index(connected_realm_id, **options)
|
22
22
|
api_request "#{endpoint_uri(connected_realm_id)}/index", default_options(options)
|
23
23
|
end
|
24
24
|
|
@@ -30,7 +30,7 @@ module BlizzardApi
|
|
30
30
|
# @!macro request_options
|
31
31
|
#
|
32
32
|
# @!macro response
|
33
|
-
def get(connected_realm_id, dungeon_id, period, options
|
33
|
+
def get(connected_realm_id, dungeon_id, period, **options)
|
34
34
|
api_request "#{endpoint_uri(connected_realm_id)}/#{dungeon_id}/period/#{period}", default_options(options)
|
35
35
|
end
|
36
36
|
|
@@ -19,7 +19,7 @@ module BlizzardApi
|
|
19
19
|
# @!macro request_options
|
20
20
|
#
|
21
21
|
# @!macro response
|
22
|
-
def get(raid, faction, options
|
22
|
+
def get(raid, faction, **options)
|
23
23
|
opts = options.merge(namespace: :dynamic, ttl: CACHE_DAY)
|
24
24
|
api_request "#{base_url(:game_data)}/leaderboard/hall-of-fame/#{raid}/#{faction}", opts
|
25
25
|
end
|
@@ -18,7 +18,7 @@ module BlizzardApi
|
|
18
18
|
# @!macro request_options
|
19
19
|
#
|
20
20
|
# @!macro response
|
21
|
-
def media(id, options
|
21
|
+
def media(id, **options)
|
22
22
|
api_request "#{base_url(:media)}/pet/#{id}", default_options.merge(options)
|
23
23
|
end
|
24
24
|
|
@@ -28,7 +28,7 @@ module BlizzardApi
|
|
28
28
|
# @!macro request_options
|
29
29
|
#
|
30
30
|
# @!macro response
|
31
|
-
def abilities(options
|
31
|
+
def abilities(**options)
|
32
32
|
api_request "#{endpoint_uri('ability')}/index", default_options.merge(options)
|
33
33
|
end
|
34
34
|
|
@@ -40,7 +40,7 @@ module BlizzardApi
|
|
40
40
|
# @!macro request_options
|
41
41
|
#
|
42
42
|
# @!macro response
|
43
|
-
def ability(id, options
|
43
|
+
def ability(id, **options)
|
44
44
|
api_request "#{endpoint_uri('ability')}/#{id}", default_options.merge(options)
|
45
45
|
end
|
46
46
|
|
@@ -52,7 +52,7 @@ module BlizzardApi
|
|
52
52
|
# @!macro request_options
|
53
53
|
#
|
54
54
|
# @!macro response
|
55
|
-
def ability_media(id, options
|
55
|
+
def ability_media(id, **options)
|
56
56
|
api_request "#{base_url(:media)}/pet-ability/#{id}", default_options.merge(options)
|
57
57
|
end
|
58
58
|
|
@@ -17,7 +17,7 @@ module BlizzardApi
|
|
17
17
|
# @!macro request_options
|
18
18
|
#
|
19
19
|
# @!macro response
|
20
|
-
def talent_slots(id, options
|
20
|
+
def talent_slots(id, **options)
|
21
21
|
api_request "#{endpoint_uri}/#{id}/pvp-talent-slots", default_options.merge(options)
|
22
22
|
end
|
23
23
|
|
@@ -25,7 +25,7 @@ module BlizzardApi
|
|
25
25
|
# @!macro complete
|
26
26
|
#
|
27
27
|
# @option options [Boolean] :classic If set to true, this method will call the classic version
|
28
|
-
def complete(options
|
28
|
+
def complete(**options)
|
29
29
|
index_data = index options
|
30
30
|
[].tap do |classes|
|
31
31
|
index_data[:classes].each do |pclass|
|
@@ -45,7 +45,7 @@ module BlizzardApi
|
|
45
45
|
# @option options [Boolean] :classic If set to true, this method will call the classic version
|
46
46
|
#
|
47
47
|
# @!macro response
|
48
|
-
def get(id, options
|
48
|
+
def get(id, **options)
|
49
49
|
data = api_request "#{endpoint_uri}/#{id}", default_options.merge(options)
|
50
50
|
data[:icon] = get_class_icon data[:media], options
|
51
51
|
data
|
@@ -59,7 +59,7 @@ module BlizzardApi
|
|
59
59
|
# @!macro request_options
|
60
60
|
#
|
61
61
|
# @!macro response
|
62
|
-
def media(id, options
|
62
|
+
def media(id, **options)
|
63
63
|
api_request "#{base_url(:media)}/playable-class/#{id}", default_options.merge(options)
|
64
64
|
end
|
65
65
|
|
@@ -12,7 +12,7 @@ module BlizzardApi
|
|
12
12
|
class PlayableSpecialization < Wow::GenericDataEndpoint
|
13
13
|
##
|
14
14
|
# @!macro complete
|
15
|
-
def complete(options
|
15
|
+
def complete(**options)
|
16
16
|
index_data = index options
|
17
17
|
response_data = OpenStruct.new
|
18
18
|
response_data.character_specializations = character_data(index_data, options)
|
@@ -28,7 +28,7 @@ module BlizzardApi
|
|
28
28
|
# @!macro request_options
|
29
29
|
#
|
30
30
|
# @!macro response
|
31
|
-
def media(id, options
|
31
|
+
def media(id, **options)
|
32
32
|
api_request "#{base_url(:media)}/playable-specialization/#{id}", default_options.merge(options)
|
33
33
|
end
|
34
34
|
|
@@ -18,7 +18,7 @@ module BlizzardApi
|
|
18
18
|
# @!macro request_options
|
19
19
|
#
|
20
20
|
# @!macro response
|
21
|
-
def media(id, options
|
21
|
+
def media(id, **options)
|
22
22
|
api_request "#{base_url(:media)}/profession/#{id}", default_options.merge(options)
|
23
23
|
end
|
24
24
|
|
@@ -31,7 +31,7 @@ module BlizzardApi
|
|
31
31
|
# @!macro request_options
|
32
32
|
#
|
33
33
|
# @!macro response
|
34
|
-
def skill_tier(id, tier_id, options
|
34
|
+
def skill_tier(id, tier_id, **options)
|
35
35
|
api_request "#{base_url(:game_data)}/profession/#{id}/skill-tier/#{tier_id}", default_options.merge(options)
|
36
36
|
end
|
37
37
|
|
@@ -43,7 +43,7 @@ module BlizzardApi
|
|
43
43
|
# @!macro request_options
|
44
44
|
#
|
45
45
|
# @!macro response
|
46
|
-
def recipe(id, options
|
46
|
+
def recipe(id, **options)
|
47
47
|
api_request "#{base_url(:game_data)}/recipe/#{id}", default_options.merge(options)
|
48
48
|
end
|
49
49
|
|
@@ -55,7 +55,7 @@ module BlizzardApi
|
|
55
55
|
# @!macro request_options
|
56
56
|
#
|
57
57
|
# @!macro response
|
58
|
-
def recipe_media(id, options
|
58
|
+
def recipe_media(id, **options)
|
59
59
|
api_request "#{base_url(:media)}/recipe/#{id}", default_options.merge(options)
|
60
60
|
end
|
61
61
|
|
@@ -16,7 +16,7 @@ module BlizzardApi
|
|
16
16
|
# @!macro request_options
|
17
17
|
#
|
18
18
|
# @!macro response
|
19
|
-
def leaderboards(season_id, options
|
19
|
+
def leaderboards(season_id, **options)
|
20
20
|
api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/index", default_options.merge(options)
|
21
21
|
end
|
22
22
|
|
@@ -26,7 +26,7 @@ module BlizzardApi
|
|
26
26
|
# @!macro request_options
|
27
27
|
#
|
28
28
|
# @!macro response
|
29
|
-
def leaderboard(season_id, brackets, options
|
29
|
+
def leaderboard(season_id, brackets, **options)
|
30
30
|
api_request "#{endpoint_uri}/#{season_id}/pvp-leaderboard/#{brackets}", default_options.merge(options)
|
31
31
|
end
|
32
32
|
|
@@ -36,7 +36,7 @@ module BlizzardApi
|
|
36
36
|
# @!macro request_options
|
37
37
|
#
|
38
38
|
# @!macro response
|
39
|
-
def rewards(season_id, options
|
39
|
+
def rewards(season_id, **options)
|
40
40
|
api_request "#{endpoint_uri}/#{season_id}/pvp-reward/index", default_options.merge(options)
|
41
41
|
end
|
42
42
|
|
@@ -16,7 +16,7 @@ module BlizzardApi
|
|
16
16
|
# @!macro request_options
|
17
17
|
#
|
18
18
|
# @!macro response
|
19
|
-
def categories(options
|
19
|
+
def categories(**options)
|
20
20
|
api_request "#{endpoint_uri}/category/index", default_options.merge(options)
|
21
21
|
end
|
22
22
|
|
@@ -27,7 +27,7 @@ module BlizzardApi
|
|
27
27
|
# @!macro request_options
|
28
28
|
#
|
29
29
|
# @!macro response
|
30
|
-
def category(id, options
|
30
|
+
def category(id, **options)
|
31
31
|
api_request "#{endpoint_uri}/category/#{id}", default_options.merge(options)
|
32
32
|
end
|
33
33
|
|
@@ -37,7 +37,7 @@ module BlizzardApi
|
|
37
37
|
# @!macro request_options
|
38
38
|
#
|
39
39
|
# @!macro response
|
40
|
-
def areas(options
|
40
|
+
def areas(**options)
|
41
41
|
api_request "#{endpoint_uri}/area/index", default_options.merge(options)
|
42
42
|
end
|
43
43
|
|
@@ -48,7 +48,7 @@ module BlizzardApi
|
|
48
48
|
# @!macro request_options
|
49
49
|
#
|
50
50
|
# @!macro response
|
51
|
-
def area(id, options
|
51
|
+
def area(id, **options)
|
52
52
|
api_request "#{endpoint_uri}/area/#{id}", default_options.merge(options)
|
53
53
|
end
|
54
54
|
|
@@ -58,7 +58,7 @@ module BlizzardApi
|
|
58
58
|
# @!macro request_options
|
59
59
|
#
|
60
60
|
# @!macro response
|
61
|
-
def types(options
|
61
|
+
def types(**options)
|
62
62
|
api_request "#{endpoint_uri}/type/index", default_options.merge(options)
|
63
63
|
end
|
64
64
|
|
@@ -69,7 +69,7 @@ module BlizzardApi
|
|
69
69
|
# @!macro request_options
|
70
70
|
#
|
71
71
|
# @!macro response
|
72
|
-
def type(id, options
|
72
|
+
def type(id, **options)
|
73
73
|
api_request "#{endpoint_uri}/type/#{id}", default_options.merge(options)
|
74
74
|
end
|
75
75
|
|
@@ -32,7 +32,7 @@ module BlizzardApi
|
|
32
32
|
# @!macro request_options
|
33
33
|
#
|
34
34
|
# @!macro response
|
35
|
-
def factions(options
|
35
|
+
def factions(**options)
|
36
36
|
api_request "#{endpoint_uri('faction')}/index", default_options.merge(options)
|
37
37
|
end
|
38
38
|
|
@@ -43,7 +43,7 @@ module BlizzardApi
|
|
43
43
|
# @!macro request_options
|
44
44
|
#
|
45
45
|
# @!macro response
|
46
|
-
def faction(id, options
|
46
|
+
def faction(id, **options)
|
47
47
|
api_request "#{endpoint_uri('faction')}/#{id}", default_options.merge(options)
|
48
48
|
end
|
49
49
|
|
@@ -53,7 +53,7 @@ module BlizzardApi
|
|
53
53
|
# @!macro request_options
|
54
54
|
#
|
55
55
|
# @!macro response
|
56
|
-
def tiers(options
|
56
|
+
def tiers(**options)
|
57
57
|
api_request "#{endpoint_uri('tiers')}/index", default_options.merge(options)
|
58
58
|
end
|
59
59
|
|
@@ -64,7 +64,7 @@ module BlizzardApi
|
|
64
64
|
# @!macro request_options
|
65
65
|
#
|
66
66
|
# @!macro response
|
67
|
-
def tier(id, options
|
67
|
+
def tier(id, **options)
|
68
68
|
api_request "#{endpoint_uri('tiers')}/#{id}", default_options.merge(options)
|
69
69
|
end
|
70
70
|
|
@@ -16,7 +16,7 @@ module BlizzardApi
|
|
16
16
|
# @!macro request_options
|
17
17
|
#
|
18
18
|
# @!macro response
|
19
|
-
def pvp_talents(options
|
19
|
+
def pvp_talents(**options)
|
20
20
|
api_request "#{base_url(:game_data)}/pvp-talent/index", default_options.merge(options)
|
21
21
|
end
|
22
22
|
|
@@ -28,7 +28,7 @@ module BlizzardApi
|
|
28
28
|
# @!macro request_options
|
29
29
|
#
|
30
30
|
# @!macro response
|
31
|
-
def pvp_talent(id, options
|
31
|
+
def pvp_talent(id, **options)
|
32
32
|
api_request "#{base_url(:game_data)}/pvp-talent/#{id}", default_options.merge(options)
|
33
33
|
end
|
34
34
|
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BlizzardApi
|
4
|
+
module Wow
|
5
|
+
##
|
6
|
+
# This class allows access to World of Warcraft talent data
|
7
|
+
#
|
8
|
+
# @see https://develop.battle.net/documentation/world-of-warcraft/game-data-apis
|
9
|
+
#
|
10
|
+
# You can get an instance of this class using the default region as follows:
|
11
|
+
# api_instance = BlizzardApi::Wow.talent
|
12
|
+
class TechTalent < Wow::GenericDataEndpoint
|
13
|
+
##
|
14
|
+
# Fetch tech talent trees
|
15
|
+
#
|
16
|
+
# @!macro request_options
|
17
|
+
#
|
18
|
+
# @!macro response
|
19
|
+
def tech_talent_trees(**options)
|
20
|
+
api_request "#{base_url(:game_data)}/tech-talent-tree/index", default_options.merge(options)
|
21
|
+
end
|
22
|
+
|
23
|
+
##
|
24
|
+
# Fetch a tech talent tree
|
25
|
+
#
|
26
|
+
# @param id [Integer] Tech talent id
|
27
|
+
#
|
28
|
+
# @!macro request_options
|
29
|
+
#
|
30
|
+
# @!macro response
|
31
|
+
def tech_talent_tree(id, **options)
|
32
|
+
api_request "#{base_url(:game_data)}/tech-talent-tree/#{id}", default_options.merge(options)
|
33
|
+
end
|
34
|
+
|
35
|
+
##
|
36
|
+
# Fetch a tech talent media
|
37
|
+
#
|
38
|
+
# @param id [Integer] Tech talent id
|
39
|
+
#
|
40
|
+
# @!macro request_options
|
41
|
+
#
|
42
|
+
# @!macro response
|
43
|
+
def media(id, **options)
|
44
|
+
api_request "#{base_url(:media)}/tech-talent/#{id}", default_options.merge(options)
|
45
|
+
end
|
46
|
+
|
47
|
+
protected
|
48
|
+
|
49
|
+
def endpoint_setup
|
50
|
+
@endpoint = 'tech-talent'
|
51
|
+
@namespace = :static
|
52
|
+
@collection = 'tech-talents'
|
53
|
+
@ttl = CACHE_TRIMESTER
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -22,7 +22,7 @@ module BlizzardApi
|
|
22
22
|
# @!macro request_options
|
23
23
|
#
|
24
24
|
# @!macro response
|
25
|
-
def get(realm, character, options
|
25
|
+
def get(realm, character, **options)
|
26
26
|
character_request realm, character, options
|
27
27
|
end
|
28
28
|
|
@@ -36,8 +36,8 @@ module BlizzardApi
|
|
36
36
|
# @!macro request_options
|
37
37
|
#
|
38
38
|
# @!macro response
|
39
|
-
def achievements(realm, character, options
|
40
|
-
character_request realm, character,
|
39
|
+
def achievements(realm, character, **options)
|
40
|
+
character_request realm, character, 'achievements', options
|
41
41
|
end
|
42
42
|
|
43
43
|
##
|
@@ -50,8 +50,8 @@ module BlizzardApi
|
|
50
50
|
# @!macro request_options
|
51
51
|
#
|
52
52
|
# @!macro response
|
53
|
-
def achievement_statistics(realm, character, options
|
54
|
-
character_request realm, character,
|
53
|
+
def achievement_statistics(realm, character, **options)
|
54
|
+
character_request realm, character, 'achievements/statistics', options
|
55
55
|
end
|
56
56
|
|
57
57
|
##
|
@@ -64,8 +64,8 @@ module BlizzardApi
|
|
64
64
|
# @!macro request_options
|
65
65
|
#
|
66
66
|
# @!macro response
|
67
|
-
def appearance(realm, character, options
|
68
|
-
character_request realm, character,
|
67
|
+
def appearance(realm, character, **options)
|
68
|
+
character_request realm, character, 'appearance', options
|
69
69
|
end
|
70
70
|
|
71
71
|
##
|
@@ -78,8 +78,8 @@ module BlizzardApi
|
|
78
78
|
# @!macro request_options
|
79
79
|
#
|
80
80
|
# @!macro response
|
81
|
-
def collections(realm, character, options
|
82
|
-
character_request realm, character,
|
81
|
+
def collections(realm, character, **options)
|
82
|
+
character_request realm, character, 'collections', options
|
83
83
|
end
|
84
84
|
|
85
85
|
##
|
@@ -92,8 +92,8 @@ module BlizzardApi
|
|
92
92
|
# @!macro request_options
|
93
93
|
#
|
94
94
|
# @!macro response
|
95
|
-
def pets(realm, character, options
|
96
|
-
character_request realm, character,
|
95
|
+
def pets(realm, character, **options)
|
96
|
+
character_request realm, character, 'collections/pets', options
|
97
97
|
end
|
98
98
|
|
99
99
|
##
|
@@ -106,8 +106,8 @@ module BlizzardApi
|
|
106
106
|
# @!macro request_options
|
107
107
|
#
|
108
108
|
# @!macro response
|
109
|
-
def mounts(realm, character, options
|
110
|
-
character_request realm, character,
|
109
|
+
def mounts(realm, character, **options)
|
110
|
+
character_request realm, character, 'collections/mounts', options
|
111
111
|
end
|
112
112
|
|
113
113
|
##
|
@@ -120,8 +120,8 @@ module BlizzardApi
|
|
120
120
|
# @!macro request_options
|
121
121
|
#
|
122
122
|
# @!macro response
|
123
|
-
def encounters(realm, character, options
|
124
|
-
character_request realm, character,
|
123
|
+
def encounters(realm, character, **options)
|
124
|
+
character_request realm, character, 'encounters', options
|
125
125
|
end
|
126
126
|
|
127
127
|
##
|
@@ -134,8 +134,8 @@ module BlizzardApi
|
|
134
134
|
# @!macro request_options
|
135
135
|
#
|
136
136
|
# @!macro response
|
137
|
-
def dungeons(realm, character, options
|
138
|
-
character_request realm, character,
|
137
|
+
def dungeons(realm, character, **options)
|
138
|
+
character_request realm, character, 'encounters/dungeons', options
|
139
139
|
end
|
140
140
|
|
141
141
|
##
|
@@ -148,8 +148,8 @@ module BlizzardApi
|
|
148
148
|
# @!macro request_options
|
149
149
|
#
|
150
150
|
# @!macro response
|
151
|
-
def raids(realm, character, options
|
152
|
-
character_request realm, character,
|
151
|
+
def raids(realm, character, **options)
|
152
|
+
character_request realm, character, 'encounters/raids', options
|
153
153
|
end
|
154
154
|
|
155
155
|
##
|
@@ -162,8 +162,8 @@ module BlizzardApi
|
|
162
162
|
# @!macro request_options
|
163
163
|
#
|
164
164
|
# @!macro response
|
165
|
-
def equipment(realm, character, options
|
166
|
-
character_request realm, character,
|
165
|
+
def equipment(realm, character, **options)
|
166
|
+
character_request realm, character, 'equipment', options
|
167
167
|
end
|
168
168
|
|
169
169
|
##
|
@@ -176,8 +176,8 @@ module BlizzardApi
|
|
176
176
|
# @!macro request_options
|
177
177
|
#
|
178
178
|
# @!macro response
|
179
|
-
def hunter_pets(realm, character, options
|
180
|
-
character_request realm, character,
|
179
|
+
def hunter_pets(realm, character, **options)
|
180
|
+
character_request realm, character, 'hunter-pets', options
|
181
181
|
end
|
182
182
|
|
183
183
|
##
|
@@ -190,8 +190,8 @@ module BlizzardApi
|
|
190
190
|
# @!macro request_options
|
191
191
|
#
|
192
192
|
# @!macro response
|
193
|
-
def media(realm, character, options
|
194
|
-
character_request realm, character,
|
193
|
+
def media(realm, character, **options)
|
194
|
+
character_request realm, character, 'character-media', options
|
195
195
|
end
|
196
196
|
|
197
197
|
##
|
@@ -204,8 +204,8 @@ module BlizzardApi
|
|
204
204
|
# @!macro request_options
|
205
205
|
#
|
206
206
|
# @!macro response
|
207
|
-
def mythic_keystone_profile(realm, character, options
|
208
|
-
character_request realm, character,
|
207
|
+
def mythic_keystone_profile(realm, character, **options)
|
208
|
+
character_request realm, character, 'mythic-keystone-profile', options
|
209
209
|
end
|
210
210
|
|
211
211
|
##
|
@@ -219,8 +219,8 @@ module BlizzardApi
|
|
219
219
|
# @!macro request_options
|
220
220
|
#
|
221
221
|
# @!macro response
|
222
|
-
def mythic_keystone_seasons(realm, character, season = nil, options
|
223
|
-
character_request realm, character,
|
222
|
+
def mythic_keystone_seasons(realm, character, season = nil, **options)
|
223
|
+
character_request realm, character, "mythic-keystone-profile/season/#{season}", options
|
224
224
|
end
|
225
225
|
|
226
226
|
##
|
@@ -233,8 +233,8 @@ module BlizzardApi
|
|
233
233
|
# @!macro request_options
|
234
234
|
#
|
235
235
|
# @!macro response
|
236
|
-
def professions(realm, character, options
|
237
|
-
character_request realm, character,
|
236
|
+
def professions(realm, character, **options)
|
237
|
+
character_request realm, character, 'professions', options
|
238
238
|
end
|
239
239
|
|
240
240
|
##
|
@@ -248,8 +248,8 @@ module BlizzardApi
|
|
248
248
|
# @!macro request_options
|
249
249
|
#
|
250
250
|
# @!macro response
|
251
|
-
def status(realm, character, options
|
252
|
-
character_request realm, character,
|
251
|
+
def status(realm, character, **options)
|
252
|
+
character_request realm, character, 'status', options
|
253
253
|
end
|
254
254
|
|
255
255
|
##
|
@@ -263,8 +263,8 @@ module BlizzardApi
|
|
263
263
|
# @!macro request_options
|
264
264
|
#
|
265
265
|
# @!macro response
|
266
|
-
def pvp_bracket(realm, character, bracket, options
|
267
|
-
character_request realm, character,
|
266
|
+
def pvp_bracket(realm, character, bracket, **options)
|
267
|
+
character_request realm, character, "pvp-bracket/#{bracket}", options
|
268
268
|
end
|
269
269
|
|
270
270
|
##
|
@@ -277,8 +277,8 @@ module BlizzardApi
|
|
277
277
|
# @!macro request_options
|
278
278
|
#
|
279
279
|
# @!macro response
|
280
|
-
def pvp_summary(realm, character, options
|
281
|
-
character_request realm, character,
|
280
|
+
def pvp_summary(realm, character, **options)
|
281
|
+
character_request realm, character, 'pvp-summary', options
|
282
282
|
end
|
283
283
|
|
284
284
|
##
|
@@ -292,11 +292,11 @@ module BlizzardApi
|
|
292
292
|
# @option options [Boolean] :completed Should return completed quests
|
293
293
|
#
|
294
294
|
# @!macro response
|
295
|
-
def quests(realm, character, options
|
295
|
+
def quests(realm, character, **options)
|
296
296
|
completed = options.delete(:completed) || false
|
297
|
-
return character_request realm, character,
|
297
|
+
return character_request realm, character, 'quests/completed', options if completed
|
298
298
|
|
299
|
-
character_request realm, character,
|
299
|
+
character_request realm, character, 'quests', options
|
300
300
|
end
|
301
301
|
|
302
302
|
##
|
@@ -309,8 +309,22 @@ module BlizzardApi
|
|
309
309
|
# @!macro request_options
|
310
310
|
#
|
311
311
|
# @!macro response
|
312
|
-
def reputation(realm, character, options
|
313
|
-
character_request realm, character,
|
312
|
+
def reputation(realm, character, **options)
|
313
|
+
character_request realm, character, 'reputations', options
|
314
|
+
end
|
315
|
+
|
316
|
+
##
|
317
|
+
# Return a character's soulbinds
|
318
|
+
#
|
319
|
+
# @see https://develop.battle.net/documentation/api-reference/world-of-warcraft-profile-api
|
320
|
+
#
|
321
|
+
# @param realm [String] The character realm's slug
|
322
|
+
# @param character [String] The character name
|
323
|
+
# @!macro request_options
|
324
|
+
#
|
325
|
+
# @!macro response
|
326
|
+
def soulbinds(realm, character, **options)
|
327
|
+
character_request realm, character, 'soulbinds', options
|
314
328
|
end
|
315
329
|
|
316
330
|
##
|
@@ -323,8 +337,8 @@ module BlizzardApi
|
|
323
337
|
# @!macro request_options
|
324
338
|
#
|
325
339
|
# @!macro response
|
326
|
-
def specializations(realm, character, options
|
327
|
-
character_request realm, character,
|
340
|
+
def specializations(realm, character, **options)
|
341
|
+
character_request realm, character, 'specializations', options
|
328
342
|
end
|
329
343
|
|
330
344
|
##
|
@@ -337,8 +351,8 @@ module BlizzardApi
|
|
337
351
|
# @!macro request_options
|
338
352
|
#
|
339
353
|
# @!macro response
|
340
|
-
def statistics(realm, character, options
|
341
|
-
character_request realm, character,
|
354
|
+
def statistics(realm, character, **options)
|
355
|
+
character_request realm, character, 'statistics', options
|
342
356
|
end
|
343
357
|
|
344
358
|
##
|
@@ -351,8 +365,8 @@ module BlizzardApi
|
|
351
365
|
# @!macro request_options
|
352
366
|
#
|
353
367
|
# @!macro response
|
354
|
-
def titles(realm, character, options
|
355
|
-
character_request realm, character,
|
368
|
+
def titles(realm, character, **options)
|
369
|
+
character_request realm, character, 'titles', options
|
356
370
|
end
|
357
371
|
|
358
372
|
private
|
@@ -363,7 +377,7 @@ module BlizzardApi
|
|
363
377
|
opts
|
364
378
|
end
|
365
379
|
|
366
|
-
def character_request(realm, character,
|
380
|
+
def character_request(realm, character, variant = nil, **options)
|
367
381
|
uri = "#{base_url(:profile)}/character/#{string_to_slug(realm)}/#{string_to_slug(character)}"
|
368
382
|
uri += "/#{variant}" if variant
|
369
383
|
api_request uri, default_options.merge(options)
|