Skip to content

Commit adb65fd

Browse files
committed
Merge pull request #13 from LogansUA/feature-update-wow-api
Update World of Warcraft API methods
2 parents f3673bb + 7a04685 commit adb65fd

File tree

1 file changed

+145
-75
lines changed

1 file changed

+145
-75
lines changed

src/Service/WorldOfWarcraft.php

Lines changed: 145 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -58,88 +58,40 @@ public function getAuctionDataStatus($realm, array $options = [])
5858

5959
// endregion Auction API
6060

61-
// region Pet API
61+
// region Boss API
6262

6363
/**
64-
* Get pet lists
64+
* Get boss master list
6565
*
66-
* A list of all supported battle and vanity pets
66+
* A list of all supported bosses. A 'boss' in this context should be considered a boss encounter, which may include
67+
* more than one NPC.
6768
*
6869
* @param array $options Options
6970
*
7071
* @return Response
7172
*/
72-
public function getPetList(array $options = [])
73-
{
74-
return $this->request('/pet/', $options);
75-
}
76-
77-
/**
78-
* Get pet ability information by ID
79-
*
80-
* This provides data about a individual battle pet ability ID. We do not provide the tooltip for the ability yet.
81-
* We are working on a better way to provide this since it depends on your pet's species, level and quality rolls.
82-
*
83-
* @param int $abilityId The ID of the ability you want to retrieve
84-
* @param array $options Options
85-
*
86-
* @return Response
87-
*/
88-
public function getPetAbility($abilityId, array $options = [])
89-
{
90-
return $this->request('/pet/ability/'.(int) $abilityId, $options);
91-
}
92-
93-
/**
94-
* Get pet species information by ID
95-
*
96-
* This provides the data about an individual pet species. The species IDs can be found your character profile
97-
* using the options pets field. Each species also has data about what it's 6 abilities are.
98-
*
99-
* @param int $speciesId The species you want to retrieve data on
100-
* @param array $options Options
101-
*
102-
* @return Response
103-
*/
104-
public function getPetSpecies($speciesId, array $options = [])
105-
{
106-
return $this->request('/pet/species/'.(int) $speciesId, $options);
107-
}
108-
109-
/**
110-
* Get pet stats by species ID
111-
*
112-
* Retrieve detailed information about a given species of pet
113-
*
114-
* @param int $speciesId The pet's species ID. This can be found by querying a users' list of pets via the Character Profile API
115-
* @param array $options Options
116-
*
117-
* @return Response
118-
*/
119-
public function getPetStats($speciesId, array $options = [])
73+
public function getBossMasterList(array $options = [])
12074
{
121-
return $this->request('/pet/stats/'.(int) $speciesId, $options);
75+
return $this->request('/boss/', $options);
12276
}
12377

124-
// endregion Pet API
125-
126-
// region Mound API
127-
12878
/**
129-
* Get master list
79+
* Get boss information by ID
13080
*
131-
* A list of all supported mounts
81+
* The boss API provides information about bosses. A 'boss' in this context should be considered a boss encounter,
82+
* which may include more than one NPC.
13283
*
84+
* @param int $bossId The ID of the boss you want to retrieve
13385
* @param array $options Options
13486
*
13587
* @return Response
13688
*/
137-
public function getMasterList(array $options = [])
89+
public function getBoss($bossId, array $options = [])
13890
{
139-
return $this->request('/mount/', $options);
91+
return $this->request('/boss/'.(int) $bossId, $options);
14092
}
14193

142-
// endregion Mount API
94+
// endregion Boss API
14395

14496
// region Challenge Mode API
14597

@@ -202,6 +154,32 @@ public function getCharacter($realm, $characterName, array $options = [])
202154

203155
// endregion Character profile API
204156

157+
// region Guild profile API
158+
159+
/**
160+
* Get guild profile
161+
*
162+
* The guild profile API is the primary way to access guild information. This guild profile API can be used to fetch
163+
* a single guild at a time through an HTTP GET request to a url describing the guild profile resource. By default,
164+
* a basic dataset will be returned and with each request and zero or more additional fields can be retrieved.
165+
*
166+
* There are no required query string parameters when accessing this resource, although the fields query string
167+
* parameter can optionally be passed to indicate that one or more of the optional datasets is to be retrieved.
168+
* Those additional fields are listed in the method titled "Optional Fields".
169+
*
170+
* @param string $realm The realm the guild lives on
171+
* @param string $guildName Name of the guild being queried
172+
* @param array $options Options
173+
*
174+
* @return Response
175+
*/
176+
public function getGuild($realm, $guildName, array $options = [])
177+
{
178+
return $this->request('/guild/'.(string) $realm.'/'.(string) $guildName, $options);
179+
}
180+
181+
// endregion Guild profile API
182+
205183
// region Item API
206184

