5.1

Table Of Contents
3 Retrieve the XML representation of the vApp again.
Now that it has been 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
The undeploy request body, an UndeployVAppParams element, allows you to specify an UndeployPowerAction.
This example specifies an UndeployPowerAction of powerOff. Although powerOff is the default
UndeployPowerAction, we show it 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 has been undeployed and powered off, its representation includes a link where
rel="remove". Make a DELETE request to this link to remove the vApp.
Request:
DELETE https://vcloud.example.com/api/vApp/vapp-7
Response:
202 Accepted
...
<Task
...
operation="Deleting Virtual Application Linux FTP server (7)"
expiryTime="2010-09-23T08:00:55.402-07:00"
... >
</Task>
Chapter 2 Hello vCloud: A Simplified RESTful Workflow
VMware, Inc. 39