Table of Contents


Overview

VMware vCenter Server is the management plane for a vSphere environment. It sits above the ESXi hypervisors and holds the inventory: datacenters, clusters, hosts, virtual machines, datastores, networks, resource pools and the tags applied to all of them. Anything an administrator sees in the vSphere Client is served from vCenter, and vCenter exposes that same inventory over an HTTP API.

This connector talks to that API over JSON using the json_rest_api.php driver. It opens a session by posting to the vCenter session endpoint with an HTTP Basic credential built from the connection’s username and password, reads the returned session identifier out of the response, and replays it on every subsequent call as the vmware-api-session-id header. Data jobs are plain GET requests against inventory paths such as /rest/vcenter/host and /rest/vcenter/datastore. Each job reads the value node of the response and writes the rows into its own staging table, all prefixed vmware_.

In a ReadyWorks context this is how the virtual estate gets into the data fabric. Datacenter, cluster, host and VM tables give you the placement of every workload, datastore and network tables give you what it depends on, and the tagging tables give you the ownership and application labels your VMware team already maintains. Reconciled against the CMDB and the endpoint inventory, that is what lets you scope a datacenter exit, size a hardware refresh or build migration waves that follow real host and cluster boundaries.

The connector is registered as bidirectional. The inbound side ships seventeen job templates and is where all the usable content is. The outbound side ships a single generic REST POST scaffold with no endpoint configured, disabled by default, so treat this connector as an inbound collector unless you build the outbound job yourself.

NOTE: Two connection fields ship with the literal placeholder host VCENTER_FQDN_REPLACE: the API Domain and the Authentication Token End Point. Both must be pointed at your own vCenter FQDN. Changing only the first leaves authentication aimed at a host that does not exist.

Connector Properties

PropertyValue
IdentifierVCENTER
NameVMware vCenter
DescriptionVMware vCenter is an advanced server management software that provides a centralized platform for controlling vSphere environments for visibility across hybrid clouds.
Job TypesBoth Inbound and Outbound
Order20
EnabledYes
LockedYes
Block UpdateNo
Single AuthenticationNo
Windows OnlyNo
Connector Version2026-06-10
HooksNone
Additional Job FieldsNone
Image

Authentication Methods

The connector offers one authentication method. It covers the standard vCenter pattern of exchanging a username and password for a session identifier that is then presented on every data call.

MethodIdentifierBase MethodScriptOrderEnabledConfig Fields
VMWARE JSON: username / password – return authorization tokenVCENTER_adb6858644VCENTER_adb6858644json_rest_api.php20Yes7

NOTE: Both the authentication call and the data calls run with SSL_VERIFYHOST and SSL_VERIFYPEER set to false, so the vCenter certificate is not validated. This accommodates the self-signed certificate a default vCenter install presents. If you have replaced that certificate with one from a trusted CA, be aware that the connection will still not check it.

NOTE: The connection timeout is 10 seconds and redirects are followed automatically.

Method 1: VMWARE JSON: username / password – return authorization token (VCENTER_adb6858644)

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

Sends an Authorization: Basic header built from the Username and Password fields, Base64 encoded at run time, to the Authentication Token End Point. vCenter replies with a session identifier, which the driver extracts and sends on every data call in the vmware-api-session-id header. Use this method with a vCenter local account or an SSO account that has read access to the inventory. A read-only role scoped at the vCenter root is enough for every shipped inbound template.

Connection Configuration Fields (7)

OrderLabelTypeRequiredDefaultMax LenTooltip
10API DomaintextYeshttps://VCENTER_FQDN_REPLACE255Enter API domain of the Connection
30Server Temporary Working PathtextYesstorage/etl5255Enter path where temporary files are stored during data processing (exclude starting and ending backslash)
40UsernametextNo1024Tooltip for Username
50PasswordpasswordNo64000Tooltip for Password
190Authentication Token End PointtextNohttps://VCENTER_FQDN_REPLACE/api/session500Tooltip for Authentication End Point
240Single AuthenticationradioYes0Choose if authentication is only to be done once and not on each enumeration or pagination loop
250Additional Job Fieldsfields_listNoEnter list of additional fields to add to staging data for all jobs

