I was having problems uploading files to vCloud Director. I knew this was some kind of NAT problem because our service is running behind a firewall, but we had all the necessary ports open. Then I found this link:
You try to upload your files (.iso and .ovf images for either a vApp or media and receive an error message like:
Error: Transferring files
On page 98 of the vdc_15_admin_guide.pdfÂ you will find a paragraph pointing out that you need to fill in the API field for uploads to work.
During the initial configuration of each cloud cell, you specified an HTTP service IP address. By default, vCloud Director uses that address in the XML responses from the REST API and as the upload target for the transfer service (for uploading vApp templates and media). To use a different address, specify a public REST API base URL.
I missed this step in my setup. I entered https://<ip>/ and now it works :)