Share via


Microsoft.ConnectedVMwarevSphere vcenters/inventoryItems

Bicep resource definition

The vcenters/inventoryItems resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems@2023-12-01' = {
  parent: resourceSymbolicName
  kind: 'string'
  name: 'string'
  properties: {
    managedResourceId: 'string'
    moName: 'string'
    moRefId: 'string'
    inventoryType: 'string'
    // For remaining properties, see InventoryItemProperties objects
  }
}

InventoryItemProperties objects

Set the inventoryType property to specify the type of object.

For Cluster, use:

{
  inventoryType: 'Cluster'
}

For Datastore, use:

{
  capacityGB: int
  freeSpaceGB: int
  inventoryType: 'Datastore'
}

For Host, use:

{
  inventoryType: 'Host'
  parent: {
    inventoryItemId: 'string'
    inventoryType: 'string'
    moName: 'string'
  }
}

For ResourcePool, use:

{
  inventoryType: 'ResourcePool'
  parent: {
    inventoryItemId: 'string'
    inventoryType: 'string'
    moName: 'string'
  }
}

For VirtualMachine, use:

{
  cluster: {
    inventoryItemId: 'string'
    inventoryType: 'string'
    moName: 'string'
  }
  folderPath: 'string'
  host: {
    inventoryItemId: 'string'
    inventoryType: 'string'
    moName: 'string'
  }
  instanceUuid: 'string'
  inventoryType: 'VirtualMachine'
  ipAddresses: [
    'string'
  ]
  networkProfile: {
    networkInterfaces: [
      {}
    ]
  }
  osName: 'string'
  osType: 'string'
  resourcePool: {
    inventoryItemId: 'string'
    inventoryType: 'string'
    moName: 'string'
  }
  smbiosUuid: 'string'
  storageProfile: {
    disks: [
      {
        diskName: 'string'
      }
    ]
  }
}

For VirtualMachineTemplate, use:

{
  folderPath: 'string'
  inventoryType: 'VirtualMachineTemplate'
  memorySizeMB: int
  numCoresPerSocket: int
  numCPUs: int
  osName: 'string'
  osType: 'string'
}

For VirtualNetwork, use:

{
  inventoryType: 'VirtualNetwork'
}

Property Values

Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems

