Search Knowledge Base by Keyword

VMware vCenter SOAP

< Back

Overview

VMware vCenter Server exposes two quite different APIs. Alongside the JSON API used by the VMware vCenter connector, it serves the older vSphere Web Services API over SOAP at /sdk. That SOAP interface is the one the vSphere Client and PowerCLI have always been built on, and it reaches far deeper into the object model: where the JSON API returns a summary of a host, the SOAP PropertyCollector returns whatever property paths you ask for, including hardware inventory, storage device maps and per-VM virtual hardware.

This connector uses the soap.php driver. Authentication posts a Login envelope against the SessionManager to /sdk, carrying the connection username and password inside the XML, and reads the session key out of soapenv.LoginResponse.returnval.key. The driver captures the session cookie vCenter sets on that call and replays it on every subsequent request. Data jobs are all POSTs to /sdk as well. What distinguishes one job from another is the XML Envelope Payload field, which holds the full SOAP envelope to send. Most envelopes are RetrieveProperties calls against the PropertyCollector, naming a managed object type, a list of property paths and the target object. The parsed XML lands in staging tables prefixed vcenter_.

The depth is the reason to use this connector. Fifteen inbound templates pull the properties that drive real estate decisions: host hardware down to CPU model, memory and storage adapters; VM virtual hardware, VMDK file layout, guest OS and VMware Tools state; datastore capacity and free space; cluster configuration; and the guest OS catalog that tells you which operating systems a cluster’s hardware version supports. That last one matters when planning an OS upgrade across a virtual estate, because it tells you where a target OS is not yet supported by the underlying platform.

The connector is registered as bidirectional. In practice it is inbound only: no outbound templates ship, and the outbound job form does not expose an endpoint, a method type or the XML envelope field, so an outbound SOAP call cannot be constructed.

NOTE: Almost every template in this connector is designed to be driven by an enumeration, fetching properties for one object at a time by substituting a managed object identifier into the envelope. None of the shipped templates has that enumeration configured. Read the issues section before enabling the connection.

Connector Properties

Property Value
Identifier VCENTER_SOAP
Name VMware vCenter SOAP
Description SOAP API: VMware vCenter is an advanced server management software that provides a centralized platform for controlling vSphere environments for visibility across hybrid clouds.
Job Types Both Inbound and Outbound
Order 30
Enabled Yes
Locked Yes
Block Update No
Single Authentication Yes
Windows Only No
Connector Version 2026-07-06
Hooks None
Additional Job Fields None
Image

Authentication Methods

The connector offers one authentication method, a SOAP login that exchanges a username and password for a vCenter session.

Method Identifier Base Method Script Order Enabled Config Fields
VMWARE SOAP: username / password – return authorization token VCENTER_SOAP_673b SOAP_4d5eceffd4 soap.php 20 Yes 9

NOTE: The Soap Envelope field holds the login envelope itself, with %user_name% and %user_pass% substituted at run time from the connection’s credential fields. You can edit the envelope, for example to add a locale element, without touching the connector definition.

NOTE: Certificate validation is disabled on both the authentication and the data calls.

Method 1: VMWARE SOAP: username / password – return authorization token (VCENTER_SOAP_673b)

Connect to a SOAP method API with a username / password retrieving value for authorization token

Posts the Login envelope shown in the Soap Envelope field to the Authentication Token End Point (/sdk by default), then extracts the session key from soapenv.LoginResponse.returnval.key. Session continuity on subsequent calls is maintained by the cookie vCenter issues on login, which the driver stores and replays. Use a vCenter account with a read-only role at the vCenter root. The PropertyCollector honours permissions, so an account with partial visibility silently returns a partial inventory.

Connection Configuration Fields (9)

