SAP Knowledge Base Article - Public

2387567 - Query on PerPerson doesn't fetch the records from all the employees - OData API


You are trying to query data of employee data from PerPerson Odata API entity.

However, it doesn't return data of all the employees existing in the SuccessFactors system.

Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental.


  • SAP SuccessFactors HCM Suite
  • OData API

Reproducing the Issue

Execute the below query:


You notice that all the records present in sucessfactors system is not returned.

For example, you obtain one or two records as shown below:

   "results" : [
"__metadata" :

{ "uri" : "'1234')", "type" : "SFOData.PerPerson" }

, "personIdExternal" : "1234"
}, {
"__metadata" :

{ "uri" : "'2345')", "type" : "SFOData.PerPerson" }

, "personIdExternal" : "2345"
}, {
"__metadata" :



This is a permission issue.

The API user (User who triggers the API call) has limited access to the data.


Provide the below permissions to the API user.

Admin Center -> Select the Permission Role -> Click on Permissions Tab.

Scroll down to "Employee Central API" as shown in the screenshot and enable the highlighted permission.


See Also

Employee Central OData API: Reference Guide


PerPerson Odata API issue, Employee Central HRIS OData API, call, blank, empty, null, results, values, field, query, odata, success, factors, , KBA , LOD-SF-INT-API , API & Adhoc API Framework , LOD-SF-INT , Integrations , Problem


SAP SuccessFactors HXM Suite all versions