Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.

ImportAccountEntJSON binding variable details

bala
New Contributor II
New Contributor II

Hi Team,

we have rest based application integration. 

I need to get the value of accountID value from call1 from accountParams and use the same accountID value as input in the API call for acctEntParams which is called in the subsequent calls . 

I tried with ${userIdentifier} and ${response.SFcall1.message.userId} all returns null value.


Any help. 

5 REPLIES 5

bala
New Contributor II
New Contributor II

on 1st API call we get the accountID value and it create accounts based on mapping. I tried the below binding options in the subsequent calls to get the accountID value from Call1.  All returns null value.   

${userIdentifier}

${response.call1.message.accountID} 

${accountID} 

${response.call1.accountID} 

 

 

Sheba
New Contributor III
New Contributor III

Hi Bala,

Can you pls share your json here, also have you added Account Id path in your json

"accountIdPath": "call2.message.id"

 

bala
New Contributor II
New Contributor II

Still not working, below is the fill accountentimportjson for reference. 

{
"accountParams":{
"connection":"acctAuth",
"processingType":"SequentialAndIterative",
"call":{
"call1":{
"callOrder":0,
"stageNumber":0,
"http":{
"url":"APIdetails",
"httpHeaders":{
"Authorization":"${access_token}"
},
"httpContentType":"application/x-www-form-urlencoded",
"Accept":"application/json",
"Content-Type":"application/json",
"httpMethod":"GET"
},
"listField":"d.results",
"keyField":"accountID",
"colsToPropsMap":{
"accountID":"ID~#~char",
"name":"SV_DISPLAYNAME~#~char",
"displayName":"DISPLAYNAME~#~char",
"customproperty2":"MAIL_PRIMARY~#~char",
"customproperty3":"MSKEYVALUE~#~char",
"customproperty12":"FIRSTNAME~#~char",
"customproperty13":"LASTNAME~#~char",
"status":"#CONST#1~#~char"
},
"pagination":{
"nextUrl":{
"nextUrlPath":"${response?.completeResponseMap?.next_page==null?null:response.completeResponseMap.next_page}"
}
}
}
}
},
"entitlementParams":{
"connection":"acctAuth",
"processingType":"SequentialAndIterative",
"entTypes":{
"PRIVILEGE":{
"entTypeOrder":0,
"entTypeLabels":{
"customproperty1":"Deleted",
"customproperty2":"CreatedAt",
"customproperty3":"UpdatedAt"
},
"call":{
"call1":{
"callOrder":0,
"stageNumber":0,
"http":{
"url":"APIdetails",
"httpHeaders":{
"Authorization":"${access_token}",
"Accept":"application/json"
},
"httpContentType":"application/json",
"httpMethod":"GET"
},
"listField":"d.results",
"keyField":"entitlementID",
"colsToPropsMap":{
"entitlementID":"MSKEYVALUE~#~char",
"entitlement_value":"DISPLAYNAME~#~char",
"customproperty1":"deleted~#~char",
"customproperty2":"created_at~#~char",
"customproperty3":"updated_at~#~char"
},
"disableDeletedEntitlements":true
}
}
}
}
},
"acctEntParams":{
"connection":"acctAuth",
"entTypes":{
"PRIVILEGE":{
"call":{
"call1":{
"callOrder":0,
"stageNumber":0,
"processingType":"httpEntToAcct",
"http":{
"httpHeaders":{
"Authorization":"${access_token}"
},
"url":"https://hostname/idmrestapi/v2/service/ET_PERSON(ID=${accountID})?&$expand=MANAGER,ASSIGNMENT&$forma...",
"httpContentType":"application/x-www-form-urlencoded",
"httpMethod":"GET"
},
"listField":"d",
"acctKeyField":"accountID",
"entKeyField":"entitlementID",
"acctIdPath":"ID",
"entIdPath":"REFERENCED_ID"
}
}
}
}
}
}

Sheba
New Contributor III
New Contributor III

Hi Bala,

Please try this 2 ways,

${account.accountID}
response.call1.message.responseMessage

mayankshah
New Contributor III
New Contributor III

I see you are using httpEntToAcct processing method for account-enitlement mapping. Saviynt doesn't support using any other attribute other than entitlementid which is ${id} under the URL.

I would suggest you to use httpAccttoEnt processing method if possible for account-enitlement mapping. Saviynt only support passing accountid which is ${id} under the URL.

Note: You won't be able to use any binding variable other than ${id} if using "processingType":"httpEntToAcct" or httpAccttoEnt 

Reference: https://docs.saviyntcloud.com/bundle/REST-v23x/page/Content/Developers-Handbook.htm