Page tree
Skip to end of metadata
Go to start of metadata

Jade provides the entire Business Logic layer for Flexiant Cloud Orchestrator. Jade provides three APIs:

  • A user API, used by end users for manipulating virtual resources on the platform (available by REST and SOAP);
  • An admin API used by administrators for various administrative functions (available by REST and SOAP); and
  • An open API, available unauthenticated for retrieving objects prior to authentication (available by REST only).

There is also an API for programs developed by the Licensee in Flexiant Development Language.

There are further APIs within the system which the Licensee should not normally use. 

API Endpoints


Each of the APIs is available over SSL using the control panel URL of any billing entity, followed by paths in the format:

 

/[apiprotocol]/[apiname]/[apiversion]

In the above:

  • apiprotocol can take the values soap or rest (though note the open API is only available under REST)
  • apiname can take the values useradmin, or open
  • apiversion can take the either a major API version number, or the value current for the most recent version of the API.

For instance, if the control panel URL of a billing entity was https://cp.example.com/ the current version of the admin API can be accessed by REST at the endpoint https://cp.example.com/rest/admin/current/

Note that any billing entity URL will work for any call, i.e. the same API is reflected multiple times. User authentication takes care of multitenancy of the API.

The remainder of the URL depends on the protocol being used.

For REST, you will also need to append the REST path to the end of the endpoint URL. This varies depending on the call you are making to the API and the resource you are modifying. For example, if you are making a getResource call for a customer resource, you would need to append /resources/customer/[uuid] to the endpoint, where [uuid] is the UUID of the resource to be retrieved, i.e. use https://cp.example.com/rest/admin/current/resources/customer/[uuid]

For SOAP, your soap library will handle the URL building from the WSDL, which is available by appending ?wsdl - in the above example for the current SOAP admin API the WSDL would be https://cp.example.com/soap/admin/current/?wsdl

API Versions

Each of the APIs is versioned. The API version consists of a major version and a minor version. For example, the API version 5.0.20150212183338 consists of major version 5.0 and minor version 20150212183338.
The major version is an API version as used within the endpoint. In FCO 5.0, the following API versions are supported:
  • 5.0 (aliased to current)
  • 4.2

If you wish your code to continue to use the same version API after an upgrade to a major version of FCO beyond 5.0, you should use 5.0 in the endpoint URL, not current.

The minor version is a date string in the format YYYYMMDDhhmmss. API changes within the same major versions are kept to a minimum, but each minor change to the API will result in a new (greater) version number.

The API version is returned in an X-Api-Version HTTP header, and under SOAP also in an apiVersion SOAP header.

 

User API

Jade's user API allows end users of the platform to manipulate their own virtual resources. Authentication is by user and customer, meaning that a user who is so permitted can manipulate resources of different customers using the appropriate authentication credentials.

Administrators can use the user API, authenticating as the administrator but passing the UsernameToken SOAP header (SOAP) or X-AssumeToken HTTP header (REST) set to the authentication username (the login username, a slash, and the customer UUID) of the customer concerned; see Authenticating to the APIs for more details.

Admin API

Jade's admin API provides a means for users with administrative access to perform administrative functions on the platform. Users with administrative access are:

  • Master Billing Entity administrators (administrators of the licensee who can administer all billing entities)
  • Other Billing Entity administrators (administrators of other billing entities, for instance resellers, who can only administer the Billing Entity to which they belong)

Jade provides an interface to allow authenticated administrators to perform administrative functions only within the Billing Entities they are authorised to use. For instance, they can:

  • List, search for, create, delete, or modify customers or users;
  • List transactions performed by a particular customer, or perform those transactions on the customer's behalf; and
  • Create, modify or delete Product Offers within the system.

Jade's admin API does not permit administrators to manipulate the virtual resources of customers directly. In order to manipulate customer resources, administrators should use the User API, authenticating as the administrator but passing the UsernameToken SOAP header (SOAP) or X-AssumeToken HTTP header (REST) set to the authentication username (the login username, a slash, and the customer UUID) of the customer concerned. For more details see Authenticating to the APIs.

 

Open API

Jade's open API provides a means for unauthenticated users to retrieve in a read-only manner certain resources without authentication. For instance, to allow the sign-on screen in Skyline to retrieve login graphics, blobs are retrieved which are marked as public.

Getting Started

There is an outline of the Key Jade Concepts available, and see also Authenticating to the APIs. For the SOAP APIs, see About the SOAP APIs. For the REST APIs, see About the REST APIs.

  • No labels