To compose a vApp, use the following request:

POST /vapps/compose.xml
POST /vapps/compose.json

XML Request example:

curl -i -X POST http://onapp.test/vapps/compose.xml -H 'Accept: application/xml' -H 'Content-type: application/xml' -u user:userpass -d '<vapp><name>name</name><vdc_id>9</vdc_id><vapp_template_ids>2</vapp_template_ids><vapp_ids>3</vapp_ids></vapp>'
JSON Request example:


curl -i -X POST http://onapp.test/vapps/compose.json -H 'Accept: application/json' -H 'Content-type: application/json' -u user:userpass -d '{"vapp":{"name":"name","vdc_id":"9", "vapp_template_ids": "[1,2]", "vapp_ids":"[1,2]"}}'



name - the vApp label

vdc_id -  the virtual data center

vapp_template_id - one or several vApp templates. All VSs, built on those templates, will be copied to your new vApp.

vapp_ids - one or several vApps. All VSs within selected vApps will be copied to your new vApp.


blank_vapp - put 1 to create a blank vApp.