vSphere Web Services (VIM) API

The vSphere Web Services (VIM) API gives programmatic access to persistent server-side objects that support robust, fault-tolerant virtualized applications comprising compute, networking, and storage resources.

The VIM API is a mature and comprehensive management API. The API works against both ESXi and vCenter Server systems, providing access to a hierarchy of managed objects that you use to configure, monitor, and manage datacenter resources.

As a Web Services SDK, the SDK is language neutral. The SDK includes stubs and examples for Java and a comprehensive documentation set including an API Reference generated from the API definitions. You can use the WSDL in the SDK to build other language bindings.

The VIM API also provides a JSON protocol that can be used from a REST API client. All the functions of the SOAP protocol are available with the JSON protocol.

The vSphere Web Services API includes these core features:
  • Data center inventory management, using a hierarchy of folders and resource objects
  • A powerful server-side data retrieval feature, the Property Collector
  • Host system configuration and management
  • Datastore configuration and management
  • Network configuration and management
  • Virtual machine configuration and management, including guest OS operations
  • Virtual machine encryption
  • Cluster and resource pool configuration and management
  • Events, Alarms, and Tasks management

The Web Services API uses a SOAP-XML RPC protocol. It is bundled in the vSphere Management SDK. The Management SDK provides RPC stubs for clients with Java language bindings.

The Web Services server endpoint is
https://{domain}/sdk
The VIM JSON protocol service endpoint is
http://{domain}/sdk/vim25/8.0.1.0
For more information about using the VIM API, see the following documentation:
  • vSphere Web Services SDK Developer Setup Guide (8.0)
  • vSphere Web Services SDK Programming Guide 8.0
  • vSphere Web Services API 8.0