
This blog is meant to provide a comprehensive guide for users seeking to learn how to create a Cloud Integration Flow API Provider. The solution outlined in this guide employs SAP Integration Suite - API Management and Cloud Integration. It is required for exposing a Cloud Integration iFlow via API Management. Taking advantage of the functionality provided by API Management to govern and monitor the calls made to the Cloud Integration iFlow.
During a recent integration project, we were challenged with designing a solution to expose internal Cloud Integration iFlows inside SAP BTP Integration Suite for external access from third party applications.
To address this, we created an API in API Management that will act as a proxy to the Cloud Integration iFlow.
From the API Provider menu, the Cloud Integration Flow type is not available for creation:
Two SAP Process Integration Runtime instances are required with different plans. One of integration-flow plan and another of api plan. More information about the type of the plan can be found in the following documentation. In both instances, a Service Key is required:
Plan integration-flow:
Plan api:
A generic and simple iFlow is required to serve as the basis for the Discovery process.
Create an iFlow called CI_IFLOW and assign a HTTPS Sender adapter with the following configurations:
After saving, deploy this iFlow.
Create an API Provider to get the deployed Cloud Integration iFlows.
Name: CI_PROVIDER
Description: API Provider to get the deployed Cloud Integration iFlows
Type: Cloud Integration
Cloud Integration Management Host: ….hana.ondemand.com (Get the value of field “url” from BTP Instance ins-ci-api – default key)
Port: 443
Authentication: OAuth2ClientCredentials
Client ID: sb-..….6 (Get the value of field “clientid” from BTP Instance ins-ci-api – default key)
Client Secret: a….= (Get the value of field “clientsecret” from BTP Instance ins-ci-api – default key)
Token URL: https://....hana.ondemand.com/oauth/token (Get the value of field “tokenurl” from BTP Instance ins-ci-api – default key)
Create an API Proxy called CI_IFLOW.
Select the Create button:
Select the API Provider CI_PROVIDER and choose button Discover:
Select the iflow CI_IFLOW and Next:
Select the OAuth2ClientCredentials and fill the other required fields
Client ID: sb-….6 (Get the value of field “clientid” from BTP Instance ins-ci-flow – default-key)
Client Secret: 8…= (Get the value of field “clientsecret” from BTP Instance ins-ci-flow – default-key)
Token URL: https://....hana.ondemand.com/oauth/token (Get the value of field “tokenurl” from BTP Instance ins-ci-flow – default-key)
Select the button Done.
The required fields will be automatically filled.
Confirm the information and select the button Create:
The API Proxy CI_IFLOW will be created:
The API Provider CI_IFLOW will be automatically created with the type of Cloud Integration Flow:
When creating the API Proxy of the Cloud Integration Flow, select the API Provider CI_IFLOW:
This solution utilizes an approach that harnesses the strengths of SAP Cloud Integration + API Management while addressing common challenges associated with authentication and integration. The emphasis on leveraging out-of-the-box capabilities contributes to the efficiency and reliability of the overall solution.
Overall, the solution not only meets the specific requirements of the project but also sets the foundation for a robust and configurable data integration framework. This approach facilitates seamless data flow from external systems to Cloud Integration Flows via API Management.
I would be more than happy to hear from our SAP Community about similar experiences with this or other integration requirements.
Please share your feedback in the comments below. I welcome any thoughts you may have on this solution. I encourage you to share similar requirements and how you solved them.
Thank you for reading!
Fellipe Mendes
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
6 | |
6 | |
5 | |
4 | |
4 | |
3 | |
3 | |
3 | |
3 | |
3 |