We are working on an application that deals with the SuccessFactors OData API queries to retrieve the Performance Goals data.
We need to get a list of assigned goals for an employee or list of employees for a goal.
Which entity should we query to get the information that we need - list of employees with a specific goal, or list of goals for a specific employee?
SuccessFactors HCM Suite
OData Queries in the Goals entity
The performance OData APIs has some limitations. You can build a API query to retrieve the goals, but the system will only return the Goals registered to your SF user / API user that is executing the query (it will not return the Goals of all employees). This is something in the API webservice code, not related with permissions.
This is a known limitation. Some entities do not return data from other persons. In Goals, the system only return the own API user data. The complete list of entities that cannot be used for direct query is listed in the KBA below:
2443143 - List of Odata API Entities that do not support a direct Query
You can test this behavior in the Integration Center. The system will only return the list of Goals created for the user that is executing the integration.
A valid workaround to extract Goals and other performance information from the SF system is generating the data from the analytics module (Ad-hoc reports). For performance data, we recommend you to go with that tool.
Please find our OData and Integration Center handbooks in this link = https://help.sap.com/viewer/p/SAP_SUCCESSFACTORS_HCM_SUITE
- Performance Odata/API
- Extract Performance Goals
- list of assigned goals for an employee
- list of employees for a goal
SuccessFactors Employee Central
OData Queries in the SF Goals entity