Order Label Type Required Default Max Len Tooltip
10 API Domain text Yes https://VCENTER_FQDN_REPLACE 255 Enter API domain of the Connection
30 Server Temporary Working Path text Yes storage/etl5 255 Enter path where temporary files are stored during data processing (exclude starting and ending backslash)
40 Username text No 1024 Tooltip for Username
50 Password password No 64000 Tooltip for Password
180 Soap Envelope textarea No See below Enter the SOAP Envelope for the authentication call
190 Authentication Token End Point text No /sdk 500 Tooltip for Authentication End Point
200 Authentication Token JSON Node text No soapenv.LoginResponse.returnval.key 255 Tooltip for Authentication Data Node
240 Authenticate Only Once radio Yes 0 Choose if authentication is only to be done once and not redone again for each call from pagination or enumeration
250 Additional Job Fields fields_list No Enter list of additional fields to add to staging data for all jobs

Default value for Soap Envelope:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:vim25">    <soapenv:Header/>    <soapenv:Body>       <urn:Login>          <_this type="SessionManager">SessionManager</_this>          <userName>%user_name%</userName>          <password>%user_pass%</password>       </urn:Login>    </soapenv:Body> </soapenv:Envelope>

Authentication Configuration

Headers sent on the authentication call:

Header Value Base64
>SetCookie Off
SOAPAction: urn:vim25/5.5 Off

Headers sent on the data calls:

Header Value Base64
>GetCookie Off
vmware-api-session-id: %auth_data% Off
SOAPAction: urn:vim25/5.5 Off

cURL options:

Option Authentication Call Data Calls
USERAGENT Mozilla/5.0 (Windows NT 6.1 Win64 x64 rv:47.0) Gecko/20100101 Firefox/47.0 Same
SSL_VERIFYHOST false Same
SSL_VERIFYPEER false Same
RETURNTRANSFER true Same
FOLLOWLOCATION true Same
FAILONERROR true Same
CONNECTTIMEOUT 10 Same
POST true Same

NOTE: The SOAPAction header is fixed at urn:vim25/5.5. vCenter accepts that version for backward compatibility, and it means the calls are made against a long-established schema rather than the newest one your vCenter supports.

Inbound Job Fields Enabled (32)

Inbound jobs expose a smaller form than the JSON connector. The endpoint is effectively fixed at /sdk, and the work is done by the XML Envelope Payload field that carries the SOAP request, the API Return Data Node that picks the element to parse from, and the three enumeration levels that feed managed object identifiers into the envelope.

Order Label Type Required Default Tooltip
10 Job Description text Yes Enter description of the Job
20 Job Schedule lookup Yes Daily Select frequency Job should run
30 Enabled radio Yes Yes Choose if Job is enabled
40 Use Unparsed Data radio No No Choose if you wish to parse the incoming data, or leave it in its raw format
50 Log Raw API Calls radio Yes No Choose if raw API calls are logged
70 Destination Table text Yes Enter name of the destination table
80 Data Identity text No Enter identity of the Job
100 XML Envelope Payload textarea No Enter job XML envelope payload for the SOAP call
120 Append New Data to Existing Tables radio No No Choose if new data will append to the existing destination table, or will create a new destination table
130 Fields to Index text No Enter fields to index
170 Method Type select Yes GET Select method type of the Job
190 API End Point text No Enter API end point of the Job
230 API Return Data Node text No Enter API return data node of the Job
240 Ignore XML Attributes radio No No When parsing XML ignore field attributes and do not include them in the data
310 Maximum API Calls text No Enter maximum number of API calls for the Job to make
320 Enumeration 1 Type select No None Enter enumeration level 1 type
330 Enumeration 1 ETL Job lookup No Select ETL job for the enumeration 1 values
340 Enumeration 1 Data Type data_type No Select the data type and fields for enumeration 1 values
370 Enumeration 1 Fields fields_list No Enter enumeration 1 fields of the Job
380 Enumeration 2 Type select No None Enter enumeration level 2 type
390 Enumeration 2 ETL Job lookup No Select ETL job for the enumeration 2 values
400 Enumeration 2 Data Type data_type No Select the data type and fields for enumeration 2 values
430 Enumeration 2 Fields fields_list No Enter enumeration 2 fields of the Job
440 Enumeration 3 Type select No None Enter enumeration level 3 type
450 Enumeration 3 ETL Job lookup No Select ETL job for the enumeration 3 values
460 Enumeration 3 Data Type data_type No Select the data type and fields for enumeration 3 values
490 Enumeration 3 Fields fields_list No Enter enumeration 3 fields of the Job
500 Pause Enumeration text No Enter values for pausing enumeration every X calls for Y seconds
510 Kill Enumeration on Error radio No No Choose to stop the enumeration loop on an error or continue processing the loop
520 Additional Fields fields_list No Enter list of additional fields to add to staging data
550 Retry Pause text No Enter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds.
560 Order text Yes Enter order of the Job

