vCloud API Spec 0.9: What’s New?

Some of you may have noticed that VMware released vCloud API Spec version 0.9 last week. The 9 page document describes all the functions and corresponding REST syntax of version 0.9. Better than I had expected, it highlighted changes from version 0.8. So if you have read previous version, you can just scan for the changes with keywords: CHANGED, NEW, REMOVED.

The vCloud API includes the following categories of functions.

Lost VMs or Containers? Too Many Consoles? Too Slow GUI? Time to learn how to "Google" and manage your VMware and clouds in a fast and secure HTML5 App.

Basic functions

  1. Inventory Listing: lists the entities like org, vDC, vApp, etc., in the inventory.
  2. Catalog Management:  retrieve, add, remove catalog items.
  3. Upload, Download, and Provisioning: quite some new features related to template management.
  4. vApp Configuration: mostly new with much finer control over configuration.
  5. vApp Operations: power on, off, ect.
  6. Miscellaneous Operations: login, version, task management.

Administrative Extensions

  1. Cloud Administration
  2. Org Administration
  3. vDC Administration
  4. Catalog Administration
  5. User Administration
  6. Group Administration
  7. Role Administration

In most categories, you will find so called CRUD ( Create, Read, Update, Delete) operations. In fact, it’s easier to understand the API if you think of the REST API in the SQL way: the resouce is a table, the CRUD operations are like INSERT, SELECT, UPDATE, DELETE statements.

The API spec itself is not enough for you to get started with programming. You want to read the vCloud API Programming Guide v0.9. The schema files of version 0.9 are however not there yet.

If you have read my blog from the beginning, you may still remember a blog I wrote to make the REST into Object Oriented. In so doing, we can easily map the REST like APIs and programming interfaces in a mechanical way.

This entry was posted in Cloud Computing and tagged , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.


  1. Posted May 12, 2010 at 1:04 pm | Permalink

    Great Post Steve. Thanks for the Sum-Up. The other option is to abandon API. Instead of creating mapping mechanics, why not just CRUD actual objects using a DSL :)

  2. Posted May 13, 2010 at 2:36 am | Permalink

    Using DSL is definitely an option. If I recall correctly, your VQL can only do R out of the CRUD, right? Also, does it support vCloud now? Thanks!


Post a Comment

Your email is never published nor shared. Required fields are marked *


You may use these HTML tags and attributes <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


    My company has created products like vSearch ("Super vCenter"), vijavaNG APIs, EAM APIs, ICE tool. We also help clients with virtualization and cloud computing on customized development, training. Should you, or someone you know, need these products and services, please feel free to contact me: steve __AT__

    Me: Steve Jin, VMware vExpert who authored the VMware VI and vSphere SDK by Prentice Hall, and created the de factor open source vSphere Java API while working at VMware engineering. Companies like Cisco, EMC, NetApp, HP, Dell, VMware, are among the users of the API and other tools I developed for their products, internal IT orchestration, and test automation.