Click HERE to see how Saviynt Intelligence is transforming the industry. |
11/03/2022 01:07 AM
Hi All
We are trying to connect with an application using Rest connector, Under entitlementParams when we make an API call to get all the entitlements from target in the same payload it shares all the accounts mapped with the particular groups in the format below
[
{
"GroupName": "Test",
"GroupID":"24bn25-w8485n2-4728",
"users": [
{
"AccId": "27500",
"AccName": "Acc1"
},
{
"AccId": "2ffbce",
"AccName": "Acc2"
}
]
}
]
We are using the below json in ImportAccountEntJSON
{
"accountParams": {
"connection": "userAuth",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "",
"httpHeaders": {
"Content-Type": "application/json",
"Authorization": "${access_token}"
},
"httpParams": "{}",
"httpContentType": "application/json",
"httpMethod": "GETWITHBODY"
},
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "uniqueIdentifier~#~char",
"name": "userName~#~char"
}
}
}
},
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Groups": {
"entTypeOrder": 0,
"call": {
"call1": {
"connection": "userAuth",
"callOrder": 0,
"stageNumber": 0,
"http": {
"httpHeaders": {
"Content-Type": "application/json",
"Authorization": "${access_token}"
},
"url": "",
"httpMethod": "GET"
},
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "GroupID~#~char",
"entitlement_value": "GroupName~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
}
}
}
},
"acctEntParams": {
"entTypes": {
"Groups": {
"call": {
"call1": {
"processingType": "entToAcctMapping",
"listField": "users",
"entKeyField": "entitlementID",
"acctIdPath": "users.AccId",
"acctKeyField": "accountID"
}
}
}
}
}
}
The account and entitlements are imported correctly but the correlation between the account and entitlements are not stored within saviynt and the field acctEntMappingInfoColumnFromEnt is also NULL within Saviynt. There are no clear example in freshdesk documentation under REST connector for this type of import. Can you please share a working JSON example how to implement the account to entitlement mapping.
Thanks,
Deepanshu
11/03/2022 08:05 AM
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
Refer https://saviynt.freshdesk.com/support/solutions/articles/43000521736-rest-connector-guide%C2%A0
11/03/2022 09:20 AM
We can use this attribute I guess when we are getting the account-entitlement mapping in the get account call and not in the get entitlement call. Anyway, we have tried this option and it din't work.
11/03/2022 09:41 AM
Then you should use entitlement API for Account to Entitlement Mapping
11/06/2022 09:37 PM
Hi ,
Since the application doesn't have entitlement API that is why are store the ent acc mapping from the data we are receiving under entitlementParams.
Can you please share how can we do ent acc mapping when receiving the accounts mapped with each entitlement?
Regards,
Deepanshu
11/07/2022 01:04 AM
@Deepanshu - could you pls try the following?
For entitlementParams try the following
"entitlementParams": {
"doNotChangeIfFailed": true,
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"entTypes": {
"Group": {
"entTypeOrder": 0,
"entTypeLabels": {},
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"inputParams": {
"entitlementname": "Group"
},
"http": {
"httpHeaders": {
"Authorization": "${access_token}"
},
"url": "xxyyzz",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "GroupID~#~char",
"entitlement_value": "GroupName~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},
"disableDeletedEntitlements": false
}
},
"acctEntMappings": {
"listField": "users",
"idPath": "AccId",
"importAsAccount": true,
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "AccId~#~char",
"name": "AccName~#~char"
}
}
}
}
},
For acctEntParams, put the following:
"acctEntParams": {
"processingType": "entToAcctMapping"
}
If this does not work, please share a full sample output of the Groups Import API and the entire JSON you are using for import.
FYI: @soumya_deep
11/07/2022 02:38 AM
11/07/2022 02:54 AM
@Deepanshu - The error you have mentioned is not because of the mapping - it's because of the length of the column in the database table. You may want to open a ticket with the operations team to help you with that.