Symptom
You use OData API to query the User entity, and then get the target record in the response payload.
You can find some fields, such as userId, defaultFullName, lastModifiedDateTime, totalTeamSize, etc. But some other fields are missing in the response, such as email, status, etc.
Also, using "$select" and "$filter" for these fields does not work.
Environment
SAP SuccessFactors HCM Suite
Cause
The API user does not have permission to access those fields.
For example, the API user has only the permission "User Search". Then the user can only query the following fields:
- userId
- lastModifiedDateTime
- sciLastModified
- lastModifiedWithTZ
- defaultFullName
- totalTeamSize
- lastModified
- teamMembersSize
Resolution
You could grant Admin permission "Employee Export" for the API user. It allows you to query all the fields under User entity and overrides other field-level permissions.
For user without "Employee Export" permission, then you need to grant field-level permissions in RBP under Employee Data.
For details about User entity permission, please refer to guide: SAP SuccessFactors API Reference Guide (OData V2)
See Also
Keywords
SF, SuccessFactors, Success Factors, API URL, empty, property, access, configuration, insufficient, not able, cannot, filter, select, retrieve, get, some fields, email, status, User , KBA , LOD-SF-INT-ODATA , OData API Framework , Problem