SAP Knowledge Base Article - Public

2918571 - Draft and Saved Applications return in GET query in OData API without filters - Recruiting Management

Symptom

Querying a GET in JobApplication entity through OData API will pull all applications, including the Draft and Saved applications.

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

Environment

SAP SuccessFactors Recruiting Management

Reproducing the Issue

  1. Run an open GET query to fetch details from the applications on your instance using a sample query (https://instanceURL.com/odata/v2/JobApplication)
  2. As a result, there might be more number of applications than the ones present under your requisitions on your instance or Adhoc reports.

Cause

Product Management team has confirmed that this is an expected behavior while using the oData query that the draft and saved application data will also be pulled along with the others.

Resolution

This is the standard behavior since it is a broad functionality that involves the raw data transfer directly from the database.

The Draft applications are ones which are not available in the UI, the candidate has saved it but not applied/submitted the form.
The saved applications are ones created when candidate clicked on "save job" in career site.

So, in tools like Adhoc Reports do not show the "draft" or incomplete applications that applicant saved without actually submitting for a requisition. Those applications are also invisible in Candidate Central as well.

At the moment the explicit filtering by status is the only way to exclude applications in the Draft/Saved status.

The intention behind this ability is to provide customers wide flexibility on what data they desire and allows customers to make the filtering decisions according to their business needs. OData is being used as a data extraction tool by some companies and it make sense to show draft applications for users like sfadmin (who has JobApplication export permission).

Filter job applications based on status filter

See the below example query to fetch all the applications whose status is not equal to 4 and 6 (4 corresponds to saved applications and 6 corresponds to draft applications internal status code).

https://<API Server URL>/odata/v2/JobApplication?$format=json&$top=100&$select=status&$filter=(status ne '4' and status ne '6')

This is a sample query, and it will be required to adjust it with the instance API URL.

You can find status code mappings on SAP SuccessFactors API Reference Guide (OData V2) > JobApplication.

See the below example to set the filter in Integration Center.

See Also

2251702 - OData API Integration with Recruiting Management

Keywords

JobApplication API, JOB_APPLICATIONS_API, Draft, applications, OData API query , KBA , LOD-SF-RCM-API , Webservices & APIs , LOD-SF-RCM-APP , Applicants and Job Applications , LOD-SF-RCM-INT , Integration Center & Intelligent Services , Problem

Product

SAP SuccessFactors Recruiting all versions

Attachments

Pasted image.png