REST:: deleted entitlement in the target(coupa) is not marking as inactive in Saviynt

npise
New Contributor III
New Contributor III

How to mark coupa entitlement as inactive(in saviynt) when its deleted in coupa. below is the json for account import

{
"accountParams": {
"connection": "acctAuth",
"createUsers": false,
"adminName": "admin",
"processingType": "SequentialAndIterative",
"call": {
"call1": {
"callOrder": 0,
"stageNumber": 0,
"http": {
"url": "https://XXXXXX.coupahost.com/api/users",
"httpContentType": "application/json",
"httpMethod": "GET",
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
}
},
"listField": "",
"keyField": "accountID",
"statusConfig": {
"active": "true",
"inactive": "false"
},
"colsToPropsMap": {
"accountID": "id~#~char",
"customproperty24": "custom-fields.start-date~#~char",
"customproperty34": "custom-fields.employee-status~#~char",
"customproperty59": "country-of-residence.code~#~char",
"customproperty9": "email~#~char",
"name": "login~#~char",
"status": "active~#~char",
"customproperty10": "employee-number~#~char",
"accounttype": "custom-fields.employee-type~#~char",
"customproperty57": "custom-fields.end-date~#~char",
"customproperty8": "manager.email~#~char",
"customproperty19": "lastname~#~char",
"customproperty18": "firstname~#~char",
"customproperty1": "custom-fields.qc-guid~#~char",
"customproperty31": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},
"pagination": {
"offset": {
"offsetParam": "offset",
"batchParam": "limit",
"batchSize": 100,
"totalCountPath": 300000
}
}
}
},
"acctEntMappings": {
"Role": {
"importAsEntitlement": false,
"listPath": "roles",
"idPath": "id",
"keyField": "entitlementID"
},
"User Group": {
"importAsEntitlement": false,
"listPath": "user-groups",
"idPath": "id",
"keyField": "entitlementID"
},
"Business Group": {
"importAsEntitlement": false,
"listPath": "content-groups",
"idPath": "id",
"keyField": "entitlementID"
}
}
},
"entitlementParams": {
"processingType": "SequentialAndIterative",
"entTypes": {
"Role": {
"entTypeOrder": 0,
"entTypeLabels": {
"customproperty1": "Meta Created"
},
"call": {
"call1": {
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 1,
"http": {
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"url": "https://XXXXXX.coupahost.com/api/roles",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "name~#~char",
"description": "description~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},

"pagination": {
"offset": {
"offsetParam": "offset",
"batchParam": "limit",
"batchSize": 50,
"totalCountPath": 10000
},
"disableDeletedEntitlements": true
}
}
}
},
"User Group": {
"entTypeOrder": 1,
"entTypeLabels": {
"customproperty1": "Meta Created"
},
"call": {
"call1": {
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 2,
"http": {
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"url": "https://XXXXXX.coupahost.com/api/user_groups",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "name~#~char",
"description": "description~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},

"pagination": {
"offset": {
"offsetParam": "offset",
"batchParam": "limit",
"batchSize": 50,
"totalCountPath": 10000
},
"disableDeletedEntitlements": true
}
}
}
},
"Business Group": {
"entTypeOrder": 2,
"entTypeLabels": {
"customproperty1": "Meta Created"
},
"call": {
"call1": {
"connection": "acctAuth",
"callOrder": 0,
"stageNumber": 3,
"http": {
"httpHeaders": {
"Authorization": "${access_token}",
"Accept": "application/json"
},
"url": "https://XXXXXX.coupahost.com/api/business_groups",
"httpContentType": "application/json",
"httpMethod": "GET"
},
"listField": "",
"keyField": "entitlementID",
"colsToPropsMap": {
"entitlementID": "id~#~char",
"entitlement_value": "name~#~char",
"description": "description~#~char",
"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"
},

"pagination": {
"offset": {
"offsetParam": "offset",
"batchParam": "limit",
"batchSize": 50,
"totalCountPath": 10000
},
"disableDeletedEntitlements": true
}
}
}
}
}
},
"acctEntParams": {
"processingType": "acctToEntMapping"
}
}

example: for business groups in coupa they deleted one entitlement and added another; after running import job new entitlement was added, however deleted entitlement was not marked as inactive.

Note: the entitlement referred above is associated to an application based role. 

4 REPLIES 4

stalluri
Regular Contributor
Regular Contributor

Check if you have enabled this at security system level.

stalluri_0-1696179119867.png

Check to which filed you are mapping the value while importing.

If you need any things else, please do let us know.

npise
New Contributor III
New Contributor III

Yes. Recon application is selected as "Yes".

Can you elaborate more when you say "Check to which filed you are mapping the value while importing." thank you!

SumathiSomala
Regular Contributor III
Regular Contributor III

@npise Could you please try by mapping status attribute in  "entitlementParams".

"Business Group": {

"entTypeOrder": 2,

"entTypeLabels": {

"customproperty1": "Meta Created"

},

"call": {

"call1": {

"connection": "acctAuth",

"callOrder": 0,

"stageNumber": 3,

"http": {

"httpHeaders": {

"Authorization": "${access_token}",

"Accept": "application/json"

},

"url": "https://XXXXXX.coupahost.com/api/business_groups",

"httpContentType": "application/json",

"httpMethod": "GET"

},

"listField": "",

"keyField": "entitlementID",

"statusConfig": {

"active": "true",

"inactive": "false"

},

"colsToPropsMap": {

"entitlementID": "id~#~char",

"entitlement_value": "name~#~char",

"status": "active~#~char",

"description": "description~#~char",

"acctEntMappingInfoColumnFromEnt": "STORE#ACC#ENT#MAPPINGINFO~#~char"

},

 

"pagination": {

"offset": {

"offsetParam": "offset",

"batchParam": "limit",

"batchSize": 50,

"totalCountPath": 10000

},

"disableDeletedEntitlements": true

}

}

}

}

}

},

"acctEntParams": {

"processingType": "acctToEntMapping"

}

}

 

Let me know if it helps.

If this reply answered your question, please Accept As Solution and give Kudos to help others facing similar issue.
Regards,
Sumathi Somala

stalluri
Regular Contributor
Regular Contributor

This what i am talking about.

"statusConfig": {

"active": "true",

"inactive": "false"

},