and more in a single search tool across platforms. Read the announcement here. |
01/16/2024 12:59 PM
Hi All,
We have REST app which has Entitlement owner details, configured below in ImportAcctEntJSON
"entitlementOwnerAttribute":"ownerId~#~char"
while running job it failed and throwing error - "Unknown column 'entitlementOwnerAttribute' in 'field list'"
Is Entitlement Owner update allowed through Import in REST Connector ?
thanks,
suresh
01/16/2024 02:16 PM - edited 01/16/2024 09:17 PM
entitlementOwnerAttribute Only supported in AD & ADSI
REST Connector below is sample
"globalSettings": {
"dateFormat": "yyyy-MM-dd' 'HH:mm:ss"
},
"accountParams": {
"connection": "acctAuth",
"createUsers": false,
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"disableDeletedAccounts": true,
"http": {
"url": "http://api-gateway.cv.com/v2/providers/bigdata_portal_arc/apis/arc/api/v1/account/user?pageN...",
"httpHeaders": {
"X-CAG-Authorization": "<TOKEN>",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "data",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "account~#~char",
"name": "account~#~char",
"accounttype": "accountType~#~date",
"displayname": "userName~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${response.completeResponseMap.afterUrl}"
}
},
"acctEntMappings": {
"SecurityGroups": {
"listPath": "permissions",
"idPath": "securityGroupName",
"keyField": "entitlementID"
}
}
}
}
},
"entitlementParams": {
"connection": "acctAuth",
"processingType": "SequentialAndIterative",
"entTypes": {
"SecurityGroups": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "http://api-gateway.c.com/v2/providers/bigdata_portal_arc/apis/arc/api/v1/entitlement/securi...",
"httpHeaders": {
"X-CAG-Authorization": "<TOKEN>",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "data",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "securityGroupName~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char",
"entitlement_value": "securityGroupName~#~char",
"displayname": "securityGroupName~#~char",
"customproperty1": "workflow.manager~#~char",
"customproperty2": "workflow.owner~#~char"
},
"pagination": {
"nextUrl": {
"nextUrlPath": "${response.completeResponseMap.afterUrl}"
}
},
"disableDeletedEntitlements": true
}
},
"entOwnerMappings": {
"listField": "data",
"idPath": "owners.employeeNumber",
"keyField": "username"
}
}
}
},
"acctEntParams": {
"connection": "acctAuth",
"entTypes": {
"SecurityGroups": {
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"processingType": "httpEntToAcct",
"http": {
"httpHeaders": {
"X-CAG-Authorization": "<TOKEN>",
},
"url": "http://api-gateway..com/v2/providers/bigdata_portal_arc/apis/arc/api/v1/account/user?pageN...}",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "data",
"entKeyField": "entitlementID",
"acctIdPath": "account",
"acctKeyField": "accountID",
"pagination": {
"nextUrl": {
"nextUrlPath": "${response.completeResponseMap.afterUrl}"
}
}
},
"call2": {
"connection": "acctAuth",
"callOrder": 1,
"stageNumber": 1,
"showJobHistory": true,
"processingType": "entToAcctMapping",
"ownerKeyField": "username"
}
}
}
}
}
}
01/16/2024 08:20 PM
@IAM_99 refer this article : REST Connector - How to import EntOwners - Saviynt Forums - 9339
01/18/2024 11:03 AM
Hi @Manu269 thanks for the response, I have followed the above and tried to import it didnt work , PFB JSON, not sue what i am missing
{
"globalSettings": {
"dateFormat": "yyyy-MM-dd' 'HH:mm:ss"
},
"accountParams": {
"connection": "userAuth",
"createUsers": false,
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"disableDeletedAccounts": true,
"http": {
"url": "https://XXXXXX/all-users",
"httpHeaders": {
"correlation-id": "1234",
"Accept": "application/json"
},
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "userList",
"keyField": "accountID",
"colsToPropsMap": {
"accountID": "userId~#~char",
"name": "userId~#~char",
"customproperty1": "userId~#~char",
"customproperty2": "firstName~#~char",
"customproperty3": "lastName~#~char",
"customproperty4": "employeeId~#~char",
"customproperty5": "userAccountStatus~#~char",
"displayname": "userId~#~char",
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},
"acctEntMappings": {
"Entitlements": {
"listPath": "XXXGroupList",
"idPath": "",
"keyField": "entitlementID"
}
}
}
}
},
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Entitlements": {
"entTypeOrder": 0,
"call": {
"call1": {
"callOrder": 0,
"connection": "userAuth",
"listField": "entitlementList",
"keyField": "entitlementID",
"http": {
"url": "https://xxxxx/entitlements",
"httpHeaders": {
"correlation-id": "1234",
"Accept": "application/json"
},
"httpMethod": "GET",
"httpContentType": "application/json"
},
"colsToPropsMap": {
"entitlementID": "XXXGroupId~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char",
"entitlement_value": "XXXGroupId~#~char",
"displayName": "entitlementDisplayName~#~char",
"entitlement_glossary": "entitlementDisplayName~#~char",
"description": "entitlementDescription~#~char",
"customproperty1": "iamAppName~#~char",
"customproperty2": "XXXGroupId~#~char",
"customproperty3": "entitlementRequestable~#~char",
"customproperty4": "ownerId~#~char",
"customproperty5": "ownerFirstName~#~char",
"customproperty6": "ownerLasttName~#~char",
"customproperty9": "entitlementDisplayName~#~char",
"customproperty36": "itamNum~#~char",
"customproperty37": "itamName~#~char",
"customproperty38": "STORE#ACC#ENT#MAPPINGINFO~#~char"
}
}
}
}
}
},
"acctEntParams": {
"connection": "userAuth",
"entTypes": {
"Entitlements": {
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"processingType": "httpEntToAcct",
"http": {
"correlation-id": "1234",
"Accept": "application/json"
},
"url": "https://XXXXXX/all-users",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "userList",
"entKeyField": "entitlementID",
"acctIdPath": "userId",
"acctKeyField": "accountID"
},
"call2": {
"connection": "userAuth",
"callOrder": 1,
"stageNumber": 1,
"showJobHistory": true,
"processingType": "entToAcctMapping",
"ownerKeyField": "ownerId"
}
}
}
}
}
01/18/2024 04:12 PM
You need to have entOwnerMappings block