Click HERE to see how Saviynt Intelligence is transforming the industry. |
02/10/2023 08:51 AM
Hi,
I'm trying to integrate AHA- RoadMaps Software application into 23.1 Version. We have two APIs we can use to get, one for users and one for permissions. But Permissions API is not getting the values/roles that sits under permissions which is needed for a user while requesting entitlement. So I need help in the approach with this type of requirement where we need to create a entitlement from access import by adding permission+role as one entitlement and make that requestable in SAVIYNT. Any help would be appreciated. TIA
02/10/2023 07:31 PM
Can you share current json
02/13/2023 09:15 AM
Sure Here it is
{
"accountParams": {
"connection": "userAuth",
"processingType": "SequentialAndIterative",
"statusAndThresholdConfig": {
"deleteLinks": true,
"accountThresholdValue": 10000,
"accountNotInImportAction": "Delete",
"correlateInactiveAccounts": true,
"inactivateAccountsNotInFile": false,
"deleteAccEntForActiveAccounts": true,
"includeExistingInActiveAccounts": true
},
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://xxxx/api/v1/users/",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpMethod": "GET",
"httpContentType": "application/json"
},
"listField": "users",
"keyField": "accountID",
"statusConfig": {
"active": "true",
"inactive": "false"
},
"colsToPropsMap": {
"accountID": "id~#~char",
"name": "name~#~char",
"customproperty1": "email~#~char",
"customproperty2": "created_at~#~char",
"customproperty3": "updated_at~#~char",
"customproperty4": "accessed_at~#~char",
"customproperty5": "enabled~#~char",
"customproperty6": "paid_seat~#~char",
"customproperty7": "administrator~#~char",
"customproperty8": "STORE#ACC#ENT#MAPPINGINFO~#~char",
"status": "enabled~#~char"
},
"pagination": {
"page": {
"pageSizeParam": "per_page",
"pageSize": 50,
"pageRecordCount": "50",
"pageNumberParam": "page",
"totalCountPath": "completeResponseMap.pagination.total_records",
"firstPageNumber": 1
}
}
}
}
},
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Entitlements": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"connection": "userAuth",
"listField": "products",
"keyField": "entitlementID",
"http": {
"url": "https://xxxx/api/v1/products",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpMethod": "GET",
"httpContentType": "application/json"
},
"statusConfig": {
"active": "true",
"inactive": "false"
},
"colsToPropsMap": {
"entitlementID": "id~#~char",
"customproperty1": "id~#~char",
"customproperty2": "reference_prefix~#~char",
"entitlement_value": "name~#~char",
"displayName": "name~#~char",
"entitlement_glossary": "id~#~char"
},
"pagination": {
"page": {
"pageSizeParam": "per_page",
"pageSize": 50,
"pageRecordCount": "50",
"pageNumberParam": "page",
"totalCountPath": "completeResponseMap.pagination.total_records",
"firstPageNumber": 1
}
}
}
}
}
}
},
"acctEntParams": {
"connection": "userAuth",
"entTypes": {
"Entitlements": {
"call": {
"call1": {
"connection": "userAuth",
"callOrder": 0,
"stageNumber": 0,
"processingType": "httpEntToAcct",
"http": {
"httpHeaders": {
"Authorization": "${access_token}"
},
"url": "https://xxxx/api/v1/products/${id}/users",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "project_users.user",
"entKeyField": "entitlementID",
"acctIdPath": "id",
"acctKeyField": "accountID",
"pagination": {
"page": {
"pageSizeParam": "per_page",
"pageSize": 50,
"pageRecordCount": "50",
"pageNumberParam": "page",
"totalCountPath": "completeResponseMap.pagination.total_records",
"firstPageNumber": 1
}
}
}
}
}
}
}
}
02/13/2023 09:58 AM - edited 03/07/2023 07:14 AM
Can you share the below info:
- When you run the access import, are you seeing any error/data in the logs?
- Is this the url (https://xxxx/api/v1/products) that gets the Entitlements detail?
- Is this url showing the data from postman response?
Also for REST Conn, I would recommend you to add {"showLogs":true} in Config json Parameter on your connection to print additional logs.
02/13/2023 11:37 AM
Hi Sahil,
thanks for the response!
- I'm not seeing any errors in the access import.
- Yes thats the URL. and looks good and gets data in POSTMAN
- Yes I have added showLogs":true
PFA 3 screenshots of SAVIYNT ENT hierarchy, how Target permissions looks like and POSTMAN response.
what's needed is:
ImportAcctEnJson format which can create entitlements in saviynt by adding/concatenating both products and roles as shown in screenshot from target. Access Import is successful and able to pull products and could create them as entitlements but what's needed is products+role = Entitlement.
Please let me know if you still need info thanks.
03/06/2023 08:55 PM - last edited on 03/07/2023 08:58 AM by Dave
Hi,
Can we call attributes like this for entitlements ? what is the valid syntax
users[0].product_roles
Below entitlement JSON but its not working
~~~~~~~~~~~~~~~~~~~~~~~
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Entitlements": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"connection": "userAuth",
"listField": "users",
"keyField": "entitlementID",
"http": {
"url": "https://xxxxxxxxxxhealth.aha.io/api/v1/users",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"httpMethod": "GET",
"httpContentType": "application/json"
},
"colsToPropsMap": {
"entitlementID": "product_roles[0].product_id~#~char",
"entitlement_value": "product_roles[0].product_name~#~char",
"customproperty2": "product_roles[0].role~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
}
}
}
},
[This post has been edited by a Moderator to remove sensitive information.]