5.5

Table Of Contents
2 Undeploy the vApp, and specify that it should also be powered off.
Make a POST request to the vApp action/undeploy link, which has the following form:
<Link
rel="undeploy"
href="https://vcloud.example.com/api/vApp/vapp-7/action/undeploy"/>
In the request body, specify that the undeployment include powering off the vApp. See
“Example: Undeploy, Power Off, and Delete a vApp,” on page 39.
3 Retrieve the XML representation of the vApp again.
After it is powered off and undeployed, the vApp includes a rel="remove" link of the following form:
<Link
rel="remove"
href="https://vcloud.example.com/api/vApp/vapp-7"/>
4 Remove the vApp.
Make a DELETE request to the vApp's rel="remove" link, as shown in the request portion of
“Example: Undeploy, Power Off, and Delete a vApp,” on page 39.
The server starts a task to manage the events that lead up to the removal of the vApp, and returns a Task
element that you can use to track the progress of the task.
Example: Undeploy, Power Off, and Delete a vApp
You can use the undeploy request body, an UndeployVAppParams element, to specify an UndeployPowerAction
element. This example specifies an UndeployPowerAction of powerOff.
NOTE powerOff is the default UndeployPowerAction. It appears here for clarity.
Request:
POST https://vcloud.example.com/api/vApp/vapp-7/action/undeploy
Content-Type: application/vnd.vmware.vcloud.undeployVAppParams+xml
...
<?xml version="1.0" encoding="UTF-8"?>
<UndeployVAppParams
xmlns="http://www.vmware.com/vcloud/v1.5">
<UndeployPowerAction>powerOff</UndeployPowerAction>
</UndeployVAppParams>
Response:
202 Accepted
...
<Task
xmlns="http://www.vmware.com/vcloud/v1.5"
...
operation="Undeploying Virtual Application Linux FTP server (7)"
... >
</Task>
After the vApp is undeployed and powered off, its representation includes a link where rel="remove". Make
a DELETE request to this link to remove the vApp.
Chapter 2 Hello vCloud: A Simplified RESTful Workflow
VMware, Inc. 39