My employer was discussing the installation of vCloud Director for years now. After the decision was made, I finally got the chance to play around with the installation. So, I could start my journey of exploring the functionality of this product.
how to access the API
I’m a PowerShell guy. Therefore, I updated my powercli modules to the latest version and start to explore the functions they gave me. I soon realized that they are only a subset of the functionality of the API. (For example: One of the first things I searched was to create an Organization VDC template. Till now, I did not found a powercli command to accomplish this.)
Because I got some experience with PowerShell and REST APIs, I started to search a way to access the API directly.
My search for documentation of the vCloud Director API led me soon to this page:
Unfortunately, I have really great problems to understand it. Since I’m a PowerShell guy, I’m not really familiar with REST APIs. I used them of course in the past for products like checkmk or Zerto. But the documentation and examples for that products I found on the web were quite better to understand for me. What I really missed here are some simple examples how to accomplish some basic task.
I tried it anyways, but I couldn’t even get a proper logon to work.
What I found while searching for PowerShell examples were some scripts showing me a combined approach. Using PowerCli as much as possible and dive into the underlying REST API objects if necessary.
For example, I found no way to add a user to an organization. I only found the Get-CIUser commandlet (https://code.vmware.com/docs/11794/cmdlet-reference/doc/Get-CIUser.html) but there is no New-CIUser.
My search discovered that I can use a method of the organization object I got with the Get-Org commandlet to create a user for that OrgVDC. (I will later describe the details.)
I began to understand that PowerCli is not limited to the given commandlets. It rather offers the whole spectrum of the API.
With this in mind, I started my journey using PowerCli as far as possible and dive into the REST API sub-objects whenever necessary.
Next article in this series: