Click HERE to see how Saviynt Intelligence is transforming the industry. |
09/16/2024 04:23 PM
Hi,
I have a requirement to create JIRA ticket based on a user attribute update in Saviynt. I have created a REST connection to create the ticket when UPDATE USER task is completed. Please find below my UPDATEUSERJSON. Task is completed and Ticket is getting created as well. However it does not pass the actual values of user attributes, instead passing the variables as is. can you please advise if I am missing anything here?
{
"actions": {
"Update Login": {
"call": [
{
"callOrder": 0,
"connection": "acctAuth",
"httpContentType": "application/json",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpMethod": "POST",
"httpParams": "{\"serviceDeskId\":\"5\",\"requestTypeId\":\"1793\",\"requestFieldValues\":{\"summary\":\"Contractor Verification ${user?.username}\"},\"form\":{\"answers\":{\"1\":{\"text\":\"${user?.displayname}\"},\"2\":{\"text\":\"${user?.employeeid}\"},\"3\":{\"text\":\"${userManager?.displayname}\"},\"4\":{\"choices\":[\"${user?.customproperty60.split(',')[1].split(':')[1]}\"]},\"5\":{\"text\":\"${user?.customproperty60.split(',')[2].split(':')[1]}\"},\"8\":{\"date\":\"2024-05-15\"},\"9\":{\"date\":\"2024-05-15\"}}}}",
"name": "Update Login",
"successResponses": {
"statusCode": [
200,
201
]
},
"unsuccessResponses": {
"statusCode": [
400,
500,
401,
403,
404
]
},
"url": "https://URL/rest/servicedeskapi/request"
}
]
}
}
}
Solved! Go to Solution.
09/16/2024 05:17 PM
If one of the value failed to evaluate then it will cause issue. I believe this is due to userManager Object. Limit the variables and validate
09/16/2024 05:27 PM
Actually yes. I figured that later. There are some inconsistencies with the binding variable in this version.
${usersManagerObj?.displayname} works >> userManager.displayname does not work.
${usersObj?.customproperty60} works >> user?.customproperty60 does not work, where as user.username, user.displayname etc. still works.
09/16/2024 06:27 PM
09/16/2024 07:07 PM
For Release v23.10 you can use these binding variables.
usersObj | ${usersObj?.username} |
usersManagerObj | ${usersManagerObj?.username} |
09/16/2024 07:18 PM
I am aware of the new binding variables xxxsObj. However thought we can still use the old ones. I believe user.customproperty60 was working before. Anyway will use the new binding object variables going forward to avoid any discrepancies and compatibility issues.
thanks everyone.