7. Orchestration and Extension : 7.1 vCloud API
   
7.1 vCloud API
The vCloud API provides an interface for managing resources in vCloud instances and is the cornerstone of federation and ecosystem support. All current federation tools communicate with the vCloud environment through the vCloud API. It is important that a vCloud environment expose the vCloud API to vCloud consumers.
The vCloud API can be used to facilitate communication to vCloud resources using a user interface other than the vCloud Director web console. For example, provisioning portals communicate with vCloud Director using the vCloud API.
Currently, vCloud Director is the only software package that exposes the vCloud API. In some environments, vCloud Director is behind another portal or in a location that is not accessible to the vCloud consumer. In this case, use an API proxy or relay to expose the vCloud API to the end consumer.
Due to the value of the vCloud API, some environments might want to meter and charge for API usage. VMware also recommends protecting the vCloud API through audit trails and API inspection. In some cases, vCloud providers might want to extend the vCloud API with new features.
To assist with the vCloud API use cases, the vCloud provider might want to implement an API proxy. The vCloud API is a REST-based service that contains XML payloads. For this reason, any suitable XML gateway can be used as a proxy for the vCloud API. Several third-party solutions on the market today excel in XML gateway services. VMware collaborates with some of these vendors to develop joint guidance on how to deploy their solutions in a vCloud Director environment. For the latest information on these efforts and collateral, contact your local VMware vCloud specialist.
For more information about the vCloud API and SDKs, visit the developer communities at http://communities.vmware.com/community/vmtn/developer/forums/vcloudapi.