Authentication Configuration

Headers sent on the authentication call:

HeaderValueBase64
Content-Type:application/jsonOff
Authorization: Basic%user_name%:%user_pass%On

Headers sent on the data calls:

HeaderValueBase64
vmware-api-session-id:%auth_data%Off

cURL options:

OptionAuthentication CallData Calls
USERAGENTMozilla/5.0 (Windows NT 6.1 Win64 x64 rv:47.0) Gecko/20100101 Firefox/47.0Same
SSL_VERIFYHOSTfalseSame
SSL_VERIFYPEERfalseSame
RETURNTRANSFERtrueSame
FOLLOWLOCATIONtrueSame
FAILONERRORtrueSame
POSTtrueNot set
CONNECTTIMEOUT10Same

NOTE: Single Authentication defaults to No, which means the connector logs in again on every pagination and enumeration iteration. See the issues section before running enumerating jobs at scale.

Inbound Job Fields Enabled (44)

Inbound jobs expose the full REST job form: endpoint and method, response node, pagination, three levels of enumeration, retry behaviour and the staging table the rows land in.

OrderLabelTypeRequiredDefaultTooltip
10Job DescriptiontextYesEnter description of the Job
20Job SchedulelookupYesDailySelect frequency Job should run
30EnabledradioYesYesChoose if Job is enabled
40Use Unparsed DataradioNoNoChoose if you wish to parse the incoming data, or leave it in its raw format
50Log Raw API CallsradioYesNoChoose if raw API calls are logged
70Destination TabletextYesEnter name of the destination table
80Data IdentitytextNoEnter identity of the Job
120Append New Data to Existing TablesradioNoNoChoose if new data will append to the existing destination table, or will create a new destination table
130Fields to IndextextNoEnter fields to index
170Method TypeselectYesGETSelect method type of the Job
190API End PointtextNoEnter API end point of the Job
200API Data Parametersfields_listNoEnter API data parameters of the Job
210Body Data Sending MethodselectYesJSON Encoded DataSelect method for sending the body data
220Raw JSON Body DatatextareaNoEnter the raw JSON body to send. Do not use body selections in the API Parameters if this is used.
230API Return Data NodetextNoEnter API return data node of the Job
250Pagination TypeselectNoNoneSelect request paging type of the Job
270API Pagination NodetextNoEnter API pagination node of the Job
280Pagination Offset StarttextNoEnter request paging offset start of the Job
290Request LimittextNoEnter request limit of the Job
300Pagination Termination NodetextNoEnter request paging termination node and value of the Job
310Maximum API CallstextNoEnter maximum number of API calls for the Job to make
320Enumeration 1 TypeselectNoNoneEnter enumeration level 1 type
330Enumeration 1 ETL JoblookupNoSelect ETL job for the enumeration 1 values
340Enumeration 1 Data Typedata_typeNoSelect the data type and fields for enumeration 1 values
350Enumeration 1 Keys End PointtextNoEnter enumeration 1 keys end point of the Job
360Enumeration 1 NodetextNoEnter enumeration 1 node of the Job
370Enumeration 1 Fieldsfields_listNoEnter enumeration 1 fields of the Job
380Enumeration 2 TypeselectNoNoneEnter enumeration level 2 type
390Enumeration 2 ETL JoblookupNoSelect ETL job for the enumeration 2 values
400Enumeration 2 Data Typedata_typeNoSelect the data type and fields for enumeration 2 values
410Enumeration 2 Keys End PointtextNoEnter enumeration 2 keys end point of the Job
420Enumeration 2 NodetextNoEnter enumeration 2 node of the Job
430Enumeration 2 Fieldsfields_listNoEnter enumeration 2 fields of the Job
440Enumeration 3 TypeselectNoNoneEnter enumeration level 3 type
450Enumeration 3 ETL JoblookupNoSelect ETL job for the enumeration 3 values
460Enumeration 3 Data Typedata_typeNoSelect the data type and fields for enumeration 3 values
470Enumeration 3 Keys End PointtextNoEnter enumeration 3 keys end point of the Job
480Enumeration 3 NodetextNoEnter enumeration 3 node of the Job
490Enumeration 3 Fieldsfields_listNoEnter enumeration 3 fields of the Job
500Pause EnumerationtextNoEnter values for pausing enumeration every X calls for Y seconds
510Kill Enumeration on ErrorradioNoNoChoose to stop the enumeration loop on an error or continue processing the loop
520Additional Fieldsfields_listNoEnter list of additional fields to add to staging data
550Retry PausetextNoEnter values for retrying a failed API connection. Retry X times, waiting Y seconds between each try, with an API timeout of Z seconds.
560OrdertextYesEnter order of the Job

