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

callCondition defect

JoshuaLawrence
New Contributor III
New Contributor III

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:

{
    "Rsp": {
        "Status": "Ok",
        "Result": []
    }
}
1 REPLY 1

JoshuaLawrence
New Contributor III
New Contributor III