/** * List all of available versions. * * @param string $subscriptionId Subscription Id * @param string $location Location * @param string $publisher Publisher * @param string $offer Offer * @param string $sku Sku * * @return VersionList Object with API response */ public function getVersionsList($subscriptionId, $location, $publisher, $offer, $sku) { $result = null; $path = '/subscriptions/' . $subscriptionId . ComputeService::ENDPOINT_MICROSOFT_COMPUTE . '/locations/' . $location . '/publishers/' . $publisher . '/artifacttypes/vmimage/offers/' . $offer . '/skus/' . $sku . '/versions'; $request = $this->getClient()->prepareRequest($path, 'GET', ComputeService::RESOURCE_API_VERSION); $response = $this->getClient()->call($request); if (!$response->hasError()) { $resultArray = $response->getResult(); $result = new VersionList(); foreach ($resultArray as $array) { $result->append(VersionData::initArray($array)); } } return $result; }