TIBCO Spotfire Statistics Services URL API

Users can send R expressions or functions (from TIBCO® Enterprise Runtime for R (TERR™) or open-source R) and manage jobs stored in TIBCO Spotfire® Statistics Services by way of HTTP URL requests.

Note: Open-source R is available under separate open source software license terms and is not part of TIBCO Spotfire Statistics Services. As such, open-source R is not within the scope of your license for TIBCO Spotfire Statistics Services. Open-source R is not supported, maintained, or warranted in any way by TIBCO Software Inc. Download and use of open-source R is solely at your own discretion and subject to the free open source license terms applicable to open-source R.
Attention: TIBCO Spotfire reserves this API for base use by the higher-level Java and C# APIs, and it is subject to change. Use this API only to check the state of the server. To develop a Web application that sends jobs to the server, receives results, and manages jobs and WebDAV content, use either the Java or C# API. See the server's landing page (http://servername:portnumber/service_name) for more information about these APIs. You can get the URL from your server administrator.
Important: By default, certain Spotfire Statistics Services capabilities are disabled. If you have functions that you created or used in a previous release, you might find that they no longer work as expected. Additionally, any expression that TERR determines to be potentially malicious is disabled. Below is a non-exhaustive example of some of the capabilities disabled by default in Spotfire Statistics Services.
  • Sending TERR expressions that perform I/O to the file system or the internet.
  • Spawning new OS processes by calling the system function.
  • Calling into Java using the terrJava package, or using functions in the parallel package.
  • Loading new packages, except for those included with TERR.
  • Calling .C or .Fortran.
  • Send expressions to the server using the Expression Service.
  • Calling ExtendedServerInfo or sending other expressions that read from, or write to, your server.
  • Sending potentially malicious expressions to the server using the URL API.
Additionally, the Function Service can execute only one function, which allows a connection from Spotfire. If you have functions that you want to have enabled on Spotfire Statistics Services, or if you have additional questions about the configuration settings that control these capabilities, see your server administrator.

An HTTP URL request returns an SPXML string containing the results of the expression or function (or, in the case of an asynchronous request, it contains the job Id and job status). See SPXML output string for a description of the results.

The server receives and returns strings encoded in the format that the SPXML library can handle. They can be either simple SPXML strings or SPXML-encoded objects, which can be long and complex. For more information about SPXML, see the section "Interpret and use returned objects" in the TIBCO Spotfire® Statistics Services User's Guide (located at http://docs.tibco.com).

You can use the URL API to verify that the server is healthy by executing simple expressions using either function or expression services, and then verifying that the server has processed the expressions using the administration service.

By default, the server port is set to 8080, and the server WebApp name is set to SplusServer. Where appropriate, examples in this documentation show those default settings, or refer to the server name as the placeholder server_name. The server administrator can set both the port number and the WebApp name to different values. See your serve administrator if you have questions about these values.

The following table lists the service URL APIs. Click an API name to display more information and a list of functions for that API.

Service API Description
Administration Service API Defines the URL Application Program Interface (API) for Spotfire Statistics Services administration tasks. These tasks might be restricted to login credentials; however, this API contains useful functions that you can apply to results obtained by calls using the Expression Service API or the Function service API.
Expression Service API Defines the URL Expression Service Application Program Interface (API) forSpotfire Statistics Services. The Expression Service provides functions to send expressions directly to the R engine and retrieve the resulting SPXML string.
Function Service API Defines the URL Function Service Application Program Interface (API) for Spotfire Statistics Services. The Function Service provides the functions to send TERR or open-source R functions (which are in packages or libraries on the server) to the engine and retrieve the resulting SPXML string.
Public Service API Provides functions for discovering information about the server.

Service versioning

As of Spotfire Statistics Services version 3.1, all services exposed by Spotfire Statistics Services include the actual version as part of the URL used to access them. To get the current server version, call the public ServerVersion service. The current version of the API is v8. You must include this value in any URL referring to non-public services (expression, function, and administration).