Following are some examples on performing operations using XPRTLC and cURL:
To get metadata for a host:
To define an extended attribute named department on object type cluster:
xprtlc -m POST -b "session id" -l https://symantecdomain.example.com:14161/vom/api/meta/hadr/cluster /add?name=department
curl -g -k -X POST -b "session id" https://symantecdomain.example.com:14161/vom/api/meta/hadr/cluster /add?name=department
Adds and displays the extended attribute department for object type cluster in the Management Server console.
To modify an extended attribute named department to Dept_new on object type cluster:
To delete an extended attribute named Dept_new on object type cluster:
xprtlc -m POST -b "session id" -l https://symantecdomain.example.com:14161/vom/api/meta/hadr/cluster /delete?name=dept_new
curl -g -k -X POST -b "session id" https://symantecdomain.example.com:14161/vom/api/meta/hadr/cluster /delete?name=dept_new
When you delete an extended attribute, it is not displayed in the Management Server console.
To update the extended attribute value for a host where the extended attribute is location:
To filter object disk group whose display type is private:
To run a recovery plan:
xprtlc -m POST -b "session id" -l 'https://symantecdomain.example.com:14161/vom/api/op/hadr/recoveryplan/ myrplan_id/execute' -d 'payload={"Tasks": [{"task_order":"1", "IS_SKIP":false}, {"task_order":"1", "TIMEOUT":"5"}, {"task_order":"2", "IS_SKIP":false, "TIMEOUT":2}], "OfflineSharedSg":true}' -d 'reason=recovery plan execution for ticket no. 123'
curl -g -k -X POST -b "session id" -l 'https://symantecdomain.example.com:14161/vom/api/op/hadr/recoveryplan/ myrplan_id/execute' -d 'payload={"Tasks": [{"task_order":"1", "IS_SKIP":false}, {"task_order":"1","TIMEOUT":5}, {"task_order":"2", "IS_SKIP":false, "TIMEOUT":2}], "OfflineSharedSg":true}' -d 'reason=recovery plan execution for ticket no. 123'
To provision storage using a storage template
xprtlc -b "session id" -m POST -d 'payload={"HostId":"my_host_id", "DiskGroupId":"myDG_id", "VolSize":"vol_size"}' -l 'https://symantecdomain.example.com:14161/vom/api/op/server/ template/storage/storage_template_ID/provision'
curl -g -k -X POST -b "session id" -l 'https://symantecdomain.example.com:14161/vom/api/op/server/ template/storage/storage_template_ID/provision' -d 'payload={"HostId": {"my_host_id", "DiskGroupId":"myDG_id", "VolSize":"vol_size"}'
Where, symantecdomain.example.com is the name of your Management Server, server is the Server perspective, hadr is the Availability perspective, myhost_id is the encoded ID of the host, myDG_id is the encoded ID of the disk group, and myrplan_id is the recovery plan ID.
If "Ask reason for all operations" is enabled under Advanced Authorization in the Management Server perspective, then you need to provide a reason for performing the operation.