5.1

Table Of Contents
Recompose a vApp to Add or Remove Virtual Machines
The vCloud API supports recomposition of a vApp to add or remove virtual machines. To recompose a vApp,
make a recomposeVApp request, supplying a RecomposeVAppParams element as the request body.
The RecomposeVAppParams element allows an arbitrary number of DeleteItem elements, but is otherwise
identical to ComposeVAppParams. This means that in addition to adding or removing virtual machines, a
recomposeVApp request can also change the name and description of the vApp, and can supply new
InstantiationParams to change various sections of the composed vApp or any of the added virtual machines.
Unlike a composeVapp request, which operates on a vDC and creates a new vApp, a recomposeVapp request
operates on (and modifies) an existing vApp.
Prerequisites
Verify that you are logged in to the vCloud API as a system administrator or member of an organization in
the cloud.
Procedure
1 Find the recomposeVApp link in the target vApp.
The XML representation of a vApp contains a recomposeVapp link, which has the following form:
<Link
rel="recompose"
type="application/vnd.vmware.vcloud.recomposeVAppParams+xml"
href="https://vcloud.example.com/api/vdc/5/action/recomposeVApp" />
2 Create a RecomposeVappParams element that specifies the details of the recomposition.
See “Example: Recompose a vApp,” on page 90.
3 POST the RecomposeVappParams element to the recomposeVapp link of the target vApp.
Example: Recompose a vApp
This example uses the recomposeVApp operation to modify this vApp, which contains three virtual machines.
Only a few of the elements in the vApp appear here.
<VApp
name="Example Corp’s CRM Appliance"
type="application/vnd.vmware.vcloud.vApp+xml"
status="8"
href="https://vcloud.example.com/api/vApp/vapp-33" ...>
<Link
rel="up"
type="application/vnd.vmware.vcloud.vdc+xml"
href="https://vcloud.example.com/api/vdc/5"/>
...
<Children>
<Vm
status="8"
name="CRM-DB"
href="https://vcloud.example.com/api/vApp/vm-7" ...>
...
</Vm>
<Vm
status="8"
vCloud API Programming Guide
90 VMware, Inc.