NOTE: Ignore XML Attributes controls whether XML attributes such as type="HostSystem" are carried into the staging data. It defaults to No, so attributes are retained. The type attribute is often the only thing distinguishing one returnval from another, so leave it off unless the extra columns are causing you problems.

NOTE: No pagination fields are exposed on this connector. Result size is controlled by how narrowly each envelope’s property set and object set are scoped.

Outbound Job Fields Enabled (7)

The outbound form exposes only the job description, enabled flag, data sending method, body encoding, the outbound and return field lists and the job order.

Order Label Type Required Default Tooltip
10 Job Description text Yes Enter description of the Job
30 Enabled radio Yes Yes Choose if Job is enabled
180 Data Sending Method select Yes JSON Encoded Data Select method for sending the outbound data
210 Body Data Sending Method select Yes JSON Encoded Data Select method for sending the body data
260 Return Data Fields List fields_list Yes Enter return data fields of the Job
530 Outbound Fields List fields_list Yes Enter outbound fields of the Job
560 Order text Yes Enter order of the Job

Inbound Job Templates (15)

Fifteen inbound templates ship, twelve of them enabled. Each one posts a specific SOAP envelope to /sdk. They fall into three groups: a service handshake, per-object property retrievals that expect a managed object identifier to be supplied by an enumeration, and folder traversals that walk a datacenter’s object tree. Two of the templates run monthly because their data changes rarely, and the rest run daily.

