XenServer SDK Overview

SDK Overview

XenServer can be programatically managed using the XenAPI or XAPI. XAPI is an open source sub-project of the Xen Project. XAPI is an XML-RPC based API, providing programmatic access to the extensive set of XenServer management features. The XenServer API can be called from a remote system as well as local to the XenServer host. Remote calls are generally made securely over HTTPS, using port 443.

There are five SDKs available, one for each of C, C#, Java, PowerShell, and Python. Prior to XenServer 6.1, these SDKs were available under a LGPL/GPL license model, but the current SDKs use a BSD license. All SDKs are backwards compatible to XenServer 4.0, but it is always preferable to use the most recent SDK. To ensure a graceful fallback, client programs are expected to call host.software_version["product_version"] when appropriate.

XenServer API References

Download SDK Components

XenServer Plugin Development

The XenServer Transfer VM is used to import and export virtual disk images.

Extending XenCenter

In addition to APIs for XenServer, the XenCenter code is also available and XenCenter is extensible via the XenCenter Plugin model.

Code Examples

Further Resources

XenServer SDK Forum (Citrix.com)

Development Tips

Feedback on these pages:

If you have found an error, or think some of the pages in this area need clarifying/augmenting; or you think there are application development tasks we should describe in new how-to-guides; or you have guides you'd like to suggest we include or link to please do comment on our feedback thread:

XenServer API - SDK Developer Feedback Thread on the Citrix Forums



About XenServer

XenServer is the leading open source virtualization platform, powered by the Xen Project hypervisor and the XAPI toolstack. It is used in the world's largest clouds and enterprises.
Technical support for XenServer is available from Citrix.