SuccessFactors Data Integration (API)

Instructions for setting up the connection from One Model to SuccessFactors.

The preferred method of ingesting SuccessFactors data into One Model are the SuccessFactors oData API and SFAPI.  This method offers a secure repeatable process for extracting data with minimal additional effort.  Once the connector is configured, the One Model system is able to reach out to your SuccessFactors instance and pull data, rather than the customer having to configure extracts and transfers.  One Model's SuccessFactors connector offers full control over which entities and which columns are extracted.  All standard fields as well as customized fields including any use of the MDF framework can be extracted using this API connector.

SuccessFactors LMS data is currently not available via the SuccessFactors API - and may be requested from SAP SuccessFactors Professional Services via SAP SuccessFactors Learning Data Services.

Setup
These are the high level steps that must be completed in order to allow One Model to extract your SuccessFactors data:

  1. Create a user in SuccessFactors that can be used by One Model to extract data using the oData API and SFAPI

  2. Grant the user the necessary privileges (covered below)

  3. Configure the SuccessFactors authentication information within One Model

  4. Configure the Tables and Columns that you would like to extract from SuccessFactors

  5. Run the Connector!

SuccessFactors Permissions

The permissions necessary in SuccessFactors will be dependent on which module(s) you're interested in.  For most modules you can turn off access to specific fields you don’t want One Model to access, such as SSN.  The following is an example of the permissions for the Recruiting module.  Other modules will follow a similar pattern.

 

If you have questions while setting up permissions in SuccessFactors, someone on the One Model team will be happy to assist.  The team has a lot of experience with SuccessFactors.

 

Approved IP Addresses

In SuccessFactors, any user that does not have an expiring password needs to be given a list of IP addresses that this user can be accessed from. If you would like to configure your SuccessFactors user in this way, which will create a more stable Integration, these addresses can be provided by the One Model team.

 

Using OAuth 2.0

SuccessFactors has deprecated and is now moving to only support OAuth 2.0 for API Connections. To configure OAuth for SuccessFactors, follow the steps outlined in the SuccessFactors documentation (available here). To Migrate your SuccessFactors Connector in One Model to use OAuth, connect with your One Model Customer Success team to update the connector to make the new OAuth configuration available.

 

The only fields you will need to input into SuccessFactors are:

  • Application Unique Name: This is whatever you want it to be, as it only shows in your SuccessFactors Instance. We recommend One Model or One Model Production
  • Application URL: This can be any URL in your One Model instance. We recommend your home page.

Inputs for One Model. Once this is complete, you will need the API Key, and the Secret Key that were generated by SuccessFactors from the above process:

  • The API Key is created when you Register your OAuth Client Application.

The Secret Key is found when you create your X.509 certificate. This must be saved when the Certificate is created (or re-created) as it is not available later on.

 

SuccessFactors Workforce API
Please  provide API credentials to retrieve data from the SuccessFactors API. Additional information on these APIs can be found here.

Category Endpoint Description
Compensation

Get /EmpCompensation

Get /EmpPayCompNotRecurring

Get /EmpPayCompRecurring

Retrieves compensation information of an employee, including salary, recurring bonuses and non-recurring compensation information.

Employment

Information

Get /EmpEmployment

Get /EmpEmploymentTermination

Get /EmpJob

Retrieves employment related information, including job information, employment

termination, and work permit.

Global

Information

Get /CurrencyExchangeRate

Get /PerGlobalInfo[country]

Retrieves country specific global information of an employee

Personal

Information

Get /PerAddressDEFLT

Get /PerPerson

Get /PerPersonal

Retrieves personal information of an employee including emergency contact information, social media accounts, email address, and non-effective dated biographical information such as date of birth, country of birth and national identification card information.

Position

Management

Get /Position

Get /PositionMatrixRelationship

Retrieves information about employees position management.
User Management Get /User Retrieves system users including log in user name, password, and summaries of user personal and organizational information.

Common Platform

APIs

Get /Country

Get/PickListV2
Get /PickListValueV2

Retrieves names, labels and other descriptive items.

 

 

SuccessFactors Requisition API
Please provide API credentials to retrieve data from the SuccessFactors API. Additional information on these APIs can be found here.

Category Endpoint Description
Requisition Get /JobRequisitionLocale
Get /JobRequisitionPosting
Get /JobRequisition
Get /JobRequisitionOperator
Get /JobReqFwdCandidates
Retrieves job requisition data such as job descriptions.
Continuous Performance Management Get /FormAuditTrail Retrieves audit trail information about forms to track form routing details.

Job Application

Get /JobApplicationStatus

Get /JobApplicationStatusLabel

Needed for the Candidate Progress dimension which is SuccessFactors defined application status on the requisition.

 

API and Sensitive Data

Column/ Field Level Data.