# Job Description Destination Table API End Point Enabled What It Pulls
1 GET vCenter Service Content soap_vcenter_service_content /sdk Yes Calls RetrieveServiceContent against the ServiceInstance, which returns the root handles of the vCenter object model (rootFolder, propertyCollector, searchIndex, sessionManager and the rest) together with the about block naming the product, full version, build number and API version. This is the one template that needs no enumeration, which makes it the right first job to run when verifying a new connection.
2 GET vCenter Cluster Info vcenter_cluster_info /sdk Yes Retrieves the properties of one DRS or HA cluster by managed object identifier: its member host list, the full HA and DRS configuration, the summary counters (total CPU and memory, effective capacity, number of hosts and VMs) and the cluster name.
3 GET vCenter Host Info vcenter_host_info /sdk Yes Retrieves the properties of one ESXi host by managed object identifier. This is the richest hardware source in the connector: name, connection and power state, the whole hardware block (CPU package and core counts, model, memory size, BIOS and system UUID and serial), the ESXi product version and build, the SCSI LUNs and multipath configuration of the storage adapters, and the vmkernel network interfaces.
4 GET vCenter VM Info vcenter_vm_info /sdk Yes Retrieves the properties of one virtual machine by managed object identifier: owning resource pool, CPU and memory allocation settings including reservations and limits, the full virtual hardware list (vCPUs, memory, virtual disks, NICs and controllers), the VMDK and snapshot file layout with per-file sizes, the guest OS and VMware Tools state as reported by the guest, the summary block and the attached networks.
5 GET vCenter Resource Pool Info vcenter_resource_pool_info /sdk Yes Retrieves the properties of one resource pool: name, parent pool, owning compute resource, any child pools, the virtual machines placed in it, and its CPU and memory allocation shares, reservations and limits.
6 GET vCenter Datacenter Info vcenter_datacenter_info /sdk Yes Retrieves the structural properties of one datacenter: the managed object identifiers of its host folder, VM folder, datastore folder and network folder, plus its datastore and network lists. These folder identifiers are what the folder traversal jobs need as their starting point.
7 GET vCenter Datacenter VM Info vcenter_datacenter_vm_info /sdk Yes Walks a datacenter’s VM folder downward through childEntity using RetrievePropertiesEx and returns the name of every virtual machine found anywhere in that tree. It stamps the datacenter key onto every staging row through an additional field, so the output is a datacenter-to-VM membership list.
8 GET vCenter Datacenter Host Info vcenter_datacenter_host_info /sdk Yes Walks a datacenter’s host folder through the datacenter-to-host-folder and compute-resource-to-host traversals and returns the name of every ESXi host in that datacenter, with the datacenter key stamped onto each row. This gives you host-to-datacenter placement.
9 GET vCenter Datacenter VM Folder vcenter_datacenter_vm_folder /sdk No Returns the vmFolder managed object identifier for one datacenter. Its only purpose is to feed that identifier to GET vCenter Datacenter VM Info, and its API Return Data Node is set to pick the folder value out of the RetrieveProperties response.
10 GET vCenter Datacenter Host Folder vcenter_datacenter_host_folder /sdk No Returns the hostFolder managed object identifier for one datacenter, as the enumeration source for GET vCenter Datacenter Host Info.
11 GET vCenter Datacenter Datastore Folder vcenter_datacenter_datastore_folder /sdk No Returns the datastoreFolder managed object identifier for one datacenter, as the enumeration source for GET vCenter Datacenter Datastore Info.
12 GET vCenter Datacenter Datastore Info vcenter_datacenter_datastore_info /sdk Yes Walks a datacenter’s datastore folder through childEntity and through StoragePod (datastore cluster) membership, returning the name of every datastore in that datacenter with the datacenter key stamped on each row.
13 GET vCenter Datastore Info vcenter_datastore_info /sdk Yes Retrieves the properties of one datastore by managed object identifier: name, type (VMFS, NFS, vSAN and so on), the datastore URL, total capacity, free space, the accessible flag, the full info block including block size and version details, and the list of hosts that mount it.
14 GET vCenter Compute Resource Info vcenter_compute_resource_info /sdk Yes Returns the name and the environmentBrowser handle for one cluster. The environment browser handle is the object the guest OS catalog query is made against, so this job exists mainly to supply that identifier. It runs monthly.
15 GET vCenter Guest OS Catalog vcenter_guest_os_catalog /sdk Yes Calls QueryConfigOption against a cluster’s EnvironmentBrowser and parses the guestOSDescriptor list, which is every guest operating system that cluster’s hardware version supports, with the VMware guest identifier, the full OS name and the supported CPU, memory and disk limits for each. This is the reference data you check an OS upgrade plan against. It runs monthly.

Job Template Configuration

Settings Common to All Fifteen Templates

Setting Value
Allow Empty Table Yes
Append Files to Same Destination Table No
Append New Data to Existing Tables No
Use Unparsed Data No
Convert UUID-Keyed Objects to Rows No
Ignore XML Attributes No
Log Raw API Calls No
Method Type POST
API End Point /sdk
Body Data Sending Method JSON Encoded Data

Settings That Vary by Template

