Introducing the API


download
Note: To use the API you must have LogiQ version 2.4 or later installed.

The API makes no restrictions on the type or location of the external system in relation to the LogiQ instance.
The API is tolerant to connection interruptions and data corruption by using standardized transport mechanisms and a REST transaction methodology.
The API supports multiple modules each of which has multiple operations.

Interface


The API is accessible via an IP connection to the configured GUI port of the LogiQ instance.

The LogiQ administrator can configure the port through the command line configuration utility using the following commands:

# su logiqadmin
# config

Transport


API transactions conform to clear text or SSL encrypted Internet transport standards dependent on the setting of the LogiQ interface:

download

Note: It is recommended to use HTTPS by default to ensure all transactions are encrypted

Note: SSL encryption uses certificates to validate the endpoints of the transaction.
LogiQ is installed by default with a self-signed certificate.

Accessing the API of a LogiQ instance may require the installation of an SSL certificate on the LogiQ instance that is signed by a certificate authority (CA). This certificate verifies the LogiQ instance as genuine to the system creating the API requests.

The LogiQ administrator can upload a new SSL certificate through the LogiQ Console.

download

Note: The SSL Certificate also affects the Console.
Access to the LogiQ Console will also be validated with the same certificate.

API transaction response codes conform to the relevant HTTP/ HTTPS standard.

Format


The following describes the format of the data used to specify an API request and API response.

  • Character Set: UTF-8
  • Content Type: application/x-www-form-urlencoded
  • Encoding: XML

<LogiQ_address> is the hostname(:port) of the LogiQ instance

<XML_request> is a list of XML encoded parameters

A correctly formed API request will return the HTTP response code 200.
An incorrectly formatted API request will return the HTTP response code 204.

Security


API access is secured with user credentials that are configured by the LogiQ administrator through the LogiQ Console.
These credentials have associated access permissions. This can be configured to access all information, domain groups or domains.
This defines the super-set of information that can be requested from the LogiQ instance, which can be further reduced using a defined context.

download

Note: Existing user credentials may be used, it is recommended to create a specific user for API access.

download

Note: LogiQ initially defines the “default” domain group as accessible to all users.

Context


To reduce the super-set of accessible information to a sub-set of required information a context modifier can be defined.
This context restricts the accessible information to the defined information sub-set.

User type /
Information set
AdministratorUserDomain
User
All information*N/AN/A
All domains in domain groupdomain group nameusernameN/A
A single domaindomain namedomain nameusername

Context value for restricting information accessibility

Operation


The API operates using the commands detailed in the command reference.
These provide access to specific module operations. For example Relationship Analytics operations

An API session is created by an API Login request with correct credentials and is destroyed when session activity is not detected for 60 minutes.

The same user credentials may be used to create multiple concurrent sessions.
A maximum of 100 sessions can be active concurrently.
A maximum of 1024 requests can be active within a session.

Once these limits are reached an API request will return the HTTP response code 504.

An API session allows use of API command request and API data request operations.

API command requests use the POST method defined in section 9.5 of RFC 2616.
API data requests use the GET method defined in section 9.2 of RFC 2616.

To perform an API access the following command sequence is followed: