2016-01-06 5 views
0

Я вижу, что есть SoftLayer_Account :: getEvaultNetworkStorage(), чтобы получить список моих хранилищ EVault. Однако, используя информацию, которую у меня есть, я не могу определить местоположение конкретного EVault. Ниже приводится тип информации, которую я получаю от getEvaultNetworkStorage():Как найти местоположение EVault с помощью API SoftLayer?

{ 
     "accountId" : 7xxx, 
     "capacityGb" : 30, 
     "createDate" : "2016-xxx", 
     "guestId" : 14xxx, 
     "hardwareId" : null, 
     "hostId" : 14xxx, 
     "id" : 83xxx, 
     "nasType" : "EVAULT", 
     "password" : "Bxxx", 
     "serviceProviderId" : 1, 
     "serviceResourceBackendIpAddress" : "ev-xxx.service.softlayer.com", 
     "serviceResourceName" : "ev-xxx.service.softlayer.com", 
     "storageTypeId" : "19", 
     "upgradableFlag" : true, 
     "username" : "IBMxxx" 
    }, 

Я не вижу никакой другой фильтр полезен объект для установки либо.

Использование SoftLayer_Network_Storage_Backup_Evault :: getObject() предоставляет информацию о том же типе, и нет API, который дает мне информацию о местоположении. И мне нужен идентификатор местоположения, чтобы запрограммировать плагин EVault.

Любые идеи?

ответ

1

Попробуйте сделать следующее, чтобы получить место EVault с использованием масок:

Option 1: 

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Account/getEvaultNetworkStorage?objectMask=mask[id, serviceResourceName,guestId,billingItem[id,location]] 

Method: GET 

Option 2: 

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Network_Storage_Backup_Evault/[Evault_id]/getObject?objectMask=mask[billingItem[id,location]] 

Method: GET 

Кроме того, чтобы получить действительные места для заказов EVault, я предлагаю вам использовать следующий запрос:

https://[username]:[apikey]@api.softlayer.com/rest/v3/SoftLayer_Product_Package/0/getItemPrices?objectMask=mask[id,locationGroupId,item[id,keyName,description],pricingLocationGroup[locations[id, name, longName]]]&objectFilter={ "itemPrices": {  "item": {  "keyName": {   "operation": "*=EVAULT"  }  } } } 

Method: GET 

Примечание: Идентификатор цены с locationGroupId = null считается «стандартной ценой», и API будет внутренне переключать цены для клиента. Но сначала рекомендуем сначала выполнить checkOrder, чтобы убедиться, что желаемый заказ в порядке (плата может варьироваться).

Для получения более подробной информации о ценах и местах, пожалуйста, просмотрите:

http://sldn.softlayer.com/blog/cmporter/Location-based-Pricing-and-You

Ссылки:

http://sldn.softlayer.com/reference/services/SoftLayer_Product_Package/getItemPrices

Я надеюсь, что эта информация поможет вам.

+0

А, это был объект billingItem, у которого была информация о местоположении. Спасибо! – KHP

+0

@KHP, приветствую :). если это было полезно, пожалуйста, голосуйте. благодаря – mcruz