/**
  * ProfileRequest constructor.
  * @param Client $client
  * @param string $type
  * @param int $id
  * @param string $name
  * @param string $region
  */
 public function __construct($client, $type, $id, $name, $region)
 {
     $url = 'https://%s.api.battle.net/sc2/profile/%s/1/%s/%s?locale=%s&apikey=%s';
     if (in_array($type, ['ladders', 'matches'])) {
         $this->url = sprintf($url, $region, $id, $name, $type, $client->language(), $client->apiToken());
     } else {
         $this->url = sprintf($url, $region, $id, $name, null, $client->language(), $client->apiToken());
     }
 }
 /**
  * DataRequest constructor.
  * @param Client $client
  * @param string $type
  * @param $region
  */
 public function __construct($client, $type, $region)
 {
     $url = 'https://%s.api.battle.net/sc2/data/%s?locale=%s&apikey=%s';
     if (in_array($type, ['achievements', 'rewards'])) {
         $this->url = sprintf($url, $region, $type, $client->language(), $client->apiToken());
     }
 }
 /**
  * LadderRequest constructor.
  * @param Client $client
  * @param int $id
  * @param string $region
  */
 public function __construct($client, $id, $region)
 {
     $url = 'https://%s.api.battle.net/sc2/ladder/%s?locale=%s&apikey=%s';
     $this->url = sprintf($url, $region, $id, $client->language(), $client->apiToken());
 }