Click HERE to see how Saviynt Intelligence is transforming the industry. |
07/26/2023 09:26 AM
Hi there,
I have the following CreateAccountJSON where I want call2 only to be invoked if call1 returns an empty array. For this I tried using the callCondition field as specified in the saviynt documentation, but it seems to not be working as expected (call2 will be invoked regardless of whether the callcondition is true or false). I also found a similar forum post: https://forums.saviynt.com/t5/identity-governance/callcondition-not-working/m-p/36639?search-action-... saying the functionality seems to broken on version 5.5x.
When I try to complete a new account task, there are no errors in the logs or anything related to callcondition (I have show logs set true in the configJSON). I have also tried doing the opposite condition (array size != 0) and have tried with and without the callListPath field
Just wondering if there is a work around/fix for this? as I only want call2 to be called if call1 returns an empty array. Thanks
CreateAccountJSON:
{
"accountIdPath": "call2.message.Rsp.Result.Guid",
"dateFormat": "yyyy-MM-dd'T'HH:mm:ssXXX",
"call": [
{
"name": "call1",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "GET",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
200,
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call2",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "POST",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"callCondition" : "${response.call1.message.Rsp.Result.size()==0}"
"callListPath" : "response.call1.message.Rsp.Result"
"successResponses": {
"statusCode": [
200,
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call3",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "PUT",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
200,
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call4",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "PUT",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
200,
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call5",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "PUT",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call6",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "PUT",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
},
{
"name": "call7",
"connection": "acctAuth",
"url": "<>",
"httpMethod": "POST",
"httpParams": "",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept" : "text/json"
},
"httpContentType": "application/json",
"successResponses": {
"statusCode": [
201
]
},
"unsuccessResponses": {
"statusCode": [400, 404, 405, 500]
}
}
]
}
call1 reponse format:
Solved! Go to Solution.
07/26/2023 09:46 AM
This was solved with the solution specified in this post: https://forums.saviynt.com/t5/identity-governance/make-second-call-depending-on-call1-response-messa...