Name Description Value
kind Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. string
name The resource name string (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: vcenters
properties Resource properties. InventoryItemProperties (required)

ClusterInventoryItem

Name Description Value
inventoryType They inventory type. 'Cluster' (required)

DatastoreInventoryItem

Name Description Value
capacityGB Gets or sets Maximum capacity of this datastore, in GBs. int
freeSpaceGB Gets or sets Available space of this datastore, in GBs. int
inventoryType They inventory type. 'Datastore' (required)

HostInventoryItem

Name Description Value
inventoryType They inventory type. 'Host' (required)
parent Parent host inventory resource details. InventoryItemDetails

InventoryItemDetails

Name Description Value
inventoryItemId Gets or sets the inventory Item ID for the resource. string
inventoryType The inventory type. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork'
moName Gets or sets the vCenter Managed Object name for the resource. string

InventoryItemProperties

Name Description Value
inventoryType Set to 'Cluster' for type ClusterInventoryItem. Set to 'Datastore' for type DatastoreInventoryItem. Set to 'Host' for type HostInventoryItem. Set to 'ResourcePool' for type ResourcePoolInventoryItem. Set to 'VirtualMachine' for type VirtualMachineInventoryItem. Set to 'VirtualMachineTemplate' for type VirtualMachineTemplateInventoryItem. Set to 'VirtualNetwork' for type VirtualNetworkInventoryItem. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork' (required)
managedResourceId Gets or sets the tracked resource id corresponding to the inventory resource. string
moName Gets or sets the vCenter Managed Object name for the inventory item. string
moRefId Gets or sets the MoRef (Managed Object Reference) ID for the inventory item. string

NetworkInterfaceInventory

Name Description Value

NetworkProfileInventory

Name Description Value
networkInterfaces Gets or sets the list of network interfaces associated with the virtual machine. NetworkInterfaceInventory[]

ResourcePoolInventoryItem

Name Description Value
inventoryType They inventory type. 'ResourcePool' (required)
parent Parent resourcePool inventory resource details. InventoryItemDetails

StorageProfileInventory

Name Description Value
disks Gets or sets the list of virtual disks associated with the virtual machine. VirtualDiskInventory[]

VirtualDiskInventory

Name Description Value
diskName Gets or sets the name of the virtual disk. string

VirtualMachineInventoryItem

Name Description Value
cluster Cluster inventory resource details. InventoryItemDetails
folderPath Gets or sets the folder path of the vm. string
host Host inventory resource details. InventoryItemDetails
instanceUuid Gets or sets the instance uuid of the vm. string
inventoryType They inventory type. 'VirtualMachine' (required)
ipAddresses Gets or sets the nic ip addresses. string[]
networkProfile Network properties. NetworkProfileInventory
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'
resourcePool ResourcePool inventory resource details. InventoryItemDetails
smbiosUuid Gets or sets the SMBIOS UUID of the vm. string
storageProfile Storage properties. StorageProfileInventory

VirtualMachineTemplateInventoryItem

Name Description Value
folderPath Gets or sets the folder path of the template. string
inventoryType They inventory type. 'VirtualMachineTemplate' (required)
memorySizeMB Gets or sets memory size in MBs for the template. int
numCoresPerSocket Gets or sets the number of cores per socket for the template.
Defaults to 1 if unspecified.
int
numCPUs Gets or sets the number of vCPUs for the template. int
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'

VirtualNetworkInventoryItem

Name Description Value
inventoryType They inventory type. 'VirtualNetwork' (required)

ARM template resource definition

The vcenters/inventoryItems resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems resource, add the following JSON to your template.

{
  "type": "Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems",
  "apiVersion": "2023-12-01",
  "name": "string",
  "kind": "string",
  "properties": {
    "managedResourceId": "string",
    "moName": "string",
    "moRefId": "string",
    "inventoryType": "string"
    // For remaining properties, see InventoryItemProperties objects
  }
}

InventoryItemProperties objects

Set the inventoryType property to specify the type of object.

For Cluster, use:

{
  "inventoryType": "Cluster"
}

For Datastore, use:

{
  "capacityGB": "int",
  "freeSpaceGB": "int",
  "inventoryType": "Datastore"
}

For Host, use:

{
  "inventoryType": "Host",
  "parent": {
    "inventoryItemId": "string",
    "inventoryType": "string",
    "moName": "string"
  }
}

For ResourcePool, use:

{
  "inventoryType": "ResourcePool",
  "parent": {
    "inventoryItemId": "string",
    "inventoryType": "string",
    "moName": "string"
  }
}

For VirtualMachine, use:

{
  "cluster": {
    "inventoryItemId": "string",
    "inventoryType": "string",
    "moName": "string"
  },
  "folderPath": "string",
  "host": {
    "inventoryItemId": "string",
    "inventoryType": "string",
    "moName": "string"
  },
  "instanceUuid": "string",
  "inventoryType": "VirtualMachine",
  "ipAddresses": [ "string" ],
  "networkProfile": {
    "networkInterfaces": [
      {
      }
    ]
  },
  "osName": "string",
  "osType": "string",
  "resourcePool": {
    "inventoryItemId": "string",
    "inventoryType": "string",
    "moName": "string"
  },
  "smbiosUuid": "string",
  "storageProfile": {
    "disks": [
      {
        "diskName": "string"
      }
    ]
  }
}

For VirtualMachineTemplate, use:

{
  "folderPath": "string",
  "inventoryType": "VirtualMachineTemplate",
  "memorySizeMB": "int",
  "numCoresPerSocket": "int",
  "numCPUs": "int",
  "osName": "string",
  "osType": "string"
}

For VirtualNetwork, use:

{
  "inventoryType": "VirtualNetwork"
}

Property Values

Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems

Name Description Value
apiVersion The api version '2023-12-01'
kind Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. string
name The resource name string (required)
properties Resource properties. InventoryItemProperties (required)
type The resource type 'Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems'

ClusterInventoryItem

Name Description Value
inventoryType They inventory type. 'Cluster' (required)

DatastoreInventoryItem

Name Description Value
capacityGB Gets or sets Maximum capacity of this datastore, in GBs. int
freeSpaceGB Gets or sets Available space of this datastore, in GBs. int
inventoryType They inventory type. 'Datastore' (required)

HostInventoryItem

Name Description Value
inventoryType They inventory type. 'Host' (required)
parent Parent host inventory resource details. InventoryItemDetails

InventoryItemDetails

Name Description Value
inventoryItemId Gets or sets the inventory Item ID for the resource. string
inventoryType The inventory type. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork'
moName Gets or sets the vCenter Managed Object name for the resource. string

InventoryItemProperties

Name Description Value
inventoryType Set to 'Cluster' for type ClusterInventoryItem. Set to 'Datastore' for type DatastoreInventoryItem. Set to 'Host' for type HostInventoryItem. Set to 'ResourcePool' for type ResourcePoolInventoryItem. Set to 'VirtualMachine' for type VirtualMachineInventoryItem. Set to 'VirtualMachineTemplate' for type VirtualMachineTemplateInventoryItem. Set to 'VirtualNetwork' for type VirtualNetworkInventoryItem. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork' (required)
managedResourceId Gets or sets the tracked resource id corresponding to the inventory resource. string
moName Gets or sets the vCenter Managed Object name for the inventory item. string
moRefId Gets or sets the MoRef (Managed Object Reference) ID for the inventory item. string

NetworkInterfaceInventory

Name Description Value

NetworkProfileInventory

Name Description Value
networkInterfaces Gets or sets the list of network interfaces associated with the virtual machine. NetworkInterfaceInventory[]

ResourcePoolInventoryItem

Name Description Value
inventoryType They inventory type. 'ResourcePool' (required)
parent Parent resourcePool inventory resource details. InventoryItemDetails

StorageProfileInventory

Name Description Value
disks Gets or sets the list of virtual disks associated with the virtual machine. VirtualDiskInventory[]

VirtualDiskInventory

Name Description Value
diskName Gets or sets the name of the virtual disk. string

VirtualMachineInventoryItem

Name Description Value
cluster Cluster inventory resource details. InventoryItemDetails
folderPath Gets or sets the folder path of the vm. string
host Host inventory resource details. InventoryItemDetails
instanceUuid Gets or sets the instance uuid of the vm. string
inventoryType They inventory type. 'VirtualMachine' (required)
ipAddresses Gets or sets the nic ip addresses. string[]
networkProfile Network properties. NetworkProfileInventory
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'
resourcePool ResourcePool inventory resource details. InventoryItemDetails
smbiosUuid Gets or sets the SMBIOS UUID of the vm. string
storageProfile Storage properties. StorageProfileInventory

VirtualMachineTemplateInventoryItem

Name Description Value
folderPath Gets or sets the folder path of the template. string
inventoryType They inventory type. 'VirtualMachineTemplate' (required)
memorySizeMB Gets or sets memory size in MBs for the template. int
numCoresPerSocket Gets or sets the number of cores per socket for the template.
Defaults to 1 if unspecified.
int
numCPUs Gets or sets the number of vCPUs for the template. int
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'

VirtualNetworkInventoryItem

Name Description Value
inventoryType They inventory type. 'VirtualNetwork' (required)

Usage Examples

Terraform (AzAPI provider) resource definition

The vcenters/inventoryItems resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems@2023-12-01"
  name = "string"
  parent_id = "string"
  body = {
    kind = "string"
    properties = {
      managedResourceId = "string"
      moName = "string"
      moRefId = "string"
      inventoryType = "string"
      // For remaining properties, see InventoryItemProperties objects
    }
  }
}

