How to use more than one endpoint in a WS connector?

Hi, I am dealing with an application that has 2 endpoints to perform aggregation (besides authentication). First call brings an id as a response, which has to be used on the header of the second call. I read about parent endpoints on documentation but appears to point to reach another objective.

You will find information here:

Hi @iamnithesh thanks for response!

Unfortunately this approach does not cover this problem, because response value from endpoint1 is ment to be used on header of endpoint2.

For example:
first call:
content-type: .
http://client.com/endpoint1
response: { someID: 1234}

second call:
content-type: .
header-parameter: $someID
http://client.com/endpoint2
response: { accounts}

We had a similar case where we had to get an auth token from one end point and add it to the header of the API request being sent for any of the operations

As this was not happening with the standard configuration settings available in IDN, this is what we did:

  1. Set up only one Http Operation with second Endpoint in the context URL
  2. Call the first End Point to get “someID” (using org.apache.http.impl.client.HttpClientBuilder or sailpoint.connector.webservices.WebServicesClient) from inside the BeforeOperation Rule of above Http Operation and update the header of the same with the value received for “someID”
Map headerMap = requestEndPoint.getHeader();
headerMap.put("token", sessionID);
requestEndPoint.setHeader(headerMap);
1 Like

I got the idea, this will work. Thanks as always!

1 Like

I just realised that you can also use sailpoint.connector.webservices.WebServicesClient. I have updated my response to include this…

1 Like

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.