Template ID Order Enabled Job Schedule Destination Table Data Identity API Return Data Node
GET vCenter Service Content 230 20000 Yes Daily (15 1 * * *) soap_vcenter_service_content vcenter_service_content Not set
GET vCenter Cluster Info 231 20001 Yes Daily (15 1 * * *) vcenter_cluster_info vcenter_cluster_info Not set
GET vCenter Host Info 232 20002 Yes Daily (15 1 * * *) vcenter_host_info vcenter_host_info Not set
GET vCenter VM Info 233 20003 Yes Daily (15 1 * * *) vcenter_vm_info vcenter_vm_info Not set
GET vCenter Resource Pool Info 234 20003 Yes Daily (15 1 * * *) vcenter_resource_pool_info vcenter_resource_pool_info Not set
GET vCenter Datacenter Info 235 20003 Yes Daily (15 1 * * *) vcenter_datacenter_info vcenter_datacenter_info Not set
GET vCenter Datacenter VM Info 236 20004 Yes Daily (15 1 * * *) vcenter_datacenter_vm_info vcenter_datacenter_vm_info Not set
GET vCenter Datacenter Host Info 237 20005 Yes Daily (15 1 * * *) vcenter_datacenter_host_info vcenter_datacenter_host_info Not set
GET vCenter Datacenter VM Folder 238 20006 No Daily (15 1 * * *) vcenter_datacenter_vm_folder vcenter_datacenter_vm_folder "soapenv:Body".RetrievePropertiesResponse.returnval.propSet.Val._data
GET vCenter Datacenter Host Folder 239 20007 No Daily (15 1 * * *) vcenter_datacenter_host_folder vcenter_datacenter_host_folder "soapenv:Body".RetrievePropertiesResponse.returnval.propSet.Val._data
GET vCenter Datacenter Datastore Folder 240 20008 No Daily (15 1 * * *) vcenter_datacenter_datastore_folder vcenter_datacenter_datastore_folder "soapenv:Body".RetrievePropertiesResponse.returnval.propSet.Val._data
GET vCenter Datacenter Datastore Info 241 20009 Yes Daily (15 1 * * *) vcenter_datacenter_datastore_info vcenter_datacenter_datastore_info Not set
GET vCenter Datastore Info 242 20010 Yes Daily (15 1 * * *) vcenter_datastore_info vcenter_datastore_info Not set
GET vCenter Compute Resource Info 243 20011 Yes Monthly (45 2 1 * *) vcenter_compute_resource_info vcenter_compute_resource_info Not set
GET vCenter Guest OS Catalog 244 20012 Yes Monthly (45 2 1 * *) vcenter_guest_os_catalog vcenter_guest_os_catalog guestOSDescriptor

Settings That Vary by Template (continued)

Template ID enumeration_data_field
GET vCenter Service Content 230 Not set
GET vCenter Cluster Info 231 Not set
GET vCenter Host Info 232 Not set
GET vCenter VM Info 233 5:vm_id
GET vCenter Resource Pool Info 234 5:resource_pool
GET vCenter Datacenter Info 235 Not set
GET vCenter Datacenter VM Info 236 Not set
GET vCenter Datacenter Host Info 237 Not set
GET vCenter Datacenter VM Folder 238 Not set
GET vCenter Datacenter Host Folder 239 Not set
GET vCenter Datacenter Datastore Folder 240 Not set
GET vCenter Datacenter Datastore Info 241 Not set
GET vCenter Datastore Info 242 Not set
GET vCenter Compute Resource Info 243 Not set
GET vCenter Guest OS Catalog 244 Not set

Job Parameters and Enumeration

GET vCenter Service Content

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:vim25">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:RetrieveServiceContent>
         <_this>ServiceInstance</_this>
      </urn:RetrieveServiceContent>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Cluster Info

Enumeration 1 fields:

Name Value
enum_id_1 cluster

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:vim25">
 <soapenv:Body>
      <RetrieveProperties>
         <_this type="PropertyCollector">propertyCollector</_this>
        <specSet>
            <propSet>
               <type>ClusterComputeResource</type>
                <pathSet>host</pathSet>
                <pathSet>configuration</pathSet>
                <pathSet>summary</pathSet>
                <pathSet>name</pathSet>
            </propSet>
            <objectSet>
               <obj type="ClusterComputeResource">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Host Info

Enumeration 1 fields:

