1. Types
2. vcenter
3. vm
4. hardware
5. disk

## vcenter vm hardware disk: create spec

The `create_spec` structure provides a specification for the configuration of a newly-created virtual disk.

### Representations:

- JSON
- XML

{
"backing": {
"type": "VMDK_FILE",
"vmdk_file": "string"
},
"ide": {
"master": true,
"primary": true
},
"new_vmdk": {
"capacity": 1,
"name": "string"
},
"sata": {
"bus": 1,
"unit": 1
},
"scsi": {
"bus": 1,
"unit": 1
},
"type": "IDE"
}
<?xml version="1.0" ?>
<ns0:CreateSpec xmlns:ns0="http://vmware.com/vcenter/vm/hardware/disk" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<scsi>
<unit>1</unit>
<bus>1</bus>
</scsi>
<ide>
<primary>true</primary>
<master>true</master>
</ide>
<sata>
<unit>1</unit>
<bus>1</bus>
</sata>
<new_vmdk>
<name>string</name>
<capacity>1</capacity>
</new_vmdk>
<type>IDE</type>
<backing>
<vmdk_file>string</vmdk_file>
<type>VMDK_FILE</type>
</backing>
</ns0:CreateSpec>

#### Attributes:

Name | Type | Description
--- | --- | ---
Optional
type | string | Type of host bus adapter to which the device should be attached. Optional. If unset, guest-specific default values will be used.
ide | ide_address_spec | Address for attaching the device to a virtual IDE adapter. Optional. It is only relevant when type has value IDE. If unset, the server will choose an available address; if none is available, the request will fail.
scsi | scsi_address_spec | Address for attaching the device to a virtual SCSI adapter. Optional. It is only relevant when type has value SCSI. If unset, the server will choose an available address; if none is available, the request will fail.
sata | sata_address_spec | Address for attaching the device to a virtual SATA adapter. Optional. It is only relevant when type has value SATA. If unset, the server will choose an available address; if none is available, the request will fail.
backing | backing_spec | Existing physical resource backing for the virtual disk. Exactly one of `backing` or `new_vmdk` must be specified. Optional. If unset, the virtual disk will not be connected to an existing backing.
new_vmdk | vmdk_create_spec | Specification for creating a new VMDK backing for the virtual disk. Exactly one of `backing` or `new_vmdk` must be specified. Optional. If unset, a new VMDK backing will not be created.