One common piece of feedback that we have heard from customers and partners over the years is how difficult it can be to get started with using VMware's API and SDKs. The biggest challenge is not actually using the API and SDKs, but actually finding out what is available for a particular product or the solution you are trying to develop. The other challenge of course is where to download the API/SDK, language support and their corresponding documentation.
In the past, this information would be scoured throughout VMware's website and Google searches will usually lead folks to the VMware Developer Center. The site has been in need of a major revamp for awhile now and I am glad to see that VMware has taken this feedback very seriously as I have provided similar feedback when I was a customer as well as employee.
I am happy see that we have re-launched the VMware Developer Center which now contains a wealth of useful information that has never been available before! I was one of the lucky few who received early access to the new VMware Developer Center to help provide feedback on how we can better improve our user experience with the site. This will continue to be a work in progress based on on-going feedback from customers and partners.
Here are a few things worth checking out ...
Development & Certification
The first thing I think everyone will just LOVE is that VMware is now listing EVERY single API/SDK that is available which includes public API/SDKs as well as what is known as "Gated API/SDK" that usually are available to partners only. The reason this is a big deal is if you are a new partner, how do you know what is available to you and how can you add value on top of the VMware eco-system? You now can get a list of all VMware API/SDKs under the Developement & Certification section and it provides you with a high level of what each API/SDKs provides. For gated API/SDK, you will see a tiny lock symbol next to it. When you login to MyVMware and you are supposed to have access to these API/SDKs, the icons will be unlocked and you will be able to get more details including downloads and documentation. You can also filter the views by specific API/SDKs as well as scripting/programming language.
vCloud Suite Library
Earlier I mentioned that it was quite difficult for someone to figure out exactly what API/SDKs are available for a particular product, especially within the vCloud Suite. One really neat feature is under the "Library" section which provides you with a high level diagram of the VMware vCloud Suite and it is an interactive diagram which you can hover over and it provides information about each product. If you click on one of the products, it will provide more information on the API/SDKs that can be used to integrate or access that particular product. This is a great way to learn about VMware products from a scripting/programmatic perspective and we also have one for the Horizon Suite.
One other cool page to visit is the "Standards" page which currently just contains the UX design standards for the vSphere Web Client. If you want to learn more about the design principles used to create the vSphere Web Client or looking to build your own vSphere Web Client plugin, you may be interested in this section. I suspect over time we will be publishing more design standards that can be shared with the general community and hopefully useful for our partners and integrators.
Be sure to explore the rest of the site, though this is only the initial release of the VMware Developer Center, if you have any feedback feel free to leave a comment either on my blog or in the VMTN community forums. I know the team responsible for the VMware Developer Center has so much more planned including more sample code for each of our API/SDK as well as more content and interactions from each of the engineering teams. So stay tuned and check back often!
What's about an official Python API?
I found that ESXi installer, esxcli and many of system scripts written on Python, but API still doesn't exists.