InventoryItemProperties objects

Set the inventoryType property to specify the type of object.

For Cluster, use:

{
  inventoryType = "Cluster"
}

For Datastore, use:

{
  capacityGB = int
  freeSpaceGB = int
  inventoryType = "Datastore"
}

For Host, use:

{
  inventoryType = "Host"
  parent = {
    inventoryItemId = "string"
    inventoryType = "string"
    moName = "string"
  }
}

For ResourcePool, use:

{
  inventoryType = "ResourcePool"
  parent = {
    inventoryItemId = "string"
    inventoryType = "string"
    moName = "string"
  }
}

For VirtualMachine, use:

{
  cluster = {
    inventoryItemId = "string"
    inventoryType = "string"
    moName = "string"
  }
  folderPath = "string"
  host = {
    inventoryItemId = "string"
    inventoryType = "string"
    moName = "string"
  }
  instanceUuid = "string"
  inventoryType = "VirtualMachine"
  ipAddresses = [
    "string"
  ]
  networkProfile = {
    networkInterfaces = [
      {
      }
    ]
  }
  osName = "string"
  osType = "string"
  resourcePool = {
    inventoryItemId = "string"
    inventoryType = "string"
    moName = "string"
  }
  smbiosUuid = "string"
  storageProfile = {
    disks = [
      {
        diskName = "string"
      }
    ]
  }
}

