Extending An Integration

Guide to extend integration to customize it to your organizational needs

Any out-of-box LeanIX integration provides users to implement custom Integration API processors to process the original LDIF generated by integration. This is powered by the Integration API capability called execution groups

The documentation discusses the following

  1. What are the possible use cases?
  2. How to enhance existing Integration Hub data source with execution group?
  3. How to examine generated LDIF by integration?
  4. How to implement custom Integration API processors to add additional logic to the default integrations to cater to your organizational specifics?

Inspirations (Discussed in example section)

  1. Extend CICD Integration to automatically populate MuleSoft Integration API ID.

  2. Extend OpenAPI Integration to automatically link to Providing Software Artifact FactSheet / Add resource pointing to the OpenAPI Spec documentation

Change the integration setup

To allow the custom logic to be run after the standard integration logic, you will have to:

  1. Toggle the button to run any integration with execution groups in the integration UI.
  2. Insert the integration-specific execution group in the custom processor you created.

Examination of generated LDIF for extension

All integrations are powered by Integration API to inject the source data into the workspace. Integration API depends on source data in LDIF format. All integrations generate an LDIF and the LDIF can be referred to using the Test Run feature in Integration Hub UI.

📘

External execution integrations

External execution integrations like SonarQube integration are triggered as a self-start execution from the deployment location. Hence, Test Run is not available for such integrations. In these cases, the LDIF can be acquired from the logs or sync logs from previous Integration Hub executions.

2780

Example Test Run output from MuleSoft integration

The data in the LDIF can be used to update aggregated fields, add subscriptions based on a specific value, etc. One such real-life example is discussed in the following "Example" section.

Create Integration API connector

A new Integration API connector should be created from the Integration API tab under admin UI. Make sure that Processing Direction is inbound and Processing Mode is full.

2642

Example new Integration API connector creation

Implementing Custom Integration API processors

Refer to inbound Integration API processors to implement processors that use the above generated LDIF. The execution group ID should match with the Integration Hub data source execution group ID.

{
    "processors": [
        {
            "processorType": "inboundFactSheet",
            "processorName": "example processor name",
            "processorDescription": "example description",
             ...
            "enabled": true
        }
    ],
    "variables": {},
+    "executionGroups": [
+        "myGroup"
+    ]
}