207185
/**
@@ -236,31 +214,88 @@ public function getItemSet($setId, array $options = [])
236214

237215
// endregion Item API
238216

239-
// region Guild profile API
217+
// region Mount API
240218

241219
/**
242-
* Get guild profile
220+
* Get mount master list
243221
*
244-
* The guild profile API is the primary way to access guild information. This guild profile API can be used to fetch
245-
* a single guild at a time through an HTTP GET request to a url describing the guild profile resource. By default,
246-
* a basic dataset will be returned and with each request and zero or more additional fields can be retrieved.
222+
* A list of all supported mounts
247223
*
248-
* There are no required query string parameters when accessing this resource, although the fields query string
249-
* parameter can optionally be passed to indicate that one or more of the optional datasets is to be retrieved.
250-
* Those additional fields are listed in the method titled "Optional Fields".
224+
* @param array $options Options
251225
*
252-
* @param string $realm The realm the guild lives on
253-
* @param string $guildName Name of the guild being queried
254-
* @param array $options Options
226+
* @return Response
227+
*/
228+
public function getMountMasterList(array $options = [])
229+
{
230+
return $this->request('/mount/', $options);
231+
}
232+
233+
// endregion Mount API
234+
235+
// region Pet API
236+
237+
/**
238+
* Get pet lists
239+
*
240+
* A list of all supported battle and vanity pets
241+
*
242+
* @param array $options Options
255243
*
256244
* @return Response
257245
*/
258-
public function getGuild($realm, $guildName, array $options = [])
246+
public function getPetList(array $options = [])
259247
{
260-
return $this->request('/guild/'.(string) $realm.'/'.(string) $guildName, $options);
248+
return $this->request('/pet/', $options);
261249
}
262250

263-
// endregion Guild profile API
251+
/**
252+
* Get pet ability information by ID
253+
*
254+
* This provides data about a individual battle pet ability ID. We do not provide the tooltip for the ability yet.
255+
* We are working on a better way to provide this since it depends on your pet's species, level and quality rolls.
256+
*
257+
* @param int $abilityId The ID of the ability you want to retrieve
258+
* @param array $options Options
259+
*
260+
* @return Response
261+
*/
262+
public function getPetAbility($abilityId, array $options = [])
263+
{
264+
return $this->request('/pet/ability/'.(int) $abilityId, $options);
265+
}
266+
267+
/**
268+
* Get pet species information by ID
269+
*
270+
* This provides the data about an individual pet species. The species IDs can be found your character profile
271+
* using the options pets field. Each species also has data about what it's 6 abilities are.
272+
*
273+
* @param int $speciesId The species you want to retrieve data on
274+
* @param array $options Options
275+
*
276+
* @return Response
277+
*/
278+
public function getPetSpecies($speciesId, array $options = [])
279+
{
280+
return $this->request('/pet/species/'.(int) $speciesId, $options);
281+
}
282+
283+
/**
284+
* Get pet stats by species ID
285+
*
286+
* Retrieve detailed information about a given species of pet
287+
*
288+
* @param int $speciesId The pet's species ID. This can be found by querying a users' list of pets via the Character Profile API
289+
* @param array $options Options
290+
*
291+
* @return Response
292+
*/
293+
public function getPetStats($speciesId, array $options = [])
294+
{
295+
return $this->request('/pet/stats/'.(int) $speciesId, $options);
296+
}
297+
298+
// endregion Pet API
264299

265300
// region PVP API
266301

@@ -359,6 +394,41 @@ public function getSpell($spellId, array $options = [])
359394

360395
// endregion Spell API
361396

397+
// region Zone API
398+
399+
/**
400+
* Get zone master list
401+
*
402+
* A list of all supported zones and their bosses. A 'zone' in this context should be considered a dungeon, or a
403+
* raid, not a zone as in a world zone. A 'boss' in this context should be considered a boss encounter, which may
404+
* include more than one NPC.
405+
*
406+
* @param array $options Options
407+
*
408+
* @return Response
409+
*/
410+
public function getZonesMasterList(array $options = [])
411+
{
412+
return $this->request('/zone/', $options);
413+
}
414+
415+
/**
416+
* Get zone information by ID
417+
*
418+
* The Zone API provides some information about zones.
419+
*
420+
* @param int $zoneId The ID of the zone you want to retrieve
421+
* @param array $options Options
422+
*
423+
* @return Response
424+
*/
425+
public function getZone($zoneId, array $options = [])
426+
{
427+
return $this->request('/zone/'.(int) $zoneId, $options);
428+
}
429+
430+
// endregion Zone API
431+
362432
// region Data resources API
363433

364434
/**

0 commit comments

Comments
 (0)