For VirtualMachineTemplate, use:

{
  folderPath = "string"
  inventoryType = "VirtualMachineTemplate"
  memorySizeMB = int
  numCoresPerSocket = int
  numCPUs = int
  osName = "string"
  osType = "string"
}

For VirtualNetwork, use:

{
  inventoryType = "VirtualNetwork"
}

Property Values

Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems

Name Description Value
kind Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. string
name The resource name string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: vcenters
properties Resource properties. InventoryItemProperties (required)
type The resource type "Microsoft.ConnectedVMwarevSphere/vcenters/inventoryItems@2023-12-01"

ClusterInventoryItem

Name Description Value
inventoryType They inventory type. 'Cluster' (required)

DatastoreInventoryItem

Name Description Value
capacityGB Gets or sets Maximum capacity of this datastore, in GBs. int
freeSpaceGB Gets or sets Available space of this datastore, in GBs. int
inventoryType They inventory type. 'Datastore' (required)

HostInventoryItem

Name Description Value
inventoryType They inventory type. 'Host' (required)
parent Parent host inventory resource details. InventoryItemDetails

InventoryItemDetails

Name Description Value
inventoryItemId Gets or sets the inventory Item ID for the resource. string
inventoryType The inventory type. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork'
moName Gets or sets the vCenter Managed Object name for the resource. string

InventoryItemProperties

Name Description Value
inventoryType Set to 'Cluster' for type ClusterInventoryItem. Set to 'Datastore' for type DatastoreInventoryItem. Set to 'Host' for type HostInventoryItem. Set to 'ResourcePool' for type ResourcePoolInventoryItem. Set to 'VirtualMachine' for type VirtualMachineInventoryItem. Set to 'VirtualMachineTemplate' for type VirtualMachineTemplateInventoryItem. Set to 'VirtualNetwork' for type VirtualNetworkInventoryItem. 'Cluster'
'Datastore'
'Host'
'ResourcePool'
'VirtualMachine'
'VirtualMachineTemplate'
'VirtualNetwork' (required)
managedResourceId Gets or sets the tracked resource id corresponding to the inventory resource. string
moName Gets or sets the vCenter Managed Object name for the inventory item. string
moRefId Gets or sets the MoRef (Managed Object Reference) ID for the inventory item. string

NetworkInterfaceInventory

Name Description Value

NetworkProfileInventory

Name Description Value
networkInterfaces Gets or sets the list of network interfaces associated with the virtual machine. NetworkInterfaceInventory[]

ResourcePoolInventoryItem

Name Description Value
inventoryType They inventory type. 'ResourcePool' (required)
parent Parent resourcePool inventory resource details. InventoryItemDetails

StorageProfileInventory

Name Description Value
disks Gets or sets the list of virtual disks associated with the virtual machine. VirtualDiskInventory[]

VirtualDiskInventory

Name Description Value
diskName Gets or sets the name of the virtual disk. string

VirtualMachineInventoryItem

Name Description Value
cluster Cluster inventory resource details. InventoryItemDetails
folderPath Gets or sets the folder path of the vm. string
host Host inventory resource details. InventoryItemDetails
instanceUuid Gets or sets the instance uuid of the vm. string
inventoryType They inventory type. 'VirtualMachine' (required)
ipAddresses Gets or sets the nic ip addresses. string[]
networkProfile Network properties. NetworkProfileInventory
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'
resourcePool ResourcePool inventory resource details. InventoryItemDetails
smbiosUuid Gets or sets the SMBIOS UUID of the vm. string
storageProfile Storage properties. StorageProfileInventory

VirtualMachineTemplateInventoryItem

Name Description Value
folderPath Gets or sets the folder path of the template. string
inventoryType They inventory type. 'VirtualMachineTemplate' (required)
memorySizeMB Gets or sets memory size in MBs for the template. int
numCoresPerSocket Gets or sets the number of cores per socket for the template.
Defaults to 1 if unspecified.
int
numCPUs Gets or sets the number of vCPUs for the template. int
osName Gets or sets os name. string
osType Gets or sets the type of the os. 'Linux'
'Other'
'Windows'

VirtualNetworkInventoryItem

Name Description Value
inventoryType They inventory type. 'VirtualNetwork' (required)