NOTE: Pagination Type defaults to None on every shipped template. vCenter list endpoints return the whole collection in a single response, so on a large inventory you should narrow the request with API Data Parameters (for example a datacenter or cluster filter) rather than relying on paging.

Outbound Job Fields Enabled (13)

Outbound jobs expose the endpoint, method and body encoding along with the outbound field list that builds the payload and the return field list that captures the response.

OrderLabelTypeRequiredDefaultTooltip
10Job DescriptiontextYesEnter description of the Job
30EnabledradioYesYesChoose if Job is enabled
50Log Raw API CallsradioYesNoChoose if raw API calls are logged
170Method TypeselectYesGETSelect method type of the Job
180Data Sending MethodselectYesJSON Encoded DataSelect method for sending the outbound data
190API End PointtextNoEnter API end point of the Job
200API Data Parametersfields_listNoEnter API data parameters of the Job
210Body Data Sending MethodselectYesJSON Encoded DataSelect method for sending the body data
260Return Data Fields Listfields_listYesEnter return data fields of the Job
530Outbound Fields Listfields_listYesEnter outbound fields of the Job
540Ignore Empty Outbound FieldsradioNoYesIgnore, and do not include, any outbound fields that are empty and have no data
550Raw JSON Outbound TemplatetextareaNoEnter the raw JSON outbound template to send. This will replace any automated structures defined in the outbound fields.
560OrdertextYesEnter order of the Job

Inbound Job Templates (17)

Seventeen inbound templates ship with the connector. Five of them are enabled on a new connection and the rest are supplied switched off, so review the list and turn on the objects you actually need before the first scheduled run. The set covers core inventory (datacenters, clusters, hosts, VMs, datastores, networks, resource pools) and the CIS tagging service (categories, tags and tag associations). Several templates are duplicates of others that exist purely to feed identifiers to a second job.

