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

Provision data from one endpoint to another

igaravi
Regular Contributor
Regular Contributor

Hello, I have a use case where I need to share few data attributes on a database endpoint when provisioning to Service Now endpoint. I have "create" and "update" policies as well as JSON defined on the Service Now REST Connector.

How can I refer to the database account endpoint in the REST connector JSON?

Currently I have -

"httpParams":"{\"sys_import_state\":\"pending\",\"sys_import_set\":\"empty\",\"u_site_id\":\"${account.accountid}\",\"u_building_id\":\"${account.accountname}\",\"u_site_name\":\"${account.customproperty3}\",
 
Thanks
6 REPLIES 6

rushikeshvartak
All-Star
All-Star

In 5.5 its not feasible. You can try using userAccount object ( this works in v2021)

older version use customquery or saviynt for saviynt to store data in user’s custom property and refer in another connection 


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

Okay. I changed the design to use only one endpoint. This is populated by database connector that does accounts import. It has the rest connector defined as the provisioning connector, to Service Now application. The provisioning is triggered by User update policy. Provisioning is creating pending tasks and the tasks are completed by the provisioning job, but no actual provisioning is happening at Service Now. No errors in the log files. Provisioning comment on the completed tasks are empty.

Here is the update JSON, not sure why accounts not created at ServiceNow. I tried this format as well, but same result - {userAccount.get('Endpt_LOC').accountid}

=============================

{
"accountIdPath": "concat(${call1.message.result.u_site_id},${call1.message.result.u_building_id})",
"call":[
{
"name":"call1",
"connection":"userAuth",
"httpMethod":"POST",
"httpParams":"{\"sys_import_state\":\"pending\",\"sys_import_set\":\"empty\",\"u_site_id\":\"${account.accountid}\",\"u_building_id\":\"${account.accountname}\",
"httpHeaders":{
"Authorization":"${access_token}"
},
"httpContentType":"application/json",
"successResponses":{
"message": "Account provision Success"
},
"unsuccessResponses":{
"error.message":"Account provision Failed"
}
}
]
}
==========================

igaravi
Regular Contributor
Regular Contributor

Provisioning is happening now but the actual values are not being pulled. Accounts are inserted into Service Now as ${account.accountid}, ${account.customproperty4} etc or ${userAccount.get('Endpt_LOC').accountid}, ${userAccount.get('Endpt_LOC').customproperty4} etc.

UserAccount will give data which is already exist not submitted in request. We used custom query and which is running before wsretry


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

Okay. I do see UserAccount binding on the REST Connector guide on attributes exposed per binding object. But there are more attributes exposed on the account, so can someone confirm these account attributes could not be provisioned to target application in 5.5?

Attributes exposed per Binding Object:

  • account: name, updatedate, updateUser, systemid, accountID, saviyntConnectJobId, displayName, Accounts, referenced_accountkey, referenced_accountName, description, comments, accounttype, accountclass, usergroup, validfrom, validthrough, userlock, incorrectlogons, creator, createdon, lastlogondate, lastpasswordchange, passwordlockdate, jobid, privileged, passwordchangestatus, customproperty1 -customproperty56.

This can be provisioned if those attribute already exists on account & request is raised for same endpoint.

if request is raised for another endpoint and attribute expected from dynamic attribute then those won;t be available until those are updated before calling json


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.