SoftLayer API - Как получить Volume Id из ответа json из части заказа

У меня есть Ansible playbook для заказа Portable Storage. Как я могу извлечь / получить идентификатор тома из ответа json этого порядка, чтобы я мог использовать его позже в следующих задачах для присоединения к экземпляру? Я понимаю, что разместил заказ, и он должен быть одобрен в первую очередь. В моем случае это занимает мало времени или не требует времени и сразу же получает одобрение. Я хотел бы создать и прикрепить том в одной игре. Благодарю.

1 ответ

Поскольку переносное хранилище должно быть одобрено, ответ на заказ не содержит идентификатор вновь созданного хранилища портала, однако ответ содержит свойство с именем "orderId", используя значение этого свойства, которое вы можете получить переносное хранилище. Например, используя запрос REST, например так:

GET https://$USERNAME:$APIKEY@api.softlayer.com/rest/v3/SoftLayer_Account/getPortableStorageVolumes?objectFilter={"portableStorageVolumes": {"billingItem":{"orderItem":{"order":{"id":{"operation": $ORDERID}}}}}}

Note: Replace $USERNAME $APIKEY $ORDERID

Чтобы заставить его работать с помощью curl, вам нужно закодировать URL, например

curl -X GET -u $USERNAME:$APIKEY https://api.softlayer.com/rest/v3/SoftLayer_Account/getPortableStorageVolumes?objectFilter=%7B%22portableStorageVolumes%22%3A+%7B%22billingItem%22%3A%7B%22orderItem%22%3A%7B%22order%22%3A%7B%22id%22%3A%7B%22operation%22%3A+$ORDERID%7D%7D%7D%7D%7D%7D

Note: Replace $USERNAME $APIKEY $ORDERID

Приведенный выше запрос вернет только недавно созданное переносное хранилище, поэтому вы можете получить из json идентификатор переносного хранилища для выполнения других задач с ним.

С уважением

Другие вопросы по тегам