#Job DescriptionDestination TableAPI End PointEnabledWhat It Pulls
1GET Datacentersvmware_datacenter/rest/vcenter/datacenterYesThe datacenter objects defined in the vCenter inventory, returning each datacenter’s managed object identifier and display name. This is the top of the inventory tree and the natural join key for the datacenter-scoped jobs.
2GET Datacenters – Soap Enum 1vmware_datacenter_enum_1/rest/vcenter/datacenterNoA duplicate of GET Datacenters writing to its own staging table, vmware_datacenter_enum_1. It exists so that another job can use this table as an enumeration source rather than competing for the main datacenter table.
3GET Datacenters – Soap Enum 2vmware_datacenter_enum_2/rest/vcenter/datacenterNoA second duplicate of GET Datacenters, writing to vmware_datacenter_enum_2, provided for the same enumeration-source purpose.
4GET Datacenters – Soap Enum 3vmware_datacenter_enum_3/rest/vcenter/datacenterNoA third duplicate of GET Datacenters, writing to vmware_datacenter_enum_3.
5GET VM Listvmware_vm_list/rest/vcenter/vm/NoEvery virtual machine registered in vCenter, with its managed object identifier, name, power state, configured CPU count and memory size. This is the inventory list, not the per-VM configuration detail.
6GET Clustersvmware_clusters/rest/vcenter/clusterNoThe DRS and HA clusters defined under each datacenter, returning the cluster managed object identifier, name and DRS and HA enablement state.
7GET Hostsvmware_hosts/rest/vcenter/hostNoThe ESXi hosts registered with this vCenter, returning the host managed object identifier, name, connection state and power state.
8GET Networksvmware_network/rest/vcenter/networkYesThe networks visible in the inventory, covering standard port groups, distributed port groups and opaque networks, each with its identifier, name and network type.
9GET Datastoresvmware_datastores/rest/vcenter/datastoreNoThe datastores backing the estate, returning the datastore identifier, name, type (VMFS, NFS, vSAN and so on), total capacity and free space.
10GET Resource Poolsvmware_resource_pools/rest/vcenter/resource-poolNoThe resource pools defined under clusters and standalone hosts, returning the pool identifier and name.
11GET Datacenters – Soap Enum 4vmware_datacenter_enum_4/rest/vcenter/datacenterNoA fourth duplicate of GET Datacenters, writing to vmware_datacenter_enum_4.
12GET Categoriesvmware_categories/rest/com/vmware/cis/tagging/categoryNoThe identifiers of every tag category defined in the CIS tagging service. Categories are the containers that group tags, for example Application, Owner or Environment. This job returns identifiers only, and the names come from GET Category Info.
13GET Category Infovmware_category_info/rest/com/vmware/cis/tagging/category/id:%enum_id_1%YesThe full definition of one tag category looked up by identifier: its name, description, cardinality (whether one or many tags from the category may be applied to an object) and the inventory object types it may be attached to.
14GET Tagsvmware_tags/rest/com/vmware/cis/tagging/tagNoThe identifiers of every tag defined in the tagging service. As with categories, this returns identifiers only and the descriptive detail comes from GET Tag Info.
15GET Tag Infovmware_tag_info/rest/com/vmware/cis/tagging/tag/id:%enum_id_1%YesThe full definition of one tag looked up by identifier: its name, description and the category it belongs to. Joined to GET Tags this turns opaque tag identifiers into readable labels.
16GET Tags Enum 2vmware_tags_enum_2/rest/com/vmware/cis/tagging/tagNoA duplicate of GET Tags writing to vmware_tags_enum_2, provided as a separate enumeration source so the tag identifier list can be consumed without contending with the main tag table.
17POST Tag Associationsvmware_tag_associations/rest/com/vmware/cis/tagging/tag-association/id:%enum_id_1%?~action=list-attached-objectsYesFor one tag identifier, the list-attached-objects action returns every inventory object that tag is currently applied to, with the object type and managed object identifier. This is the table that turns VMware tags into usable ownership and application attribution across the estate. It ships with a retry setting of one attempt, one second apart, with a one second timeout.

Job Template Configuration

Settings Common to All Seventeen Templates

SettingValue
Job ScheduleDaily (15 1 * * *)
Allow Empty TableYes
Append Files to Same Destination TableNo
Append New Data to Existing TablesNo
Use Unparsed DataNo
Convert UUID-Keyed Objects to RowsNo
Ignore XML AttributesNo
Log Raw API CallsNo
Body Data Sending MethodJSON Encoded Data
API Return Data Nodevalue

Settings That Vary by Template

