vCloud API Programming Guide
48 VMware, Inc.
Enable a vApp Template for Download
AvApptemplatemustbeexplicitlyenabledfordownloadbyanadministratororprivilegeduser.
Example 4‐10showssucharequest.TheresponseisaTaskelement.Thetimerequiredforthetasktocomplete
isdeterminedbythenumberandsizeofthefilescomprisingthetemplate.
Example 4-10. Enable a vApp Template for Download
Request:
POST http://vcloud.example.com/api/v1.0/vAppTemplate/vappTemplate-268/action/enableDownload
Response:
202 Accepted
Content-Type: application/vnd.vmware.vcloud.task+xml
...
<Task ... operation="Enabling download of Virtual Application Template Ubuntu Template (268)" ...
>
...
</Task>
WhentheenableDownloadtaskcompletes,thetemplate’sfilesareavailablefromthevCloudtransferservice,
andthevAppTemplateincludesaLinkelementthatcontainsaURLfromwhichthetemplate’sOVFdescriptor
canbedownloaded,asshowninExample 4‐11.
Example 4-11. vApp Template with DownloadURL for OVF Descriptor
Request:
GET http://vcloud.example.com/api/vAppTemplate/vappTemplate-268
Response:
200 OK
Content-Type: application/vnd.vmware.vcloud.vAppTemplate+xml
...
<VAppTemplate ovfDescriptorUploaded="true" status="8" name="Ubuntu Template"
type="application/vnd.vmware.vcloud.vAppTemplate+xml"
href="http://vcloud.example.com/api/v1.0/vAppTemplate/vappTemplate-268" ...>
...
<Link type="text/xml" rel="download:default"
href="http://vcloud.example.com/transfer/.../descriptor.ovf"/>
...
</VAppTemplate>
Theclientusesthisdownload:defaultURLinaGETrequestthatdownloadstheOVFdescriptor(asshown
inExample 4‐12),thenexaminesthecontentsofthedescriptortodiscoverthehrefvaluesfortheremaining
filesinthetemplate’sReferencescontainer.
Example 4-12. Downloading the OVF Descriptor
Request:
GET http://vcloud.example.com/transfer/..../descriptor.ovf
Response:
200 OK
...
<Envelope ...>
<References>
<File ovf:href="disk0.vmdk" ovf:id="file1" ovf:size="1950489088"/>
</References>
<DiskSection>
<Info>Virtual disk information</Info>