A virtual machine is represented by a Vm element. Each modifiable section of a Vm element includes a Link element whose rel attribute has the value edit. You cannot modify sections that do not contain this Link element.

Any ovf:SectionType element can include an arbitrary number of Link elements. Sections that you can modify include a Link element where rel="edit". To modify one of these sections, retrieve it by making a GET request to the URL in the section's href attribute. Then make a PUT request to the href attribute value of Link where rel="edit" to update the section with your modifications.

Verify that you are logged in to the vCloud API as a system administrator or member of an organization in the cloud.

1

Retrieve the XML representation of the vApp that contains the virtual machine to reconfigure.

Use a GET request as shown in Example: Configuration Links in a vApp.

2

In the VApp element's Children element, find the Vm element that represents the virtual machine and retrieve it.

3

Examine the response to find the reconfigureVm link and edit links to modifiable sections.

The response portion of Example: Configuration Links in a Vm Element shows the reconfigureVm link and links for each of the modifiable sections of the Vm. You cannot modify sections that do not contain a link where rel="edit".

This example retrieves a Vm element shown in Example: Configuration Links in a vApp. It expands that element to show its configuration links. It also shows the entire NetworkConnectionSection of that Vm, and additional information that is referenced in other examples. You cannot modify sections that do not have a Link where rel="edit", so they do not appear in this example. Modifiable sections of the parent vApp are shown in Example: Configuration Links in a vApp.

Request:

GET https://vcloud.example.com/api/vApp/vm-4

Response:

200 OK
Content-Type: application/vnd.vmware.vcloud.vm+xml
<Vm
   xmlns="http://www.vmware.com/vcloud/v1.5"
   xmlns:ovf="http://schemas.dmtf.org/ovf/envelope/1"
   status="8"
   name="ubuntu10-x86"
   href="https://vcloud.example.com/api/vApp/vm-4">
   ...
   <Link
      rel="reconfigureVm"
      type="application/vnd.vmware.vcloud.vm+xml"
      name="vm1"
      href="https://vcloud.example.com/api/vApp/vm-4/action/reconfigureVm" />
   ...
   <ovf:VirtualHardwareSection>
     <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.virtualHardwareSection+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/" />
      <Link
         rel="down"
         type="application/vnd.vmware.vcloud.rasdItem+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/cpu" />
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.rasdItem+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/cpu" />
      <Link
         rel="down"
         type="application/vnd.vmware.vcloud.rasdItem+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/memory" />
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.rasdItem+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/memory" />
      <Link
         rel="down"
         type="application/vnd.vmware.vcloud.rasdItemsList+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/disks" />
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.rasdItemsList+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/disks" />
      <Link
         rel="down"
         type="application/vnd.vmware.vcloud.rasdItemsList+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/media" />
      <Link
         rel="down"
         type="application/vnd.vmware.vcloud.rasdItemsList+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/networkCards" />
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.rasdItemsList+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/virtualHardwareSection/networkCards" />
   </ovf:VirtualHardwareSection>
   <ovf:OperatingSystemSection
      href="https://vcloud.example.com/api/vApp/vm-4/operatingSystemSection/" ... >
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.operatingSystemSection+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/operatingSystemSection/" />
      ...
   </ovf:OperatingSystemSection>
   <NetworkConnectionSection>
      <Link
         rel="edit"
         type="application/vnd.vmware.vcloud.networkConnectionSection+xml"
         href="https://vcloud.example.com/api/vApp/vm-4/networkConnectionSection/" />
      <ovf:Info>Specifies the available VM network connections</ovf:Info>
      <PrimaryNetworkConnectionIndex>0</PrimaryNetworkConnectionIndex>
      <NetworkConnection
         network="vAppNetwork">
         <NetworkConnectionIndex>0</NetworkConnectionIndex>
         <IpAddress>10.147.122.134</IpAddress>
         <IsConnected>false</IsConnected>
         <MACAddress>00:50:56:01:01:49</MACAddress>
         <IpAddressAllocationMode>POOL</IpAddressAllocationMode>
      </NetworkConnection>
   </NetworkConnectionSection>
   <GuestCustomizationSection>
      <Link
         rel="edit"
         href="https://vcloud.example.com/api/vApp/vm-4/guestCustomizationSection+xml/">
      </Link>
      ...
   </GuestCustomizationSection>
   ...
</Vm>