top of page
  • Brock Peterson

VMware Aria Operations Custom Properties

I want to use VMware Aria Operations Automation Central to rightsize our VMs during maintenance windows. To make that easier, I'd like to put tags on my VMs, specifically vROps Tags, not vSphere Tags. Exploring vROps Tags, they aren't exactly what I want. In fact, they present as a parent object of the tagged entity, more of a Custom Group than a tag.


What I really want is a Custom Property, which are tag-like properties put on objects, in my case VMs. To create one go to Environment - Inventory, search for an object you'd like to place the Custom Property on, then select the Add/Edit Custom Property Icon at the top.

Give the Custom Property a Name, Type, and Value.

Exploring the VM details, we can now see our Custom Property.

Don't be confused by the fact that this shows under the Tags category, it's not really a tag, but rather a Custom Property. We can now create a Custom Group based on this Custom Property.

Finally, we can create Automation Central jobs against those VMs in their respective maintenance windows.


Beyond assigning Custom Properties via the UI, you can also use the API.


First, get your VM identifier with GET /api/resources. You can use the Swagger Based UI or a Curl command similar to this:

curl -X GET "https://vr83-bpeterson.tvs.vmware.com/suite-api/api/resources/534f18ab-45a8-46b9-9841-90302480ad1a/stats/latest?_no_links=true" -H  "accept: application/json" -H  "Authorization: vRealizeOpsToken token_goes_here"

Next, find your VM in the Response body of the GET /api/resources and capture the "identifier", mine looks like this:

"identifier": "f86399a8-5cba-4853-b4e1-054e2b82f095

Next, add the Custom Property to that VM with POST /api/resources/{id}/properties, mine looks like this:

The associated Curl command looks like this:

curl -X POST "https://vr83-bpeterson.tvs.vmware.com/suite-api/api/resources/f86399a8-5cba-4853-b4e1-054e2b82f095/properties?_no_links=true" -H  "accept: */*" -H  "Authorization: vRealizeOpsToken token_goes_here" -H  "Content-Type: application/json" -d "{  \"property-content\" : [ {    \"statKey\" : \"CustomProperty|Maintenance\",    \"timestamps\" : [ 1119844280663, 1675179791 ],    \"values\" : [ \"Sunday\", \"Sunday\"]  }]}"

My VM now has the Custom Property.

There is so much we can do with Custom Groups, Custom Properties, and Automation Central. Enjoy!





977 views
bottom of page