SuccessFactors HR is an integrated human-resources platform. It offers users tools for onboarding, social business, and collaboration along with tools for learning management, performance management, recruiting, applicant tracking, succession planning, talent management, and HR analytics. It is also cloud-based.
Supervisor configuration parameters
To configure the connector, following parameters are required:
- Connector Name
- Username (Format: <userId (not the value for username) of the SuccessFactors service account>@<company_id>)
- Password (needed till v.5.0)
-
SuccessFactors HR instance URL (https://apps.support.sap.com/sap/support/knowledge/public/en/2215682).
-
Private key (v.6.0 onwards)
-
Client Id (v.6.0 onwards)
-
Custom Object Types (v9.0 onwards)
-
Instance DateTime Offset (refer Configuring additional datetime offset in connectors for more details)
-
Minimal Attributes (in v1.0 and v2.0)
NOTE: The default value is false. When the value is set to true, only the minimal set of attributes for all the objects will be queried from the SuccessFactors HR system.
-
Fetch Effective Dated Records Only (v3.0 onwards)
NOTE: The default value is false. When the value is set to true, only the effective dated employees will be queried from the SuccessFactorsHR system.
-
Activate Custom Attributes With Full Name (v5.0 onwards)
NOTE: The default value is false. When the value is set to true, then custom attributes would be prefixed with the full name of the navigational attributes.
-
Separate Effective And FutureDated Employees Endpoints (v5.0 onwards)
NOTE: The default value is false. When the value is set to true, the employees would be separated into two endpoints - the effective dated and future dated.
-
Retry Server Call
IMPORTANT:
-
Retry Server Call is used to make a retry request to the SuccessFactorsHR system in-case of failures related with an unreachable instance at a given point in time.
-
By default the value is set to false. The customer can enable it in-case such failures are encountered.
-
-
loginMethod (v9.0 onwards)
NOTE: The default value is false. When the value is set to true, the employees would have loginMethod attribute in the response.
-
Use base 64 encoded id in synchronization (on v10.1)
NOTE: The default value is false. Set this to true if the id contains special characters and needs the base 64 encoding to support the synchronization.
SuccessFactors HR |
Attributes |
---|---|
BusinessUnit |
externalCode, name, description, status, startDate, createdOn, lastModifiedOn |
Company |
externalCode, name, description, status, createdOn, lastModifiedOn |
CostCenter |
name, description, externalCode, status, startDate, createdOn, lastModifiedOn |
Division |
externalCode, name, description, status, startDate, createdOn, lastModifiedOn |
Department | name, description, externalCode, status, startDate, createdOn, lastModifiedOn |
EmpEmployment |
userID, startDate, createdOn, lastModifiedOn |
Employee |
EmpJob attributes: userId, businessUnit, company, costCenter, createdOn, division, event, eventReason, jobTitle, location, managerId, emplStatus, startDate, jobCode, position User attributes: dateOfBirth, userId, username, defaultFullName, hireDate, lastModified, status, department, location, firstName, lastName, mi, suffix, email, addressLine1, state, city, zipCode, country, businessPhone, cellPhone |
EventReason |
externalCode, name, status, event, createdOn, lastModifiedOn |
JobCode |
externalCode, name, description, status, createdOn, lastModifiedOn |
Location | externalCode, name, description, status, geozoneFlx, createdOn, lastModifiedOn |
PerPersonal |
personIdExternal, firstName, lastName, preferredName, createdOn, lastModifiedOn |
PerPhone |
personIdExternal, phoneNumber, phoneType, createdOn, lastModifiedOn |
PicklistLabel |
id,externalCode, status |
PicklistOption |
id,externalCode, status |
Position | code, description, jobTitle, effectiveStatus, jobCode, businessUnit, company, department, externalName_defaultValue, createdDate, lastModifiedDate |
NOTE: For consuming Starling Connect HR connectors (for example, SuccessFactors HR) into the One Identity Manager Synchronization Client, the One Identity Manager CHS module has to be installed and configured. You can download the appropriate CHS module from the One Identity Manager Support site.
NOTE: The following IP addresses will be applicable when the SuccessFactorsHR connector is moved to Kubernetes.
US: 13.91.196.96 and 40.88.252.103
EU: 20.82.221.63 and 51.105.212.253
Supported objects and operations
Employees
Operation |
VERB |
---|---|
Get Employee |
GET |
Get All Employees with Pagination |
GET |
Update Employees |
PUT |
Companies
Operation |
VERB |
---|---|
Get Company | GET |
Get All Company With Pagination |
GET |
BusinessUnits
Operation |
VERB |
---|---|
Get BusinessUnit | GET |
Get All Business Units with Pagination |
GET |
Departments
Operation |
VERB |
---|---|
Get Department | GET |
Get All Departments with Pagination |
GET |
Locations
Operation |
VERB |
---|---|
Get Location | GET |
Get All Locations with Pagination |
GET |
Divisions
Operation |
VERB |
---|---|
Get Division | GET |
Get All Division With Pagination |
GET |
CostCenters
Operation |
VERB |
---|---|
Get CostCenter | GET |
Get All CostCenter with Pagination |
GET |
JobCodes
Operation |
VERB |
---|---|
Get JobCode | GET |
Get All JobCodeWith Pagination | GET |
Positions
Operation |
VERB |
---|---|
Get Position | GET |
Get All Position With Pagination | GET |
EmpEmployments
Operation |
VERB |
---|---|
Get EmpEmployment | GET |
Get All EmpEmployment With Pagination | GET |
PerPersonals
Operation |
VERB |
---|---|
Get PerPersonal | GET |
Get All PerPersonal With Pagination | GET |
PerPhones
Operation |
VERB |
---|---|
Get PerPhone | GET |
Get All PerPhone With Pagination | GET |
Create PerPhone |
POST |
Update PerPhone |
PUT |
EventReasons
Operation |
VERB |
---|---|
Get EventReason | GET |
Get All EventReason With Pagination | GET |
PicklistLabels
Operation |
VERB |
---|---|
Get PicklistLabel | GET |
Get All PicklistLabel With Pagination | GET |
PerEmails
Operation |
VERB |
---|---|
Get PerEmail | GET |
Get All PerEmails With Pagination | GET |
Update PerEmail |
PUT |
Create PerEmail |
POST |
Delete PerEmail |
DELETE |
PerEmails
Operation |
VERB |
---|---|
Get PerEmail | GET |
Get All PerEmails With Pagination | GET |
Update PerEmail |
PUT |
Create PerEmail |
POST |
Delete PerEmail |
DELETE |
FutureDatedEmployees (in v5.0 and above)
Operation |
VERB |
---|---|
Get Employees | GET |
Get All Employees with Pagination | GET |
Update Employees |
PUT |
EmpJobRelationship (in v10.0 and above)
Operation |
VERB |
---|---|
Get EmpJobRelationship | GET |
Get EmpJobRelationship With Pagination | GET |
EmpEmploymentTermination (in v10.3 and above)
Operation |
VERB |
---|---|
Get EmpEmploymentTermination | GET |
Get EmpEmploymentTermination With Pagination | GET |
Mandatory Fields
This section lists the mandatory fields required to CREATE/UPDATE, Employees, PerEmails, PerPhones, and FutureDatedEmployees:
Employee
- userId
- username
PerEmail
-
personIdExternal
-
emailType
PerPhone
-
personIdExternal
-
phoneType
-
phoneNumber
FutureDatedEmployees
-
userId
-
username
NOTE: Employees and FutureDatedEmployees endpoints support UPDATE operation only.
Mappings
Endpoints mapping
SCIM endpoints | Target system objects |
---|---|
Employees | EmpJob |
BusinessUnits | FOBusinessUnit |
Departments | FODepartment |
CostCenters | FOCostCenter |
Locations | FOLocation |
Divisions |
Divisions |
Companies |
FOCompany |
JobCodes |
FOJobCode |
Positions |
Position |
EmpEmployments |
EmpEmployment |
PerPersonals |
PerPersonal |
PerPhones |
PerPhone |
PicklistLabels |
PicklistLabel |
PicklistOptions |
PicklistOption |
PerEmails |
PerEmail |
EventReasons |
EventReason |
Attributes mapping
Different mappings associated with this connector are listed in the tables below.
SCIM parameter | SuccessFactors HR parameter |
---|---|
Addresses.Country | userNav/country |
Addresses.Locality | userNav/state |
Addresses.PostalCode | userNav/zipCode |
Addresses.Region | userNav/city |
Addresses.StreetAddress | userNav/addressLine1 |
businessUnit | businessUnit |
company |
company |
contractType |
contractType |
costCenter |
costCenter |
countryOfCompany |
countryOfCompany |
createdBy |
createdBy |
dateOfBirth |
userNav/dateOfBirth |
department | department |
DisplayName | userNav/defaultFullName |
division | division |
Emails[0].Value | userNav/email |
employeeClass |
employeeClass |
employmentType |
employmentType |
emplStatus |
emplStatus |
empRelationship |
empRelationship |
endDate |
endDate |
event_ |
event_ |
eventReason |
eventReason |
familyRelationshipWithEmployer |
familyRelationshipWithEmployer |
FutureDatedEmployees |
EmpJob |
hazard |
hazard |
holidayCalendarCode |
holidayCalendarCode |
Id | id |
isCompetitionClauseActive |
isCompetitionClauseActive |
isFulltimeEmployee |
isFulltimeEmployee |
isSideLineJobAllowed |
isSideLineJobAllowed |
jobCode |
jobCode |
jobTitle |
jobTitle |
laborProtection |
laborProtection |
location |
location |
managerId |
managerId |
matrixManagers[].displayName |
userNav/matrixManager[].defaultFullName |
matrixManagers[].value |
userNav/matrixManager[].userId |
Meta.Created |
createdOn |
Meta.LastModified | userNav/lastModified |
Name.Familyname | userNav/lastName |
Name.Formatted | userNav/defaultFullName |
Name.GivenName | userNav/firstName |
Name.HonorificSuffix | userNav/suffix |
Name.MiddleName | userNav/mi |
NickName |
userNav/nickname |
payGrade |
payGrade |
payScaleArea |
payScaleArea |
payScaleGroup |
payScaleGroup |
payScaleLevel |
payScaleLevel |
payScaleType |
payScaleType |
PersonIdExternal |
employmentNav/personIdExternal |
PhoneNumbers.businessPhone | userNav/businessPhone |
PhoneNumbers.cellPhone | userNav/cellPhone |
position |
position |
probationPeriodEndDate |
probationPeriodEndDate |
regularTemp |
regularTemp |
retired |
retired |
seqNumber |
seqNumber |
standardHours |
standardHours |
startDate |
startDate |
status |
status |
timeRecordingVariant |
timeRecordingVariant |
timeTypeProfileCode |
timeTypeProfileCode |
timezone |
timezone |
travelDistance |
travelDistance |
userId | userId |
UserName | userNav /username |
workerCategory |
workerCategory |
workingDaysPerWeek |
workingDaysPerWeek |
workingTimeDirective |
workingTimeDirective |
workLocation |
workLocation |
workscheduleCode |
workscheduleCode |
isPrimaryAssignment |
userNav/isPrimaryAssignment |
isContingentWorker |
employmentNav/isContingentWorker |
Additional mapping of Employees from version 9 onwards | |
loginMethod |
userNav/loginMethod |
employmentStartDate |
employmentNav/startDate |
employmentEndDate |
employmentNav/endDate |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | base64encoded(userId+endDate+personIdExternal) |
originalId | userId+endDate+personIdExternal |
userId | userId |
personIdExternal | personIdExternal |
benefitsEndDate | benefitsEndDate |
notes | notes |
bonusPayExpirationDate | bonusPayExpirationDate |
okToRehire | okToRehire |
salaryEndDate | salaryEndDate |
StockEndDate | StockEndDate |
lastDateWorked | lastDateWorked |
regretTermination | regretTermination |
createdBy | createdBy |
createdDateTime | createdDateTime |
lastModifiedDateTime | lastModifiedDateTime |
endDate | endDate |
payrollEndDate | payrollEndDate |
lastModifiedBy | lastModifiedBy |
eligibleForSalContinuation | eligibleForSalContinuation |
meta.LastModified | lastModifiedOn |
meta.CreatedOn | createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Addresses.Country | userNav/country |
Addresses.Locality | userNav/state |
Addresses.PostalCode | userNav/zipCode |
Addresses.Region | userNav/city |
Addresses.StreetAddress | userNav/addressLine1 |
businessUnit | businessUnit |
company |
company |
contractType |
contractType |
costCenter |
costCenter |
countryOfCompany |
countryOfCompany |
createdBy |
createdBy |
dateOfBirth |
userNav/dateOfBirth |
department | department |
DisplayName | userNav/defaultFullName |
division | division |
Emails[0].Value | userNav/email |
employeeClass |
employeeClass |
employmentType |
employmentType |
emplStatus |
emplStatus |
empRelationship |
empRelationship |
endDate |
endDate |
event_ |
event_ |
eventReason |
eventReason |
familyRelationshipWithEmployer |
familyRelationshipWithEmployer |
hazard |
hazard |
holidayCalendarCode |
holidayCalendarCode |
Id | id |
isCompetitionClauseActive |
isCompetitionClauseActive |
isFulltimeEmployee |
isFulltimeEmployee |
isSideLineJobAllowed |
isSideLineJobAllowed |
jobCode |
jobCode |
jobTitle |
jobTitle |
laborProtection |
laborProtection |
location |
location |
managerId |
managerId |
matrixManagers[].displayName |
userNav/matrixManager[].defaultFullName |
matrixManagers[].value |
userNav/matrixManager[].userId |
Meta.Created |
createdOn |
Meta.LastModified | userNav/lastModified |
Name.Familyname | userNav/lastName |
Name.Formatted | userNav/defaultFullName |
Name.GivenName | userNav/firstName |
Name.HonorificSuffix | userNav/suffix |
Name.MiddleName | userNav/mi |
NickName |
userNav/nickname |
payGrade |
payGrade |
payScaleArea |
payScaleArea |
payScaleGroup |
payScaleGroup |
payScaleLevel |
payScaleLevel |
payScaleType |
payScaleType |
PersonIdExternal |
employmentNav/personIdExternal |
PhoneNumbers.businessPhone | userNav/businessPhone |
PhoneNumbers.cellPhone | userNav/cellPhone |
position |
position |
probationPeriodEndDate |
probationPeriodEndDate |
regularTemp |
regularTemp |
retired |
retired |
seqNumber |
seqNumber |
standardHours |
standardHours |
startDate |
startDate |
status |
status |
timeRecordingVariant |
timeRecordingVariant |
timeTypeProfileCode |
timeTypeProfileCode |
timezone |
timezone |
travelDistance |
travelDistance |
userId | userId |
UserName | userNav /username |
workerCategory |
workerCategory |
workingDaysPerWeek |
workingDaysPerWeek |
workingTimeDirective |
workingTimeDirective |
workLocation |
workLocation |
workscheduleCode |
workscheduleCode |
isPrimaryAssignment |
userNav/isPrimaryAssignment |
isContingentWorker |
employmentNav/isContingentWorker |
Additional mapping of Employees from version 9 onwards | |
employmentStartDate |
employmentNav/startDate |
employmentEndDate |
employmentNav/endDate |
SCIM parameter | SuccessFactors HR parameter |
---|---|
costCenter | costCenter |
createdBy | createdBy |
createdOn |
createdOn |
description | description |
endDate |
endDate |
externalCode | externalCode |
headOfUnit | headOfUnit |
Id | externalCode |
lastModifiedBy |
lastModifiedBy |
lastModifiedDateTime |
lastModifiedDateTime |
lastModifiedOn |
lastModifiedOn |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
name | name |
parent |
parent |
startDate |
startDate |
status |
status |
SCIM parameter | SuccessFactors HR parameter |
---|---|
createdBy |
createdBy |
createdDateTime |
createdDateTime |
description | description |
endDate |
endDate |
externalCode | externalCode |
geozoneFlx | geozoneFlx |
Id | externalCode |
lastModifiedBy |
lastModifiedBy |
lastModifiedDateTime |
lastModifiedDateTime |
lastModifiedOn |
lastModifiedOn |
locationGroup | locationGroup |
locationGroupFlx | locationGroupFlx |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
name | name |
standardHours |
standardHours |
startDate |
startDate |
status |
status |
timezone | timezone |
SCIM parameter | SuccessFactors HR parameter |
---|---|
createdBy | createdBy |
createdOn |
createdOn |
description | description |
description_de_DE |
description_de_DE |
endDate |
endDate |
externalCode | externalCode |
headOfUnit |
headOfUnit |
Id | externalCode |
lastModifiedBy |
lastModifiedBy |
lastModifiedOn |
lastModifiedOn |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
name | name |
name_de_DE |
name_de_DE |
startDate | startDate |
status | status |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | Base 64 encoded Composite Key or Simple Key of the object |
Meta.Created |
createdDateTime |
meta.lastModified | lastModifiedDateTime |
All other non-navigational attribute will have same names at both sides |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | Base64encoded(id) |
targetId |
id |
NOTE: Applicable for all object types.
SCIM parameter | SuccessFactors HR parameter |
---|---|
createdBy | createdBy |
createdDateTime |
createdDateTime |
createdOn | createdOn |
description | description |
endDate |
endDate |
externalCode | externalCode |
headOfUnit |
headOfUnit |
Id | externalCode |
lastModifiedBy |
lastModifiedBy |
lastModifiedDateTime | lastModifiedDateTime |
lastModifiedOn | lastModifiedOn |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
name | name |
parent | parent |
startDate | startDate |
status | status |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | externalCode |
name | name |
description | description |
createdBy | createdBy |
externalCode | externalCode |
costcenterManager |
costcenterManager |
status | status |
startDate | startDate |
endDate |
endDate |
parent | parent |
lastModifiedOn | lastModifiedOn |
createdOn | createdOn |
lastModifiedBy |
lastModifiedBy |
Meta.LastModified |
lastModifiedOn |
Meta.Created |
createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | externalCode |
name | name |
description | description |
externalCode | externalCode |
status | status |
startDate | startDate |
endDate |
endDate |
defaultLocation | defaultLocation |
country | country |
standardHours | standardHours |
defaultPayGroup | defaultPayGroup |
Meta.LastModified | lastModifiedOn |
Meta.Created |
createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | externalCode |
name | name |
description | description |
externalCode | externalCode |
status | status |
startDate | startDate |
endDate |
endDate |
lastModifiedOn | lastModifiedOn |
lastModifiedBy | lastModifiedBy |
createdBy | createdBy |
createdOn | createdOn |
parentJobCode |
parentJobCode |
supervisorLevel |
supervisorLevel |
defaultSupervisorLevel |
defaultSupervisorLevel |
standardHours |
standardHours |
workerCompCode |
workerCompCode |
grade |
grade |
isFulltimeEmployee |
isFulltimeEmployee |
jobFunction |
jobFunction |
regularTemporary |
regularTemporary |
employeeClass |
employeeClass |
defaultJobLevel |
defaultJobLevel |
isRegular |
isRegular |
jobLevel |
jobLevel |
defaultEmployeeClass |
defaultEmployeeClass |
Meta.LastModified | lastModifiedOn |
Meta.Created |
createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | code |
code | code |
description | description |
effectiveStartDate | effectiveStartDate |
effectiveEndDate | effectiveEndDate |
effectiveStatus | effectiveStatus |
standardHours | standardHours |
department | department |
businessUnit | businessUnit |
division | division |
location | location |
costCenter | costCenter |
createdBy | createdBy |
jobTitle | jobTitle |
employeeClass | employeeClass |
jobCode | jobCode |
company | company |
payGrade | payGrade |
comment | comment |
createdDate | createdDate |
jobLevel | jobLevel |
lastModifiedBy | lastModifiedBy |
lastModifiedDate | lastModifiedDate |
positionTitle | positionTitle |
vacant | vacant |
regularTemporary | regularTemporary |
payRange |
payRange |
Meta.LastModified | lastModifiedDate |
Meta.Created |
createdDate |
lastModifiedDateTime |
lastModifiedDateTime |
NOTE: Disable the lastModifiedDate or lastModifiedDateTime attribute based on the availability in the instance. Disabling both at the same time may introduce performance issues.
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | userId |
userId | userId |
personIdExternal | personIdExternal |
startDate | startDate |
createdBy | createdBy |
createdOn | createdOn |
firstDateWorked | firstDateWorked |
lastDateWorked | lastDateWorked |
lastModifiedBy | lastModifiedBy |
Meta.LastModified | lastModifiedOn |
Meta.Created |
createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
createdBy | createdBy |
createdOn | createdOn |
emails[].displayName |
personNav/emailNav/result[].emailAddress |
emails[].emailType |
personNav/emailNav/result[].emailType |
emails[].primary |
personNav/emailNav/result[].isPrimary |
emails[].value |
personNav/emailNav/result[].personIdExternal,personNav/emailNav/result[].emailType |
firstName | firstName |
gender | gender |
Id | personIdExternal |
lastModifiedBy |
lastModifiedBy |
lastName | lastName |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
personIdExternal | personIdExternal |
preferredName |
preferredName |
startDate | startDate |
SCIM parameter | SuccessFactors HR parameter |
---|---|
areaCode | areaCode |
countryCode | countryCode |
createdBy | createdBy |
createdOn | createdOn |
Id |
personIdExternal,phoneType |
isPrimary | isPrimary |
lastModifiedBy |
lastModifiedBy |
lastModifiedOn | lastModifiedOn |
Meta.Created |
createdOn |
Meta.LastModified | lastModifiedOn |
personIdExternal | personIdExternal |
phoneNumber | phoneNumber |
phoneType | phoneType |
NOTE: The PerPhones table of SuccessFactors HR Instance supports composite key-based lookup. The composite key consists of personIdExternal and phoneType. |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | externalCode |
externalCode | externalCode |
name | name |
status | status |
event_ | event_ |
emplStatus | emplStatus |
description | description |
startDate | startDate |
createdOn | createdOn |
createdBy | createdBy |
lastModifiedOn | lastModifiedOn |
lastModifiedBy |
lastModifiedBy |
Meta.LastModified |
lastModifiedOn |
Meta.Created |
createdOn |
SCIM parameter | SuccessFactors HR parameter |
---|---|
externalCode | externalCode |
Id | id |
status | status |
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id | optionId |
id_ | id |
label |
label |
locale |
locale |
optionId | optionId |
SCIM parameter | SuccessFactors HR parameter |
---|---|
createdBy |
createdBy |
createdDateTime |
createdDateTime |
createdOn |
createdOn |
emailAddress |
emailAddress |
emailType | emailType |
Id | personIdExternal,emailType |
isPrimary | isPrimary |
lastModifiedBy |
lastModifiedBy |
lastModifiedDateTime |
lastModifiedDateTime |
lastModifiedOn |
lastModifiedOn |
Meta.LastModified | lastModifiedOn |
personIdExternal | personIdExternal |
NOTE: The PerEmails table of SuccessFactors HR Instance supports composite key-based lookup. The composite key consists of personIdExternal and emailType.
SCIM parameter | SuccessFactors HR parameter |
---|---|
Id |
base 64 encoded (userId+startDate+relationshipType) |
originalId |
userId+startDate+relationshipType |
relationshipType |
relationshipType |
userId |
userId |
relUserId | relUserId |
startDate | startDate |
endDate | endDate |
createdBy |
createdBy |
lastModifiedBy |
lastModifiedBy |
meta.LastModified | lastModifiedOn |
meta.CreatedOn | createdOn |
Connector limitations
-
DELETE operation is supported only by the PerEmails endpoint.
-
Except for PerEmails and PerPhones, CREATE operation is also not supported by any other endpoints.
-
UPDATE operation is supported by two endpoints on selected attributes as listed below:
-
Employees - username, cellPhone, businessPhone, and email
-
PerEmails - emailAddress, emailType.
-
PerPhones - phoneNumber, phoneType, areaCode, countryCode, and isPrimary.
-
-
If there are multiple records with same 'startDate' coming in at a later point, then it would not be handled since 'startDate' doesn't have a time stamp.
-
'startDate' is in servertime. Hence, it can't be converted into UTC as the timezone information of the SAP server is unavailable.
-
PerPhones and PerEmails endpoints do not support filters on "id" attribute of SCIM response.
Connector versions and features
The following subsections describe the different connector version(s) and features available with them.
Features available exclusively in SuccessFactors HR v.2.0
Following are the features that are available exclusively in SuccessFactors HR v.2.0:
- For the Employees object, the Get Employee operation has been modified to get both active and inactive Employees.
NOTE: To insert only Active Members in One Identity Manager, the synchronization workflow configuration must be modified to have a filter based on status attribute in the insert step.
-
Employees endpoint is enhanced to return the Future Hires of the HR system.
Features available exclusively in SuccessFactors HR v.3.0
Following are the features that are available exclusively in SuccessFactors HR v.3.0:
-
The attributes of all object schemas can be disabled or enabled while configuring the connector based on your requirements.
NOTE:
- Mandatory attributes cannot be disabled.
- For more information about how to disable attributes, see Disabling attributes
-
You can configure custom attributes for the SuccessFactors HR v.3.0 SCIM connector in Starling Connect for all objects.
NOTE:
-
For more information about how to configure custom attributes, see Configuring custom attributes in connectors
-
-
The connector supports new PerEmails endpoint that allows you to browse and synchronize the data. It also allows you to update and create email records in the PerEmail table.
-
Fetching of future-dated employees/updates can be prevented by enabling the Fetch effective dated records only flag.
Features available exclusively in SuccessFactors HR v4.0
Following are the features that are available exclusively in SuccessFactors HR v.4.0:
-
The naming convention for all the custom attributes has been enhanced that belongs to a navigational object class.
-
Support for UTC date time.
-
Support for multi-level navigational custom attributes.
Features available exclusively in SuccessFactors HR v5.0
-
The Employees endpoint is enhanced to consider lastModified date of both EmpJob and User table.
-
Added a flag 'Separate Effective And FutureDated Employees Endpoints' which when enabled, makes the Employees endpoint to return effective dated employees only and provides a new endpoint 'FutureDatedEmployees' to return future dated records only.
-
Added a flag 'Activate Custom Attributes With Full Name' which when enabled, the naming convention for all the custom attributes will not be prefixed with the navigational attribute names.
-
Support for multi-level navigational custom attributes with the flag "Activate Custom Attributes with full name" ON.
Features available exclusively in SuccessFactors HR v6.0
-
All the features are available which is supported in v.5.0.
-
v.6.0 has no feature change only addition is that it supports OAuth Authentication.
-
For detailed explanation on setting up the OAuth authentication, refer SetUp OAuth.
Features available exclusively in SuccessFactors HR v7.0
-
v.7.0 has consistent names for all resource types in ResourceTypes endpoint as well as in individual resource endpoints.
Features available exclusively in SuccessFactors HR v8.0
-
The FutureDatedEmployees endpoint is modified to return the next effective record.
Features available exclusively in SuccessFactors HR v9.0
-
READ operations on Custom Foundation Objects are supported. (Refer Custom Foundation Objects in Successfactors HR connector)
-
Update operation on Custom attribute supported. (Refer Creating custom editable/upsertable attributes in Successfactors employee central)
NOTE:Supported under Employees, EmpEmployments and PerPersonals.
-
PickListLables "id" attribute value changes to "optionId,locale".
-
Support for loginMethod attributes with the flag "loginMethod" ON.
-
Two additional attributes employmentStartDate and employmentEndDate are supported in Employees and FutureDatedEmployees. Even though these attributes can have null value in the target, the Starling Connector currently converts null to 0001-01-01T00:00:00.
Features available exclusively in SuccessFactors HR v10.0
-
Positions Endpoint return FutureDated positions using query parameter(?futureDated=true).
-
PerPersonal Endpoint return FutureDated PerPersonal using query parameter(?futureDated=true).
-
Supports new endpoints FutureDatedPerPersonals and FutureDatedPositions to handle the PerPersonal and Position records respectively which are having future effective dates.
-
Supports new endpoint EmpJobRelationships.
Features available exclusively in SuccessFactors HR v10.1
-
Added a flag ”Use base 64 encoded id in synchronization” which when enabled, makes all the endpoints to return one new attribute “targetId”.
-
The "id" in the SCIM response will be base 64 encoded.
Features available exclusively in SuccessFactors HR v10.2
-
In v10.2 onwards, the id of all resources (except custom objects) containin single quote (') in the id will be bypassed using another the single quote for correct usage in the SuccessFactors API requests. For example, id "test'd" will be changed as "test''d".
Features available exclusively in SuccessFactors HR v10.3
-
Added EmpGlobalAssignments endpoint, which supports Get EmpGlobalAssignment by Id and Get All EmpGlobalAssignments.
-
Supports new endpoint EmpEmploymentTerminations.
SuccessFactorsHR connector supports the filter condition for all the objects (i.e., endpoints). We could apply the filter condition and take the filtered records from SuccessFactorsHR target system.
-
The connector supports filter conditions for all the objects.
-
The connector supports filter condition in all the Versions.
-
Supports only AND, OR, and NOT logical operators.
-
Supports only parenthesis () for grouping the condition.
-
The connector supports only single quotes (‘) with filter condition value (ex: phoneType co '10101')
-
Filter conditions should be applied on those attributes that can be filtered. For more information, refer List of Attributes for Filter Condition.
-
Complex attributes are not supported in the filter condition (example: name, email). Only sub-attributes are supported. (email.value, name.familyName)
-
Filter condition should follow the syntax
For example:
1. <attribute_name><space><operator><space>'<string_value or date_value>'
2.<attribute_name><space><operators><space><int_value or bool_value>
-
Filter condition values should NOT have single quotes or percentage with the filter condition value example: (userName co 'O'Malley') or (userName co 'O%Malley%')
-
Filter condition is NOT supported by the connector for Custom attributes.
-
Supports the following operators to filter the values with example should apply in OneIM.
S.No Operators OneIM System filters OneIM Select Objects 1 eq → equal to phoneType eq '00000' phoneType = '00000' 2 ne → not equal to phoneType ne '00000' phoneType <> '00000' 3 co → contains phoneType co '00000' phoneType like '%00000%' 4 sw → starts with phoneType sw '00000' phoneType like '00000%' 5 ew → ends with phoneType ew '00000' phoneType like '%00000' 6 gt → greater than phoneType gt 100 phoneType > 100 7 lt → less than phoneType lt 100 phoneType < 100 8 ge → greater than or equal to phoneType ge 500 phoneType >= 500 9 le → less than or equal to phoneType le 500 phoneType <= 500
Some of the example filter conditions (Should be applied at OneIM):
-
phoneType co '1'
-
phoneType eq '00000'
-
emails.value co 'someone.may' or emails.value co 'test.user'
-
not areaCode co '1' and not ((not countryCode sw '1' or phoneType ew '6') and is Primary eq true)
List of Attributes for Filter Condition
The endpoints exposed by the SuccessFactorsHR connector supports filtering of target system data from One Identity Manager. Here is the detailed list of endpoints with both Filterable and non-filterable attributes, used in filter conditions.
Section | Attributes |
---|---|
Table | EmpJob |
Filterable | userId, timezone, department, businessUnit, division, location, costCenter, company, startDate, seqNumber, workingTimeDirective, emplStatus, event, eventReason, endDate, timeTypeProfileCode, timeRecordingVariant, employmentType, workscheduleCode, regularTemp, payScaleGroup, probationPeriodEndDate, payScaleType, managerId, jobCode, createdBy, position, retired, employeeClass, familyRelationshipWithEmployer, isCompetitionClauseActive, standardHours, jobTitle, countryOfCompany, hazard, travelDistance, isSideLineJobAllowed, payScaleArea, holidayCalendarCode, contractType, payGrade, workLocation, workingDaysPerWeek, empRelationship, isFulltimeEmployee, laborProtection, pensionProtection, payScaleLevel, workerCategory |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | FOBusinessUnit |
Filterable | externalCode, name, description, createdBy, status, createdOn, lastModifiedBy, startDate, endDate, headOfUnit, description_de_DE, name_de_DE, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | FOCompany |
Filterable | externalCode, name, description, currency, createdBy, status, startDate, endDate, defaultLocation, country, standardHours, defaultPayGroup, createdOn, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | FODepartment |
Filterable | externalCode, name, description, createdBy, costCenter, headOfUnit, status, startDate, endDate, lastModifiedDateTime, parent, createdOn, lastModifiedBy, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | FOLocation |
Filterable | externalCode, name, createdBy, createdOn, createdDateTime, lastModifiedBy, lastModifiedOn, lastModifiedDateTime, startDate, endDate, status |
Non filterable |
description, timezone, geozoneFlx, locationGroup, locationGroupFlx, standardHours |
Section | Attributes |
---|---|
Table | FOCostCenter |
Filterable | externalCode, name, description, createdBy, costcenterManager, startDate, endDate, createdOn, lastModifiedBy, parent, status, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | FODivision |
Filterable | externalCode, name, description, createdBy, status, startDate, endDate, lastModifiedDateTime, parent, createdOn, lastModifiedBy, createdDateTime, headOfUnit, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | EmpEmployment |
Filterable | personIdExternal, startDate, createdBy, createdOn, lastModifiedBy, lastModifiedOn |
Non filterable |
firstDateWorked, lastDateWorked |
Section | Attributes |
---|---|
Table | FOEventReason |
Filterable | externalCode, name, status, startDate, lastModifiedBy, createdBy, createdOn, lastModifiedOn |
Non filterable |
event emplStatus, description |
Section | Attributes |
---|---|
Table | JobCode |
Filterable | externalCode, name, status, description, startDate, endDate, lastModifiedBy, createdBy, createdOn, parentJobCode, supervisorLevel, defaultSupervisorLevel, standardHours, workerCompCode, grade, isFulltimeEmployee, jobFunction, regularTemporary, employeeClass, defaultJobLevel, isRegular, jobLevel, defaultEmployeeClass, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | PerEmail |
Filterable | personIdExternal, emailAddress, emailType, lastModifiedDateTime, createdBy, isPrimary, lastModifiedBy, createdDateTime, createdOn, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | PerPersonal |
Filterable | personIdExternal, firstName, lastName, gender, startDate, createdBy, createdOn, lastModifiedBy, lastModifiedOn |
Non filterable |
preferredName |
Section | Attributes |
---|---|
Table | PerPhone |
Filterable | personIdExternal, phoneNumber, phoneType, createdBy, createdOn, areaCode, countryCode, isPrimary, lastModifiedBy, lastModifiedOn |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | PicklistLabel |
Filterable | id, locale, label, optionId |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | PicklistOption |
Filterable | id, status, externalCode |
Non filterable |
NONE |
Section | Attributes |
---|---|
Table | Position |
Filterable | code, description, effectiveStartDate, effectiveEndDate, effectiveStatus, standardHours, department, businessUnit, division, location, costCenter, jobTitle, employeeClass, jobCode, company, payGrade, jobLevel, positionTitle, vacant, regularTemporary, createdBy, createdDate, lastModifiedBy, lastModifiedDate, lastModifiedDateTime, externalName_defaultValue |
Non filterable |
payRange |
Section | Attributes |
---|---|
Table | EmpGlobalAssignments |
Filterable | Id, userId, assignmentType, createdBy, createdDateTime, type, startDate, endDate, payrollEndDate, lastModifiedBy, lastModifiedDateTime, assignmentIdExternal, personIdExternal, lastModifiedOn |
Non filterable |
AssignmentClass |
Section | Attributes |
---|---|
Table | EmpJobRelationships |
Filterable | userId, relationshipType ,createdBy, createdDateTime, startDate, endDate, lastModifiedBy, lastModifiedDateTime, relUserId ,lastModifiedOn |
Non filterable |
None |
Configuring changes in One Identity Manager to support filter conditions
-
Open the Synchronization Editor tool.
-
Select SCIM connector and the Target system
-
Navigate to Schema Classes.
-
Add a new schema class for the perphone.
-
Add the System filter and Select Object condition. Click Commit to Database.
-
In PerPhones mappings, edit the Target system schema class with the recently created schema and click Commit to Database.
-
Run the synchronization.
The Filter conditions will be created.
Conditions on "Fetch Effective Dated Records Only" & "Separate Effective And Future Dated Employees Endpoints" flags based on different use cases (for version v.5.0 and above)
-
Use Case #1: Get effective or future dated(if effective record does not exist) employee records in the employees endpoint response
-
"Fetch Effective Dated Records Only" - OFF
-
"Separate Effective And FutureDated Employees Endpoints" - OFF
-
-
Use Case #2: Get only effective employee records in the employees endpoint response and no separate endpoint for future dated employee records
-
"Fetch Effective Dated Records Only" - ON
-
"Separate Effective And FutureDated Employees Endpoints" - OFF
-
-
Use Case #3: Get only effective employee records in the employees endpoint response and get a separate endpoint for future dated employee records
-
"Fetch Effective Dated Records Only" - ON
-
"Separate Effective And FutureDated Employees Endpoints" - ON
-