public function get_all()
 {
     $request = new Request(new GuzzleClient(), $this->credentials, VO\HTTP\Url::fromNative($this->base_url . '/licenses'), new VO\HTTP\Method('GET'));
     $response = $request->send();
     $data = $response->get_data();
     return $data->licenses;
 }
 public function get_launch_url(VO\LicenseIDArray $license_id_array, VO\MemberID $member_id, VO\StringVO $callback_url)
 {
     $request = new Request(new GuzzleClient(), $this->credentials, VO\HTTP\Url::fromNative($this->base_url . '/purchase/launch_url/get'), new VO\HTTP\Method('POST'));
     $request_parameters = array('license_ids' => $license_id_array->__toArray(), 'member_id' => $member_id->__toString(), 'callback_url' => $callback_url->__toString());
     $response = $request->send($request_parameters);
     $data = $response->get_data();
     return $data->launch_url;
 }
 public function get_by_pub_id(VO\ID $id)
 {
     $pub_id = $id->__toString();
     $request = new Request(new GuzzleClient(), $this->credentials, VO\HTTP\Url::fromNative($this->base_url . '/course_by_pub_id/' . $pub_id . '/get'), new VO\HTTP\Method('GET'));
     $response = $request->send();
     $data = $response->get_data();
     return $data->course;
 }
 /**
  * @return success message
  */
 public function delete(VO\MemberID $id)
 {
     $member_id = $id->__toString();
     $request = new Request(new GuzzleClient(), $this->credentials, VO\HTTP\Url::fromNative($this->base_url . '/member/' . $member_id . '/delete'), new VO\HTTP\Method('DELETE'));
     $response = $request->send();
     $data = $response->get_data();
     return $data->message;
 }
 public function get_certificate_url(VO\MemberCertificateID $member_certificate_id)
 {
     $member_certificate_id = $member_certificate_id->__toString();
     $request = new Request(new GuzzleClient(), $this->credentials, VO\HTTP\Url::fromNative($this->base_url . '/certificate/' . $member_certificate_id . '/download'), new VO\HTTP\Method('GET'));
     $response = $request->send();
     $data = $response->get_data();
     return $data->certificate_url;
 }