This section describes how you can use the tools included in the Integration Service and your own tools to create your own integration applications, steps, and configurations that you can use with the Integration Service.
This section covers the following topics:
What is the Integration Service?
The Integration Service enables intelligent, bi-directional communication between the ScienceLogic data platform and external data platforms to promote a unified management ecosystem. The Integration Service allows users to translate and share data between SL1 and other platforms without the need for programming knowledge. The Integration Service is designed to provide high availability and scalability.
The following image shows an example of an integration application and its steps, along with the Steps Registry pane on the left, in the Integration Service user interface:
The key elements of the Integration Service user interface include the following:
Steps. A step is a generic Python class that performs a single action. Steps can accept zero or many input parameters or data from previous steps, and steps can specify output to be used by other steps. The input parameters are configurable variables and values used during execution. Steps can be re-used in multiple integrations applications. When these steps are combined in an integration application, they provide a workflow that satisfies a business requirement. All Python step code should be Python 3.7 or later. In the image above, the steps display as part of the flowchart in the main viewing pane as well as the Steps Registry pane.
Integration Applications. An integration application is a JSON object that includes all the information required for executing an integration on the Integration Service platform. An integration application combines a set of steps that execute a workflow. The input parameters for each step are also defined in the application and can be provided either directly in the step or in the parent integration application. In the image above, the group of connected steps in the large pane make up the "Sync Organizations from SL1 to ServiceNow Companies" integration application. You can access all integration applications on the Integrations page ().
Configuration Objects. A configuration object is a stand-alone JSON file that contains a set of configuration variables used as input for an application. Configurations can include variables like hostname, user name, password, or other credential information. Configuration objects allow the same application to be deployed in multiple Integration Service instances, with different configurations. Click the Configure button from an integration application in the Integration Service user interface to access the configuration object for that integration application. You can access all configuration objects on the Configurations page ().
Synchronization PowerPack. A Synchronization PowerPack (also called a SyncPack) contains all the code and logic needed to perform integrations on the Integration Service platform. You can access the latest steps, integration applications, and configurations for the Integration Service or a third-party integration (such as ServiceNow) by downloading the most recent Synchronization PowerPack for that integration from ScienceLogic. You can access all Synchronization PowerPacks on the SyncPacks page ().
The topics in this section describe how to create a step that is compatible with the Integration Service system. These topics also describe parameters, built-in parameters, and transferring data.
The Integration Service includes the following tools for creating custom integrations:
iscli. The Integration Service includes a command line tool called iscli (Integration Service Command Line Interface). When you install the Integration Service, iscli is automatically installed. The iscli allows you to upload integration applications, steps, and configurations. For more information on the iscli, see the section on iscli.
IS API. The Integration Service includes an API. When you install the Integration Service, the API is available. For more information on the IS API, see the section on the IS API.
ipaascore.BaseStep class. The Integration Service includes a Python class called ipaascore.BaseStep class. This class includes multiple pre-defined functions that you can use when you are writing or editing a step. For more information, see the section on ipaascore.BaseStep class.
Base Steps Synchronization PowerPack. The Base StepsSynchronization PowerPack includes a number of basic steps that perform common API calls. For more information, see Default Steps.
Prerequisites for Creating Integration Applications
To create your own integration application, you must:
Deploy an Integration Service system and ensure it is accessible. For details, see the Integration Service Platform manual.
Have SSH or console access to the Integration Service system, so you can use the iscli (Integration Service Command Line Interface). You will use the iscli to upload steps, integration applications, and configurations to the Integration Service.
Be comfortable with Python.
Install a local copy of a Python IDE to use for development.
Install a local copy of an API tool, like cURL, Insomnia, or Postman.
Install a local copy of a source-code editor like Notepad++, vi, or TextEdit.