How can we send client credentials in header rather than in body

We are planning to send the client credentials via header rather than as body to the oauth\token URL

In the request headers, add a new header:

  • Key: Authorization
  • Value: Basic base64_encoded_credentials

Replace base64_encoded_credentials with your actual base64-encoded username and password in the format username:password. You can easily generate this encoded string using an online tool.

Hi @bkumar592 ,

Do you mean when you want to get token ?

You have two options : sending in body or in query params like this :

https://developer.sailpoint.com/idn/api/authentication

Hi @bkumar592

You can use the Before Provisioning Rule that comes with Web Service connector:

You can add custom data to header, body, etc. This is all in requestEndpoint object:

Perhaps you can add the token somewhere in the Body part, use then in the BP Rule to generate and add the new header, and finally clean Body taking away the token.

The Before Provisioning Rule is triggered just after the Web Service Operation starts, but until it is sent to the Web Service. Is intended to modify the request when the connector`s ootb parameters gets insufficient to your business logic. What is returned in this rule is what is actually sent to the Web Service.

Thanks @ondiaye for the reply.
we are currently doing the same, however, we would like to pass the arguments via headers rather than in parameters or through body

Hi @DeepanshuBisht , Thanks for the reply, we don’t want to rely on the third party tool which will generate encoded string.

I don’t think it’s possible. As documentation say :

yes, We are also in the same assumption, however, we would like to get confirmation from SailPoint. Raised a case already to SailPoint on this. Thanks for the reply @ondiaye

Credentials are passed either through query params or in the request body. We don’t support headers at this time.