Click HERE to see how Saviynt Intelligence is transforming the industry. |
06/04/2024 02:16 AM - last edited on 06/04/2024 02:51 AM by Sunil
Hi All,
I'm attempting to set up the integration between Saviynt and one of our Okta tenants. This tenant is used for customer accounts, so I only want to import the accounts that have admin access, but I'm running into an issue with the dependentcall.
When I change the import to only include call1, all accounts are imported fine and when I change it to only use call2 (with a hardcoded accountID) it imports the account fine. So the issue only seems to be when chaining the calls. JSON is below and logs are attached. Any assistance would be appreciated.
ImportAccountEntJSON:
{
"accountParams": {
"showResponse": true,
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://domain.oktapreview.com/api/v1/iam/assignees/users",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "value",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "id~#~char"
}
},
"call2": {
"callorder": 1,
"stageNumber": 1,
"http": {
"url": "https://domain.oktapreview.com/api/v1/users/${accountID}",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"inputParams": {
"dependentCall": true
},
"listField": "",
"keyField": "accountID",
"nextApiKeyField": "accountID",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "profile.login~#~char",
"displayname": "#CONST#${return response.profile.firstName+\" \"+response.profile.lastName}~#~char",
"customproperty1": "profile.firstName~#~char",
"customproperty2": "profile.lastName~#~char",
"customproperty4": "profile.email~#~char",
"customproperty7": "status~#~char"
}
}
}
}
}
[This message has been edited y moderator to mask URL]
Solved! Go to Solution.
06/05/2024 07:54 AM
06/05/2024 01:21 PM
{
"accountParams": {
"showResponse": true,
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://domain.oktapreview.com/api/v1/iam/assignees/users",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "value",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "id~#~char"
}
},
"call2": {
"callOrder": 1,
"stageNumber": 1,
"http": {
"url": "https://domain.oktapreview.com/api/v1/users/${accountID}",
"httpHeaders": {
"Authorization": "${access_token}"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"inputParams": {
"dependentCall": true,
"dependentKeyField": "accountID"
},
"listField": "",
"keyField": "accountID",
"nextApiKeyField": "accountID",
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "profile.login~#~char",
"displayname": "#CONST#${return response.profile.firstName + ' ' + response.profile.lastName}~#~char",
"customproperty1": "profile.firstName~#~char",
"customproperty2": "profile.lastName~#~char",
"customproperty4": "profile.email~#~char",
"customproperty7": "status~#~char"
}
}
}
}
}