Symphony REST Tools



Low level tools and examples to use the Symphony REST API. There are language specific bindings for the API in several separate foundation projects. This project is intended to be a complimentary set of tools and utilities for developers to help understand the APIs and to facilitate testing and experimentation. This project is not intended to form an alternative application development platform in its own right.


This project will develop a set of tools and utilities which can exercise REST API endpoints and illustrate how these can be used. These tools may be useful to the developers of language specific binding projects themselves, or to developers using those bindings to see exactly what happens at the wire level with various endpoints.

The existing JCurl utility is used as the network level transport, this project will continue to build on JCurl and not replace or overlap with it.


There is a need for a low level toolkit to a) surface what happens on the wire when various endpoints are called, b) establish whether the REST API is working correctly on a particular pod c) exercise new endpoints as they are released to understand the detail of their capabilities.

Current State

The project currently contains a single command line tool called ProbePod. Given a server host name this program probes the given server in various ways on a number of ports to establish if a Symphony Pod exists on that host and if so what the correct configuration parameters would be to access it via the API.

The tool is capable of authenticating via the API if a client certificate is provided, but even without a certificate can give a reasonably reliable indication of the existence of the Pod and the URLs to be used.

If the probe is successful then the program writes a configuration file containing the URLs needed by the Symphony Java API client in a Java properties file as well as a truststore containing all the certificates which need to be trusted by a client using the API.

Near Term Goals

Incremental further development of ProbePod and snippets exercising individual REST endpoints.

Future Goals

A GUI based API explorer which allows the user to call individual endpoints and display code snippets to make the same call in various languages and against various language binding APIs.

Issues / Risks


Code and Core Developers

Bruce Skingle (Symphony LLC)

Current SCM:

Code Transfer Approach:

Transfer ownership of existing repo

Desired GIT Repository Name(s)



Bruce Skingle, bruceskingle, Symphony LLC
Mike Harmon, mike-symphony, Symphony LLC


Bruce Skingle, bruceskingle, Symphony LLC
Mike Harmon, mike-symphony, Symphony LLC

Do you require access to the Open Developer Platform



Maurizio Pillitu


Bruce Skingle

Due date