Integration with Signify using the user import API
The user import API should be used when a third party needs to push data to Signify on a specific ruleset to update employee records.
1. Get an Access Token
InFirst, orderyou need to useauthenticate and get an access token.
Run the APIcURL command (replace the followingvalues processas needsneeded):
curl --request POST \
--url https://live.signifyhr.co.za/api/identity/v1/CreateUserAccessToken \
--header 'Content-Type: application/json' \
--cookie .AspNetCore.Antiforgery.3CuCAIFqZrU=YOUR_ANTIFORGERY_COOKIE \
--data '{"username":"YOUR_USERNAME","password":"YOUR_PASSWORD","clientId":"YOUR_CLIENT_ID","skipRulesetActiveCheck":false}'
The value YOUR_CLIENT_ID can be retrieved on the ruleset by going to
ObtainManagement valid| loginSystem credentialsAccess| forAdditional anService APISection user| forCopy the ruleset,GUID youe.g.
2. Use the detailsAccess Token to generateImport anUsers
Copy bearerthe value of accessToken (it starts with Bearer ...).
Now, use this token
Doin athe Postnext cURL command to
import your user data:
{domain}curl --request POST \
--url https://live.signifyhr.co.za/api/importapi/v1/ImportUsers \
--header 'Authorization: YOUR_ACCESS_TOKEN' \
--header 'Content-Type: application/json' \
--cookie .AspNetCore.Antiforgery.aJ9qYnOEx9w=YOUR_ANTIFORGERY_COOKIE \
--data '{
"users": [
{
"username": "JDoe123",
"name": "John",
"surname": "Doe",
...
}
// Add more users as needed
]
}'
Add
{
"users": [
{
"externalId": 0,
"username": "string",
"name": "string",
"surname": "string",
"emailAddress": "string",
"idNumber": "string",
"mobileNumber": "string",
"orgLevel1": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel2": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel3": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel4": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel5": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel6": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel7": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel8": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"orgLevel9": {
"externalId": 0,
"name": "string",
"code": "string",
"workLocationName": "string"
},
"jobExternalId": 0,
"jobTitle": "string",
"jobCode": "string",
"positionExternalId": 0,
"positionTitle": "string",
"positionCode": "string",
"appointmentType": "string",
"lineManagerUsername": "string",
"performanceManagerUsername": "string",
"startDate": "string",
"endDate": "string",
"reasonForTermination": "string",
"passportNumber": "string",
"payrollConnectorName": "string",
"payrollId": "string",
"middleName": "string",
"initials": "string",
"title": "string",
"knownAs": "string",
"homeLanguage": "string",
"gender": "string",
"race": "string",
"citizenship": "string",
"maritalStatus": "string",
"maritalDate": "string",
"workNumber": "string",
"homeNumber": "string",
"birthDay": "string",
"residentialUnitNumber": "string",
"residentialComplexName": "string",
"residentialStreetNumber": "string",
"residentialStreetName": "string",
"residentialSuburbDistrict": "string",
"residentialCityTown": "string",
"residentialCountry": "string",
"residentialProvince": "string",
"residentialPostalCode": "string",
"residentialAsPostal": "string",
"postalUnitNumber": "string",
"postalComplexName": "string",
"postalStreetNumber": "string",
"postalStreetName": "string",
"postalSuburbDistrict": "string",
"postalCityTown": "string",
"postalCountry": "string",
"postalProvince": "string",
"postalCode": "string",
"occupationalCategory": "string",
"occupationalLevel": "string",
"jobOfoCode": "string",
"jobGrade": "string",
"gradingType": "string",
"departmentManagerUsername": "string",
"trainingManagerUsername": "string",
"pdpFirstApproverUsername": "string",
"pdpSecondApproverUsername": "string",
"leaveManagerUsername": "string",
"salaryReviewManagerUsername": "string",
"talentManagementManagerUsername": "string",
"secondaryReportingManagerUsername": "string",
"lineManagerOnceRemovedUsername": "string",
"workflowOriginatorUsername": "string",
"financeManagerUsername": "string",
"financeOfficerUsername": "string",
"hrOfficerUsername": "string",
"hrRecruitmentOfficerUsername": "string",
"businessUnitHrManagerUsername": "string",
"disability": "string",
"alternateEmailAddress": "string",
"location": "string",
"employeeCode": "string",
"startDateInGroup": "string",
"secondaryJobRequisitionApproverUsername": "string",
"leaveManagerAlternateApproverUsername": "string",
"validationReason": "string",
"startDateInCompany": "string"
}
]
}
