Integration Blog Posts
cancel
Showing results for 
Search instead for 
Did you mean: 
rohitparihar
Explorer
0 Likes
561

Background & Problem Statement

As an integration developer we know that our SAP Integration Suite landscape handles hundreds of integration flows across multiple environments — Dev, QA, Pre-Prod/Production.

In many release cycles, our team faces a few pain points like:

Deployed iFlow → Assumed it started → Found error hours later
Wrong version deployed → No one noticed until message failures
Manual checks → Time-consuming → Human error prone
No centralized visibility → Each team checking independently

We can have an automated, programmatic way to:

  1. Verify deployment success immediately after release
  2. Check runtime status in real-time
  3. Integrate this check into our CI/CD pipeline

Discovering the API

SAP Integration Suite exposes a rich set of OData APIs for managing and monitoring integration artifacts.

The key API I used:

GET /api/v1/IntegrationRuntimeArtifacts('{iflowID}')

what this API returns:

  <properties>
<Id>jmsChecksdummy2</Id>
        <Version>1.0.0</Version>
        <Name>jmsChecksdummy2</Name>
        <Type>INTEGRATION_FLOW</Type>
        <DeployedBy>Rohit.Parihar@syngenta.com</DeployedBy>
        <DeployedOn>2026-02-25T09:46:43.180</DeployedOn>
        <Status>STARTED</Status>
    </properties>
 
Design: I understand that the CPI developer does not need steps on how to create the flow and utilize the objects however, I am pasting the flow skeleton here for reference.
rohitparihar_0-1773238356051.png
  • I've used two integration processes, both of which can run independently. One runs on a timer-based schedule and the other through an external system using a REST endpoint.
  • The body remains the same but can be dynamically modified to fetch information for multiple artifacts at once. Since it is externalized, it can be configured without editing the flow.
  • The payload can also be logged in the message processing logs. This is condition-based, meaning if the Log Payload flag as header is set to true, the payload will be logged otherwise, it will not.
 One of the example of the input I'm passing and the response is pasted below.
<root>
<iflowID>jmsChecksDummy</iflowID>
<iflowID>jmsChecks</iflowID>
</root>
rohitparihar_1-1773238732022.png

 

 

Conclusion

The information is helpful for identifying versions mismatch, changes and stage of runtime artifacts in real time.

Note: designtime artifacts information will not include status information.

Hope this helps someone someday, happy learning!