Introduction to SL1 PowerFlow Tools

Download this manual as a PDF file

This section describes how you can use the tools included in SL1 PowerFlow and your own tools to create your own PowerFlow applications, steps, and configuration objects that you can use with PowerFlow.

After the 2.1.0 platform release, the Integration Service was rebranded as SL1 PowerFlow, and the Automation Builder was rebranded as SL1 PowerFlow builder.

This section covers the following topics:

What is SL1 PowerFlow?

SL1 PowerFlow enables intelligent, bi-directional integration between SL1 and third-party applications to promote a unified management ecosystem. PowerFlow contains default workflows that let users translate and share data between SL1 and third-party applications, and it also allows the development of standardized, reusable snippets called "steps" that non-developers can use to create integration workflows without writing code. In addition, PowerFlow is designed to provide high availability and scalability.

The following image shows an example of a PowerFlow application workflow and its steps in the PowerFlow user interface:

The key elements of the PowerFlow 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. You can use existing steps to create your own workflows, and you can re-use steps in more than one workflow. When these steps are combined in an 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. You can access all steps by using the PowerFlow builder on the Applications page ().

  • Applications. A PowerFlow application or workflow is a JSON object that includes all of the information required for executing an integration on the PowerFlow platform. An 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 application. In the image above, the group of connected steps in the large pane make up the "Sync Organizations from SL1 to ServiceNow Companies" application. You can access all applications on the Applications page (), and you can create new applications using the PowerFlow builder.

  • 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 PowerFlow instances, with different configurations. Click the Configure button from an application in the PowerFlow user interface to access the configuration object for that application. You can access all configuration objects on the Configurations page ().
  • Synchronization PowerPacks. A Synchronization PowerPack (also called a SyncPack) contains all the code and logic needed to perform integrations on the PowerFlow platform. You can access the latest steps, applications, and configurations for PowerFlow or a third-party integration (such as ServiceNow, Cherwell, or Restorepoint) 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 PowerFlow system. These topics also describe parameters, built-in parameters, and transferring data.

After you have created one or more steps, you can use them in one or more applications.

Tools Included with PowerFlow

PowerFlow includes the following tools for creating custom integrations:

  • iscli. PowerFlow includes a command line tool called iscli (PowerFlow Command Line Interface). When you install PowerFlow, iscli is automatically installed. The iscli allows you to upload PowerFlow applications, steps, and configuration objects. For more information on the iscli, see the section on iscli.
  • IS API. PowerFlow includes an API. When you install PowerFlow, the API is available. For more information on the API, see the section on the API.
  • ipaascore.BaseStep class. PowerFlow 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 Steps Synchronization PowerPack includes a number of basic steps that perform common API calls. For more information, see Default Steps.

Prerequisites for Creating PowerFlow Applications

To create your own PowerFlow application, you must:

  • Deploy a PowerFlow system and ensure it is accessible. For details, see the SL1 PowerFlow Platform manual.
  • Have SSH or console access to the PowerFlow system, so you can use the iscli (PowerFlow Command Line Interface). You will use the iscli to upload steps, applications, and configurations to PowerFlow.
  • 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.