To create an independent disk in an organization VDC, POST a DiskCreateParams element to the VDC's disk link.

To create an independent disk, you must specify its name and size. You can optionally include a description, and specify a storage profile to be used by the disk. After you have created the disk, you can modify its name, description, storage profile, and other propeties.

The owner of a disk is initially the user who created it. To change the owner, see View or Change the Owner of an Object.

Verify that you are logged in to the vCloud API as a user with the vApp Author role.

1

Choose an organization VDC to contain the disk.

2

Create a DiskCreateParams element.

You must specify the size (in bytes) and name of the independent disk. See the request portion of Example: Create an Independent Disk.

3

POST the DiskCreateParams element you created in Step 2 to the URL for adding disks to the organization VDC.

See the request portion of Example: Create an Independent Disk.

This example adds an independent disk to the organization VDC created in Add a VDC to an Organization. Because optional attributes busType and busSubType are omitted, a SCSI disk is created.

Request:

POST https://vcloud.example.com/api/vdc/44/disk
Content-Type: application/vnd.vmware.vcloud.diskCreateParams+xml
...
<?xml version="1.0" encoding="UTF-8"?>
<DiskCreateParams
   xmlns="http://www.vmware.com/vcloud/v1.5">
   <Disk
      name="500GB-SCSI"
      size="500000000000">
      <Description>500 GB SCSI Disk</Description>
   </Disk>
</DiskCreateParams>

The response, a subset of which appears here, is a Disk element that contains an embedded Task that tracks creation of the disk. Because the request did not specify a storage profile for the disk, it uses the default storage profile for the containing organization VDC. The response also includes Link elements that enable access to disk operations and metadata. While the disk is under construction, its status remains 0.

Response:

200 OK
Content-Type: application/vnd.vmware.vcloud.disk+xml
...
<?xml version="1.0" encoding="UTF-8"?>
<Disk
   xmlns="http://www.vmware.com/vcloud/v1.5"
   size="500000000000"
   status="0"
   name="500GB-SCSI"
   id="urn:vcloud:disk:128"
   type="application/vnd.vmware.vcloud.disk+xml"
   href="https://vcloud.example.com/api/disk/128"
   ... >
   <Link
      rel="up"
      type="application/vnd.vmware.vcloud.vdc+xml"
      href="https://vcloud.example.com/api/vdc/44" />
   <Link
      rel="remove"
      href="https://vcloud.example.com/api/disk/128" />
   <Link
      rel="edit"
      type="application/vnd.vmware.vcloud.disk+xml"
      href="https://vcloud.example.com/api/disk/128" />
   <Link
      rel="down"
      type="application/vnd.vmware.vcloud.owner+xml"
      href="https://vcloud.example.com/api/disk/128/owner" />
   <Link
      rel="down"
      type="application/vnd.vmware.vcloud.vms+xml"
      href="https://vcloud.example.com/api/disk/128/attachedVms" />
   <Link
      rel="down"
      type="application/vnd.vmware.vcloud.metadata+xml"
      href="https://vcloud.example.com/api/disk/128/metadata" />
   <Description>Independent Disk</Description>
   <Tasks>
      <Task
         ...
         operationName="vdcCreateDisk"
         ... >
         ...
      </Task>
   </Tasks>
   <StorageProfile
      type="application/vnd.vmware.vcloud.vdcStorageProfile+xml"
      name="bronze"
      href="https://vcloud/example.com/api/vdcStorageProfile/128" />
   <Owner
      type="application/vnd.vmware.vcloud.owner+xml">
      <User
         type="application/vnd.vmware.admin.user+xml"
         href="https://vcloud.example.com/api/admin/user/120" />
   </Owner>
</Disk>