If you think vSphere Client exposes everything, you are wrong. The vSphere APIs actually expose more features than the vSphere Client, which is a great product. This is one reason why system administrators should learn vSphere APIs.
While writing my book, for example, I noticed that vSphere APIs actually allow you to change guest OS screen size with a simple call setScreenResolution(int width, int height).
Bothered by SLOW Web UI to manage vSphere? Want to manage ALL your VMware vCenters, AWS, Azure, Openstack, container behind a SINGLE pane of glass? Want to search, analyze, report, visualize VMs, hosts, networks, datastores, events as easily as Google the Web? Find out more about vSearch 3.0: the search engine for all your private and public clouds.
Given the time pressure, I didn’t summarize these API only features at that time. To be honest, even if I tried, there would be a big chance that I had missed quite some due to the size of vSphere APIs.
Days ago when reading the vSphere Web Service SDK Programming Guide, I found yet another good sample. On the page 116, it says:
Linked children gives better flexibility. In particular, you can create virtual applications that span clusters. The vSphere Client does not support adding or removing links, though it does show links.
To give you a little context, the linked children of a virtual application are like the linked files in Linux or shortcut files in Windows. You can use updateLinkedChildren() to change them.
I think you may also know more such features that are exposed only via APIs. Please feel free to add them in the comments.