Name Value
enum_id_1 host

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
      <RetrieveProperties xmlns="urn:vim25">
         <_this type="PropertyCollector">propertyCollector</_this>
         <specSet>
            <propSet>
               <type>HostSystem</type>
               <pathSet>name</pathSet>
               <pathSet>runtime.connectionState</pathSet>
               <pathSet>runtime.powerState</pathSet>
               <pathSet>hardware</pathSet>
               <pathSet>summary.config.product</pathSet>
               <pathSet>config.storageDevice.scsiLun</pathSet>
               <pathSet>config.storageDevice.multipathInfo</pathSet>
               <pathSet>config.network.vnic</pathSet>
            </propSet>
            <objectSet>
               <obj type="HostSystem">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter VM Info

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <RetrieveProperties xmlns="urn:vim25">
         <_this type="PropertyCollector">propertyCollector</_this>
         <specSet>
            <propSet>
               <type>VirtualMachine</type>
               <pathSet>resourcePool</pathSet>
               <pathSet>config.cpuAllocation</pathSet>
               <pathSet>config.memoryAllocation</pathSet>
               <pathSet>config.hardware</pathSet>
               <pathSet>layoutEx.file</pathSet>
               <pathSet>guest</pathSet>
               <pathSet>summary</pathSet>
               <pathSet>network</pathSet>
            </propSet>
            <objectSet>
               <obj type="VirtualMachine">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Resource Pool Info

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <RetrieveProperties xmlns="urn:vim25">
         <_this type="PropertyCollector">propertyCollector</_this>
         <specSet>
            <propSet>
               <type>ResourcePool</type>
               <pathSet>name</pathSet>
               <pathSet>parent</pathSet>
               <pathSet>owner</pathSet>
               <pathSet>resourcePool</pathSet>
               <pathSet>vm</pathSet>
               <pathSet>config.cpuAllocation</pathSet>
               <pathSet>config.memoryAllocation</pathSet>
            </propSet>
            <objectSet>
               <obj type="ResourcePool">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter Info

Enumeration 1 fields:

Name Value
enum_id_1 datacenter

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
        <RetrieveProperties xmlns="urn:vim25">
			 <_this type="PropertyCollector">propertyCollector</_this>
			 <specSet>
				 <propSet>
					 <type>Datacenter</type>
					 <pathSet>hostFolder</pathSet>
					 <pathSet>datastore</pathSet>
					 <pathSet>datastoreFolder</pathSet>
					 <pathSet>network</pathSet>
					 <pathSet>networkFolder</pathSet>
					 <pathSet>vmFolder</pathSet>
				 </propSet>
				 <objectSet>
					 <obj type="Datacenter">%enum_id_1%</obj>
				 </objectSet>
			 </specSet>
		 </RetrieveProperties>
	 </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter VM Info

Additional staging fields:

Key Value
datacenter %enum_id_2%

Enumeration 1 fields:

Name Value
enum_id_1 val
enum_id_2 _enum_key

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
	   <RetrievePropertiesEx xmlns="urn:vim25">
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>VirtualMachine</type>
				   <pathSet>name</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Folder">%enum_id_1%</obj>
				   <skip>false</skip>
				   <selectSet xsi:type="TraversalSpec">
					   <name>folderTraversalSpec</name>
					   <type>Folder</type>
					   <path>childEntity</path>
					   <skip>false</skip>
				   </selectSet>
			   </objectSet>
		   </specSet>
		   <options/>
	   </RetrievePropertiesEx>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter Host Info

Additional staging fields:

Key Value
datacenter %enum_id_2%

Enumeration 1 fields:

Name Value
enum_id_1 val
enum_id_2 _enum_key

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:vim25" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
	   <RetrieveProperties>
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>HostSystem</type>
				   <pathSet>name</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Folder">%enum_id_1%</obj>
				   <skip>false</skip>
				   <selectSet xsi:type="TraversalSpec">
					   <name>folderTraversal</name>
					   <type>Folder</type>
					   <path>childEntity</path>
					   <skip>false</skip>
					   <selectSet>
						   <name>folderTraversal</name>
					   </selectSet>
					   <selectSet xsi:type="TraversalSpec">
						   <name>dcToHf</name>
						   <type>Datacenter</type>
						   <path>hostFolder</path>
						   <skip>false</skip>
					   </selectSet>
					   <selectSet xsi:type="TraversalSpec">
						   <name>crToH</name>
						   <type>ComputeResource</type>
						   <path>host</path>
						   <skip>false</skip>
					   </selectSet>
				   </selectSet>
			   </objectSet>
		   </specSet>
	   </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter VM Folder

Enumeration 1 fields:

Name Value
enum_id_1 datacenter

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
	   <RetrieveProperties xmlns="urn:vim25">
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>Datacenter</type>
				   <pathSet>vmFolder</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Datacenter">%enum_id_1%</obj>
			   </objectSet>
		   </specSet>
	   </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter Host Folder

Enumeration 1 fields:

Name Value
enum_id_1 datacenter

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
	   <RetrieveProperties xmlns="urn:vim25">
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>Datacenter</type>
				   <pathSet>hostFolder</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Datacenter">%enum_id_1%</obj>
			   </objectSet>
		   </specSet>
	   </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter Datastore Folder

Enumeration 1 fields:

Name Value
enum_id_1 datacenter

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
	   <RetrieveProperties xmlns="urn:vim25">
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>Datacenter</type>
				   <pathSet>datastoreFolder</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Datacenter">%enum_id_1%</obj>
			   </objectSet>
		   </specSet>
	   </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datacenter Datastore Info

Additional staging fields:

Key Value
datacenter %enum_id_2%

Enumeration 1 fields:

Name Value
enum_id_1 val
enum_id_2 _enum_key

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:vim25" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
	   <RetrieveProperties>
		   <_this type="PropertyCollector">propertyCollector</_this>
		   <specSet>
			   <propSet>
				   <type>Datastore</type>
				   <pathSet>name</pathSet>
			   </propSet>
			   <objectSet>
				   <obj type="Folder">%enum_id_1%</obj>
				   <skip>false</skip>
				   <selectSet xsi:type="TraversalSpec">
					   <name>folderTraversal</name>
					   <type>Folder</type>
					   <path>childEntity</path>
					   <skip>false</skip>
					   <selectSet>
						   <name>folderTraversal</name>
					   </selectSet>
					   <selectSet xsi:type="TraversalSpec">
						   <name>spToDs</name>
						   <type>StoragePod</type>
						   <path>childEntity</path>
						   <skip>false</skip>
					   </selectSet>
				   </selectSet>
			   </objectSet>
		   </specSet>
	   </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Datastore Info

Enumeration 1 fields:

Name Value
enum_id_1 datastore

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>
      <RetrieveProperties xmlns="urn:vim25">
         <_this type="PropertyCollector">propertyCollector</_this>
         <specSet>
            <propSet>
               <type>Datastore</type>
               <pathSet>name</pathSet>
               <pathSet>summary.type</pathSet>
               <pathSet>summary.url</pathSet>
               <pathSet>summary.capacity</pathSet>
               <pathSet>summary.freeSpace</pathSet>
               <pathSet>summary.accessible</pathSet>
               <pathSet>info</pathSet>
               <pathSet>host</pathSet>
            </propSet>
            <objectSet>
               <obj type="Datastore">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Compute Resource Info

Enumeration 1 fields:

Name Value
enum_id_1 cluster

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <RetrieveProperties xmlns="urn:vim25">
         <_this type="PropertyCollector">propertyCollector</_this>
         <specSet>
            <propSet>
               <type>ClusterComputeResource</type>
               <pathSet>name</pathSet>
               <pathSet>environmentBrowser</pathSet>
            </propSet>
            <objectSet>
               <obj type="ClusterComputeResource">%enum_id_1%</obj>
            </objectSet>
         </specSet>
      </RetrieveProperties>
   </soapenv:Body>
</soapenv:Envelope>

GET vCenter Guest OS Catalog

XML Envelope Payload:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Body>
      <QueryConfigOption xmlns="urn:vim25">
         <_this type="EnvironmentBrowser">%enum_id_1%</_this>
      </QueryConfigOption>
   </soapenv:Body>
</soapenv:Envelope>

NOTE: The folder templates and the info templates are two halves of a chain. GET vCenter Datacenter VM Folder, Host Folder and Datastore Folder produce folder identifiers keyed by datacenter, and GET vCenter Datacenter VM Info, Host Info and Datastore Info consume them through an enumeration that reads both the value and the key. The three folder jobs ship disabled while their three consumers ship enabled.

NOTE: The per-object templates (cluster, host, VM, resource pool, datacenter, datastore) each fetch one object per call. On an estate with several thousand virtual machines, GET vCenter VM Info is several thousand SOAP calls per run once enumeration is configured. Plan the schedule and the Pause Enumeration setting accordingly.

Outbound Job Templates (0)

No outbound templates ship with this connector, and the outbound job form does not expose an API End Point, a Method Type or the XML Envelope Payload field, so an outbound SOAP call cannot be built here. Treat the connector as inbound only.