The vCloud Director API for NSX is a proxy API that enables vCloud API clients to make requests to the NSX API.
Use this document as a supplement to the NSX vSphere API Guide (NSX version 6.2 or later). This document lists the subset of NSX API requests supported by the vCloud Director API for NSX and provides information about differences between those requests as they are described in the NSX API documentation and how you must make them when using the vCloud Director API for NSX.
The vCloud Director API for NSX supports a subset of the operations and objects defined in the NSX vSphere API Guide. The API supports NSX 6.2, 6.3, and 6.4. You can download the NSX vSphere API Guide from https://pubs.vmware.com/NSX-62/topic/com.vmware.ICbase/PDF/nsx_62_api.pdf (NSX 6.2), https://pubs.vmware.com/nsx-63/topic/com.vmware.ICbase/PDF/nsx_63_api.pdf (NSX 6.3), or https://docs.vmware.com/en/VMware-NSX-for-vSphere/6.4/nsx_64_api.pdf (NSX 6.4). Requests listed in this document, along with related examples documented in the NSX vSphere API Guide, can be used by callers of the vCloud Director API for NSX with a few modifications and some additional constraints.
The vCloud Director API for NSX is not part of the vCloud API. It uses a proxy facility to allow clients that have authenticated to the vCloud API to make NSX API requests through the vCloud Director secure public URL with a network suffix. Examples in this document represent this URL as https://vcloud.example.com/network.
The cross-virtual data center networking feature is available via the vCloud OpenAPI. For information about vCloud OpenAPI, see Getting Started with vCloud OpenAPI at https://code.vmware.com.
The NSX API is designed to address NSX objects in a global scope like that of a VMware® vCenter™ datacenter. The NSX Proxy API is designed to address NSX objects within the scope of a vCloud Director tenant organization.
Where the NSX API uses internal edge identifiers such as edge-1 (typically shown as edgeId in the NSX vSphere API Guide) to identify an edge, the vCloud Director API for NSX uses the identifier that vCloud Director assigns to the edge. This is a unique identifier in the form of a UUID, as defined by RFC 4122. Use of this identifier allows the API to restrict access to an edge to members of the organization that owns the edge. Organization members' access to an edge is also governed by their role in the organization and the rights associated with that role. The vCloud Director API for NSX uses this edge UUID only to identify the edge, locate the NSX Manager responsible for the edge, and retrieve its internal NSX edge id, which it uses in subsequent NSX API operations on the edge.
Operations on other NSX objects such as certificates and grouping objects typically require a vCloud Director organization or VDC UUID in the request to limit access to tenants with rights to the vCloud Director object.
vCloud Director system administrators can view or update all edges in the system.
HTTP communications between a vCloud API client and server are secured with SSL. API clients must also complete a login request to receive an authorization token that must be included in all subsequent requests.
The following HTTP headers are typically included in requests: