Extend Service Now with the Orchestration Pack

Extending an existing ServiceNow workflow with the EmpowerID Orchestrator Pack is as easy as dragging one of the EmpowerID workflows from the Workflows table onto the canvas of an existing ServiceNow workflow as a subflow and rearranging the workflow as needed. On execution, the subflow calls the EmpowerID API to execute each EmpowerID operation included in the workflow. In the below sequence, we demonstrate how easily you can do this by adding the EID – Request Management Role workflow to a ServiceNow workflow as a subflow of the workflow.

Please keep in mind that in order to have a successful EmpowerID API call triggered from this subflow, you need to pass certain mandatory values. These values are passed in the form of catalog variables, which are required as per the corresponding catalog item. For example, in order to use the EID – Request Management Role workflow as subflow, you need to ensure your parent catalog item has catalog variables defined (the name of the variable should be same) as those required by the EID – Request Management Role catalog item. These variables need to be part of the parent catalog item, so that the subflow can map correct values for a successful API call to EmpowerID. These could be hidden fields on the parent catalog item.

As an alternative to including these variable on a parent catalog item — and if you have the same information available in existing variables with different names – then you may consider creating a copy of the relevant EmpowerID workflow and edit the Subflow variable mapping Run Script activity. If you choose this method, please make sure that these changes are done on the copy only, as the main EmpowerID workflow might be used in other workflows as well. This activity is specifically designed to align EmpowerID subflow with existing catalog items and is available as a standard for all EmpowerID related workflows.

The Run Script activity contains the below script for the EID – Request Management Role workflow. the script checks to see if all required variables are included in the parent catalog item. If the variables exist and have the same name, the script simply uses the values given to those variables by the workflow. If a required variable does not exist, then it the script assigns to that variable an “undefined” value. This is not desirable as having any of variables undefined can cause the API call to fail. If you have the information in some other variable, you may replace “undefined” by that variable name and the API call should be successful.


  1. In the sequence, we have a simple workflow named EID Subflow Test open in the Workflow Editor. The workflow has a Begin and an End activity. To follow along, you can create this workflow and open it in the Workflow Editor.


  2. With the workflow open, search for the EID workflows.


  3. Drag the desired workflow from the Workflows table and place it onto the current workflow canvas. In this example, we use the EID – Request Management Role workflow. This opens the New Activity window as shown below.

    In case you would like to use any value returned by the EmpowerID workflow, you may choose to specify a variable name in the Map return value to field. You can then use this variable in the remainder of the parent flow. The final placement of subflow should look something like that shown below:

  4. Run the workflow. If you have added the required variables as described above, the workflow should successfully call the EmpowerID API.