I'm able to use REST to add individual virtual machines for monitoring without any issues. I use Create/Orion.Nodes to add it, then Create/Orion.Pollers to set pollers, Create/Orion.NPM.CustomPollerAssignmentOnNode to add custom pollers, adjust custom properties on Orion.NodesCustomProperties, Invoke/Orion.Nodes/ScheduleListResources to launch a "List Resources" job, then check the status of it until it completes, then import the results, flag the interfaces and volumes I want to monitor, then export them back out again and then I have a fully automated addition of a node.
I can add an ESXi host to monitor it the same way if I want to do so, but it's only added as if it were a regular SNMP/ICMP node. This way, it doesn't populate the child information about the VMs running on the host or have a lot of the other statistical data on it. The Properties page doesn't allow me to check "Poll for VMware" or specify it as an ESXi host or anything, so the monitoring is limited in that way.
The only way to get a VMware device added properly for me is to use the web UI and click Add Node, select "VMware, Hyper-V, or Nutanix entity" as the polling method, and then "Standalone ESXi" device, then setting the premade credential, and then manually updating whatever I want to change afterwards. I see by looking in SWQL Studio that devices I've added manually have an additional entry in the Orion.VIM.Hosts table, so that appears to be related. But I can't figure out what properties need to be flagged on a node to make it known that the object is a VMware device to even allow the "Poll for VMware" option to be available, or what to invoke to trigger a discovery of the VMs and other components. I can't uncover the workflow of the process running under the hood for adding a VMware node via the web UI to be able to simulate it with automation.
Does anyone have any information on this?