Dec. 18, 2015
The Citrix® Command Center NITRO protocol allows you to configure the Command Center server programmatically.
NITRO exposes its functionality through Representational State Transfer (REST) interfaces. Therefore, NITRO applications can be developed in any programming language. Additionally, for applications that must be developed in Java or .NET, NITRO APIs are exposed through Java and .NET libraries that are packaged as separate Software Development Kits (SDKs).
The NITRO package is available as a tar file on the Downloads page of the Command Center server GUI. You must download and un-tar the file to a folder on your local system. This folder is referred to as <NITRO_SDK_HOME> in this documentation.
The folder contains the NITRO libraries (JARs for Java and DLLs for .NET) in the lib subfolder. The libraries must be added to the client application's classpath to access NITRO functionality. The <NITRO_SDK_HOME> folder also provides samples and documentation that can help you understand the NITRO SDK.
The NITRO infrastructure consists of a client application and the NITRO Web service running on a Command Center server. The communication between the client application and the NITRO web service is based on REST architecture using HTTP or HTTPS.
As shown in the above figure, a NITRO request is executed as follows:
To minimize network traffic, you retrieve the whole state of a resource from the server, make modifications to the state of the resource locally, and then upload it back to the server in one network transaction.
NITRO APIs are synchronous in nature. This means that the client application waits for a response from the NITRO web service before executing another NITRO API.