5.5

Table Of Contents
</NetworkConnectionSection>
</InstantiationParams>
</SourcedItem>
<SourcedItem>
<Source
href="https://vcloud.example.com/api/vAppTemplate/vappTemplate-114" />
</SourcedItem>
<SourcedItem>
<Source
href="https://vcloud.example.com/api/vAppTemplate/vappTemplate-190" />
</SourcedItem>
<AllEULAsAccepted>true</AllEULAsAccepted>
</ComposeVAppParams>
The response is a sparsely populated VApp element in the target VDC. When the Task embedded in the
response is complete, the vApp has been composed.
Response:
201 Created
Content-Type: application/vnd.vmware.vcloud.vApp+xml
...
<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"/>
...
<Description>Composed CRM Appliance</Description>
...
<Tasks>
<Task operation="Composing Virtual Application Example Corp’s CRM Appliance (33)" ...>
...
</Task>
</Tasks>
</VApp>
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.
Chapter 5 Deploying and Operating vApps
VMware, Inc. 103