TemplateIDOrderEnabledDestination TableData IdentityMethod TypeAPI End Point
GET Datacenters21010000Yesvmware_datacentervmware_datacenter_infoGET/rest/vcenter/datacenter
GET Datacenters – Soap Enum 121110000Novmware_datacenter_enum_1vmware_datacenter_info_enum_1GET/rest/vcenter/datacenter
GET Datacenters – Soap Enum 221210000Novmware_datacenter_enum_2vmware_datacenter_info_enum_2GET/rest/vcenter/datacenter
GET Datacenters – Soap Enum 321310000Novmware_datacenter_enum_3vmware_datacenter_info_enum_3GET/rest/vcenter/datacenter
GET VM List21410000Novmware_vm_listvmware_vm_listGET/rest/vcenter/vm/
GET Clusters21510000Novmware_clustersvmware_clustersGET/rest/vcenter/cluster
GET Hosts21610000Novmware_hostsvmware_hostsGET/rest/vcenter/host
GET Networks21710001Yesvmware_networkvmware_networkGET/rest/vcenter/network
GET Datastores21810002Novmware_datastoresvmware_datastoresGET/rest/vcenter/datastore
GET Resource Pools21910002Novmware_resource_poolsvmware_resource_poolsGET/rest/vcenter/resource-pool
GET Datacenters – Soap Enum 422010003Novmware_datacenter_enum_4vmware_datacenter_info_enum_4GET/rest/vcenter/datacenter
GET Categories22110004Novmware_categoriesvmware_categoriesGET/rest/com/vmware/cis/tagging/category
GET Category Info22210005Yesvmware_category_infovmware_category_infoGET/rest/com/vmware/cis/tagging/category/id:%enum_id_1%
GET Tags22310006Novmware_tagsvmware_tagsGET/rest/com/vmware/cis/tagging/tag
GET Tag Info22410007Yesvmware_tag_infovmware_tag_infoGET/rest/com/vmware/cis/tagging/tag/id:%enum_id_1%
GET Tags Enum 222510008Novmware_tags_enum_2vmware_tagsGET/rest/com/vmware/cis/tagging/tag
POST Tag Associations22610009Yesvmware_tag_associationsvmware_tag_associationsPOST/rest/com/vmware/cis/tagging/tag-association/id:%enum_id_1%?~action=list-attached-objects

Settings That Vary by Template (continued)

TemplateIDRetry Pause
GET Datacenters210Not set
GET Datacenters – Soap Enum 1211Not set
GET Datacenters – Soap Enum 2212Not set
GET Datacenters – Soap Enum 3213Not set
GET VM List214Not set
GET Clusters215Not set
GET Hosts216Not set
GET Networks217Not set
GET Datastores218Not set
GET Resource Pools219Not set
GET Datacenters – Soap Enum 4220Not set
GET Categories221Not set
GET Category Info222Not set
GET Tags223Not set
GET Tag Info224Not set
GET Tags Enum 2225Not set
POST Tag Associations2261,1,1

Job Parameters and Enumeration

GET Category Info

Enumeration 1 fields:

NameValue
enum_id_1data

GET Tag Info

Enumeration 1 fields:

NameValue
enum_id_1data

POST Tag Associations

Enumeration 1 fields:

NameValue
enum_id_1data

NOTE: The tagging templates are designed as a chain: GET Categories and GET Tags produce identifier lists, and GET Category Info, GET Tag Info and POST Tag Associations expand one identifier at a time. The expanding jobs need an enumeration source configured before they can run. See the issues section.

NOTE: The five templates whose descriptions end in “Soap Enum” or “Enum 2” are duplicates of GET Datacenters and GET Tags. They collect no data of their own and are useful only when you are wiring an enumeration source for another job.

Outbound Job Templates (1)

One outbound template ships, disabled. It is a generic scaffold rather than a ready-made vCenter action.

#Job DescriptionMethodAPI End PointEnabledWhat It Does
1Rest POST APIPOSTNot setNoAn empty REST POST job with no endpoint set. It carries a single outbound field, record_key, and three return fields for status, message and the echoed record key. Use it as the starting point if you need to push data to a vCenter or vSphere automation endpoint, supplying the endpoint and the payload fields yourself.

Job Template Configuration

Settings

SettingValue
Order10
EnabledNo
Log Raw API CallsNo
Method TypePOST
Body Data Sending MethodJSON Encoded Data
Data Sending MethodJSON Encoded Data
Ignore Empty Outbound FieldsYes

Job Parameters and Enumeration

Rest POST API

Outbound fields list:

LabelNameTypeRequiredPattern
Record Keyrecord_keyStringon

Return data fields:

LabelName
Return Statusstatus
Return Messagemessage
Record Keydata.record_key

NOTE: Because the template has no API End Point, it cannot do anything useful until you configure one. It ships disabled for that reason.

Last updated on 11/4/2026

Attachments