SAP Knowledge Base Article - Public

3307682 - While performing batch UPSERT operation on ExternalUser entity, "Insufficient row-level permission", error occurs.


You have created an integration wherein a candidate completes the Onboarding process and then his/her data is inserted/updated in Manage Pending Hires (MPH). While trying to insert/update the candidate in MPH, following error occurs.

ERROR: ChangeSet index 1 - ChangeSet index 1 - Insufficient row-level permission" and it has threw up to the caller.


SAP SuccessFactors HXM Suite

* OData API


The problem might be caused by permission enhancement of ExternalUser API. If there is a a step to create the Onboardee, and the next step to upsert the created onboardee with ExternalUser API. The permission does not take effect immediately before performing the upsert operation on ExternalUser entity.


1. Separate the step to create Onboardee and upsert ExternalUser API into different sessions. (If they are in the same session, the permission may not take effect due to the permission cache).

2. Add a delay (may range from a couple of seconds to a couple of minutes) between the step to create Onboardee and the step to upsert ExternalUser. (The permission refresh is an async operation; after new users are imported, the permission system will create a job to refresh the permissions, and dynamic groups, this job will take some time to complete, and it's normally depending on system resource usage).


ExternalUser, API, OData, Insufficient row-level permission, permission, row, level, insufficient, Manage Pending Hires, MPH, manage, pending, hires, Onboarding, Onboardee, upsert, refresh, async , KBA , LOD-SF-INT-ODATA , OData API Framework , Problem


SAP SuccessFactors HXM Suite 2211