HR systems that record and transact employee data will contain some information on current and previous employees that is highly sensitive - eg: social security numbers, national identification numbers, passport numbers and bank account details. This information is not typically used or required by One Model and as such, it’s important that any sensitive employee information is restricted within SuccessFactors to ensure it is not retrievable via the SuccessFactors API and never leaves SuccessFactors .

Note: Configuration for fields in the SuccessFactors API for One Model is highly configurable so if there are concerns about pulling a field, ensuring that it is not checked within SuccessFactors, as well as One Model is recommended.

Row/ Population Data.

Population restrictions set in SuccessFactors will not carry through to the API. All data that is available in SuccessFactors will be available to One Model for extraction.

Note: If it is necessary to exclude certain populations from One Model, the API will not be available. Discuss file based delivery methods with your Customer Success Team.

 

SuccessFactors Application, Offer and Candidate API
Please  provide API credentials to retrieve data from the SuccessFactors API. Additional information on these APIs can be found here.

Category Endpoint Description
Candidate

Get /Candidate
Get /CandidateBackground_Education

Get / CandidateBackground_OutsideWorkExperience

Retrieves candidate's profile and background information as defined in the candidate template. 
Job Application

Get /JobApplication

Get /JobApplicationStatus

Get /JobApplicationStatusAuditTrail

Get /JobApplicationStatusLabel

Get /JobApplicationAudit

Retrieves  job applications, as well as assess applicants based on information in job applications
Job Offer

Get /JobOffer

Get /OfferLetter
Get /JobOfferApprover

Retrieves information on the offer process.
Requisition Get /JobReqFwdCandidates Retrieves job requisition data such as job descriptions.

 

SuccessFactors Foundation and Picklists API
Please provide API credentials to retrieve data from the SuccessFactors API. Additional information on these APIs can be found here.

Category Endpoint Description

Common Platform

APIs

Get /Picklist
Get /PicklistOption

Get /PicklistLabel
Get /Country

Get /PickListV2
Get /PickListValueV2

Retrieves names, labels and other descriptive items.
Foundation

Get /FOBusinessUnit

Get /FOCompany

Get /FOCorporateAddressDEFLT

Get /FODepartment

Get /FODivision

Get /FOFrequency

Get /FOGeozone

Get /FOJobCode

Get /FOJobFunction

Get /FOLocation

Get /FOLocationGroup

Retrieves Foundation Objects that contain data on organization, job structure and pay.

Column/ Field Level Data.

HR systems that record and transact employee data will contain some information on current and previous candidate that is highly sensitive - eg: social security numbers, national identification numbers, passport numbers and bank account details. This information is not typically used or required by One Model and as such, it’s important that any sensitive employee information is restricted within SuccessFactors to ensure it is not retrievable via the SuccessFactors API and never leaves SuccessFactors .

Note: Configuration for fields in the SuccessFactors API for One Model is highly configurable so if there are concerns about pulling a field, ensuring that it is not checked within SuccessFactors, as well as One Model is recommended.

Row/ Population Data.

Population restrictions set in SuccessFactors will not carry through to the API. All data that is available in SuccessFactors will be available to One Model for extraction.

Note: If it is necessary to exclude certain populations from One Model, the API will not be available. Discuss file based delivery methods with your Customer Success Team.

 

In One Model

 

Create Data Source

Now that the user is set up and permissioned, let's configure and test the connection. Go to the Data Sources page within One Model, select "Add Data Source", and click SuccessFactors. You will then see the following configurable options:

 

 

Add the URI, SuccessFactors Company ID, and the User that has been setup with the correct permissions in SuccessFactors, then add the API Key and Secret Key configured before. Once this is done, select "Configure Entities", and the list of Entities available from your SuccessFactors Instance will be downloaded. Configure the ones you'd like to include, and Save your new connector.

Available entities

The following is a sample list of entities available.  Any of the entities can be expanded and specific columns can be selected/deselected.

 

Updating entities selection

SuccessFactors does not allow securing of individual MDF objects if server-side paging is used. To secure the SuccessFactors connector so that additional and unexpected endpoints cannot be added by a user who does not have the SuccessFactors user credentials, One Model has created a feature that allows users to secure their SuccessFactors connectors in the form of a configuration setup which is called Require Secret Key to edit Data Source.


If Require Secret Key to edit Data Source is checked on the configuration, updating the entities selection will require the password or Secret Key to save the changes. Otherwise, the entities can be freely updated when this configuration is disabled.

Scheduling

Both destructive and incremental extracts can be scheduled concurrently in One Model.  After the initial destructive extract, incremental extracts can be scheduled on a more frequent basis than destructive extracts.

 

 

 

Was this article helpful?

0 out of 0 found this helpful

Comments

0 comments

Please sign in to leave a comment.