Here are the different models you can subscribe to while doing a sync.
Model ID | Event Data Key | Description |
---|---|---|
employee_profile | profile | Get profile data of an employee like first and last names, date of birth, work email, termination date, hire date, etc. |
employee_contactInfo | contactInfo | Get personal contact details of an employee like personal emails and phone numbers |
employee_orgStructure | orgStructure | Get hierarchical data related to an employee like employee's manager, department and designation. |
employee_dependent | dependents | Get family members' data for an employee. |
employee_location | locations | Get work and home addresses of an employee. |
employee_bankAccount | bankAccounts | Get an employee's bank account details |
employee_kycDocuments | employeeKYC | Get an employee's KYC documents |
employee_identification | employeeIdentificationData | Get an employee's identification details |
employee_profilePicture | employeeProfilePicture | Get an employee's Profile Picture |
employee_compensation | compensation | Get compensation information for an employee |
employee_deductions | deductions | Get benefits and deductions information for an employee |
employee_w4 | w4Data | Get W4 data for an employee |
employee_company | company | Get the details about the employee's company |
employee_rawValues | rawValues | Get the raw values of enum fields like employmentStatus, employmentType, maritalStatus, gender |
employee_leave_requests | leaveRequests | Get the leave requests for an employee |
custom_fields | customFields | Edit Field Mappings from the Knit dashboard to get custom fields |
All these models have been detailed out below for your reference.
Use the Model ID for syncs
While invoking sync APIs, pass these model IDs in order to get the desired data. Make sure the
dataType
in sync request body isemployee
Employee Profile
Model ID: employee_profile
Name | Type | Description |
---|---|---|
firstName | String | |
lastName | String | |
id | String | Unique ID of the employee as defined in origin system |
employeeNumber | String | User generated employee number of the employee |
workEmail | String | The official email of an employee. |
startDate | Date | The first day of an employee at the organization. |
birthDate | Date | Date of birth of the employee |
terminationDate | Date | Last working day of an employee |
employmentStatus | Enum | One ofACTIVE INACTIVE NOT_SPECIFIED |
maritalStatus | Enum | One ofMARRIED ,SINGLE ,WIDOWED ,SEPARATED ,DIVORCED ,NOT_SPECIFIED |
gender | Enum | One ofMALE FEMALE NOT_SPECIFIED NON_BINARY |
employmentType | Enum | One ofFULL_TIME PART_TIME CONTRACT NOT_SPECIFIED |
Employee Contact Info
Model ID: employee_contactInfo
Name | Type | Description |
---|---|---|
personalEmails | List[String] | |
phones | List[Phone] |
Phone
Name | Type | Description |
---|---|---|
type | Enum | One ofWORK ,PERSONAL ,HOME ,NOT_SPECIFIED |
number | String |
Employee Org Structure
Model ID: employee_orgStructure
Name | Type | Description |
---|---|---|
designation | String | Job title of the employee |
department | String | |
manager | Employee Manager | The manager of the employee |
Employee Manager
Name | Type | Description |
---|---|---|
id | String | Employee's manager's employee id in origin app |
workEmail | String | Employee's manager's work email in origin app |
Employee Dependents
Model ID: employee_dependent
Name | Type | Description |
---|---|---|
dependents | List[Employee Dependent] |
Employee Dependent
Name | Type | Description |
---|---|---|
id | String | Dependent Id |
firstName | String | Dependent's first name |
lastName | String | Dependent's last name |
relation | String | Possible values areNOT_SPECIFIED ,PARENT ,FATHER ,MOTHER ,SON ,DAUGHTER ,CHILD ,BROTHER ,SISTER ,SIBLING ,HUSBAND ,WIFE ,SPOUSE ,or as specified in the source app |
birthDate | Date | Dependent's date of birth, Eg: 2020-10-11T00:00:00Z |
gender | String | One ofMALE FEMALE NOT_SPECIFIED NON_BINARY or as specified in the source app |
Employee Locations
Model ID: employee_location
Name | Type | Description |
---|---|---|
workAddress | Employee Location | Work location |
permanentAddress | Employee Location | Permanent residential address |
presentAddress | Employee Location | Present residential address |
Employee Location
Name | Type | Description |
---|---|---|
addressLine1 | String | |
addressLine2 | String | |
city | String | |
state | String | |
country | Enum | Alpha 2 code, Refer https://www.iban.com/country-codes or else country field in origin data |
zipCode | String | |
addressType | Enum | One of WORK HOME_PRESENT HOME_PERMANENT |
Employee Bank Accounts
Model ID: employee_bankAccount
Name | Title | Description |
---|---|---|
bankAccounts | List[Bank Account] |
Bank Account
Name | Type | Description |
---|---|---|
accountNumber | String | |
accountType | Enum | One ofSAVINGS ,CURRENT ,CHECKING ,NOT_SPECIFIED |
bankName | String | |
routingInfo | List[Routing Info] | |
payTypes | List[String] | Can contain:ALL ,REGULAR ,EXPENSE ,BONUS or as specified in the source app |
Routing Info
Name | Type | Description |
---|---|---|
type | Enum | One ofROUTING_NUMBER ,IBAN ,SWIFT_CODE ,IFSC_CODE ,BANK_IDENTIFICATION_CODE ,BRANCH_CODE |
number | String |
Employee KYC Details
Model ID: employee_kycDocuments
Name | Type | Description |
---|---|---|
aadharNumber | String | |
aadharURL | String | |
panNumber | String | |
panURL | String |
Employee Identification Details
Model ID: employee_identification
Name | Type | Description |
---|---|---|
employeeIdentificationData | List[ID Data] |
ID Data
Name | Type | Description |
---|---|---|
type | Enum | One ofNATIONAL_ID ,LICENSE ,PASSPORT ,OTHERS ,NOT_SPECIFIED |
subType | String | Eg, SSN, ITIN |
identificationNumber | String |
Employee Profile Picture
Model ID: employee_profilePicture
Name | Type | Description |
---|---|---|
pictureName | String | |
pictureURL | String |
Employee Compensation
Model ID: employee_compensation
Name | Type | Description |
---|---|---|
fixed | List[compensationItemData] | |
variable | List[compensationItemData] | |
stock | List[stockData] |
Compensation Item Data
Name | Type | Description |
---|---|---|
type | Enum | One ofSALARY ,ALLOWANCE ,BONUS ,MERIT ,COMMISSION or as specified in the source app |
planId | String | |
amount | Double | |
percentage | Double | |
currency | String | |
payPeriod | Enum | One ofANNUAL ,WEEKLY ,QUARTERLY ,SEMI MONTHLY ,MONTHLY ,HOURLY ,BI WEEKLY ,DAILY ,or as specified in the source app |
frequency | Enum | One ofANNUAL ,WEEKLY ,QUARTERLY ,SEMI MONTHLY ,MONTHLY ,HOURLY ,BI WEEKLY ,DAILY ,or as specified in the source app |
startDate | Date | |
endDate | Date |
Stock Data
Name | Type | Description |
---|---|---|
planId | String | |
type | String | |
targetShares | Double | |
optionsPercentage | Double | |
stockPercentage | Double | |
vestingScheduleId | String | |
vestingScheduleName | String |
Employee Deductions
Model ID: employee_deduction
Name | Type | Description |
---|---|---|
deductions | List[deductionItem] |
Deduction Item
Name | Type | Description |
---|---|---|
type | Enum | One of401k ,VISION ,DENTAL ,HEALTH ,HSA ,FSA ,TAX ,PENSION ,or as specified in the source app |
name | String | |
employeeDeductionId | String | |
deductionId | String | |
deductionCode | String | |
employeeContribution | contribution | |
employerContribution | contribution | |
currency | String | |
frequency | Enum | One ofANNUAL ,WEEKLY ,QUARTERLY ,SEMI MONTHLY ,MONTHLY ,HOURLY ,BI WEEKLY ,DAILY ,ONE_TIME ,or as specified in the source app |
startDate | Date | |
endDate | Date | |
isTax | Boolean |
Contribution
Name | Type | Description |
---|---|---|
amount | Double | |
percentage | Double |
Employee W4 Details
Model ID: employee_w4
Name | Type | Description |
---|---|---|
filingStatus | String | |
hasMultipleJobs | Boolean | One ofTRUE ,FALSE |
totalDependentsAmount | Double | |
qualifiedDependentsAmount | Double | |
otherDependentsAmount | Double | |
numberOfQualifiedDependents | Int | |
numberOfOtherDependents | Int | |
otherIncomeAmount | Double | |
deductionsAmount | Double | |
extraWithholdingAmount | Double | |
withholdingStatus | Enum | One ofEXEMPT ,NOT-EXEMPT or as specified in source app |
Employee Company Details
Model ID: employee_company
Name | Type | Description |
---|---|---|
companyId | String | |
companyName | String |
Employee Raw Values
Model ID: employee_rawValues
Name | Type | Description |
---|---|---|
profile | Profile Raw Values |
Profile Raw Values
Name | Type | Description |
---|---|---|
employmentStatus | String | |
maritalStatus | String | |
gender | String | |
employmentType | String |
Employee Leave Requests
Model ID: employee_leave_requests
Name | Type | Description |
---|---|---|
id | String | Unique identifier of the leave request |
startDate | Date | Example: 2022-09-23T00:00:00Z |
endDate | Date | Example: 2022-09-30T00:00:00Z |
requestedOn | Date | Example: 2022-09-20T13:45:00Z |
note | String | Note by the employee requesting the leave |
status | Enum | One ofREQUESTED ,APPROVED ,DECLINED ,CANCELLED ,DELETED ,NOT_SPECIFIED |
leaveType | LeaveType | See the Leave Type model below |
unit | Enum | The measurement that the HRIS uses to count time off requested. One of DAYS ,HOURS NOT_SPECIFIED |
amount | Double | The leave time off quantity measured by the prescribed unit Example: 7.0 |
isPaid | Enum | One ofTRUE ,FALSE ,NOT_SPECIFIED |
Leave Type
Name | Type | Description |
---|---|---|
id | String | Unique identifier of the leave type |
name | String | |
type | Enum | One ofVACATION ,SICK ,PERSONAL ,JURY_DUTY ,VOLUNTEER ,BEREAVEMENT ,NOT_SPECIFIED |
Custom Fields
Model ID: custom_fields
Edit Field Mappings from the Knit dashboard for each integrated account to get unmapped fields
Name | Type | Description |
---|---|---|
fields | Map<String, Object> |
Event Data Example
{
"profile": {
"firstName": "0XcrE7zm5UMipuT",
"lastName": "twkFD16f8q4D2R7",
"id": "omLAR353IjXZ4Mt",
"employeeNumber": "004",
"workEmail": "[email protected]",
"startDate": "1970-01-01T00:00:00Z",
"birthDate": "1970-01-01T00:00:00Z",
"terminationDate": "1970-01-01T00:00:00Z",
"employmentStatus": "ACTIVE",
"maritalStatus": "SINGLE",
"gender": "MALE",
"employmentType": "FULL_TIME"
},
"contactInfo": {
"personalEmails": [
"[email protected]",
"[email protected]"
],
"phones": [
{
"type": "PERSONAL",
"number": "564-871-1385"
}
]
},
"orgStructure": {
"designation": "m7Vv4fhvVpoGvM0",
"department": "kLkUPMpzsCEErbt",
"manager": {
"id": "RALpFjOQBAjCozi",
"workEmail": "[email protected]"
}
},
"locations": {
"workAddress": {
"addressLine1": "jHvul9kxXMmpGsa",
"addressLine2": "ZRZEUuGtghgY9bx",
"city": "Bengaluru",
"state": "KA",
"country": "IN",
"zipCode": "560016",
"addressType": "WORK"
},
"permanentAddress": null,
"presentAddress": null
},
"dependents": [
{
"id": "iaNR6Abj8qksGTe",
"firstName": "cQxqiWWVLMhMDsO",
"lastName": "lCnk39U3TUCC38t",
"birthDate": "1970-01-01T00:00:00Z",
"relation": "FATHER",
"gender": "MALE"
},
{
"id": "nVtWLlJluoG6CgL",
"firstName": "gCRiIxi1aSTyEkd",
"lastName": "HMfoPrjy4dGyxiJ",
"birthDate": "1970-01-01T00:00:00Z",
"relation": "MOTHER",
"gender": "FEMALE"
}
],
"bankAccounts": [
{
"accountNumber": "ROY12486516AS",
"accountType": "SAVINGS",
"bankName": "Waystar Roy Bank",
"routingInfo": [
{
"type": "IFSC_CODE",
"number": "AIDN309301034"
},
{
"type": "BRANCH_CODE",
"number": "AIDN"
}
]
},
{
"accountNumber": "548493043F903J",
"accountType": "Chekcing",
"bankName": "Gold Star Bank",
"routingInfo": [
{
"type": "BANK_IDENTIFICATION_CODE",
"number": "GSBK302K0140EW"
}
]
}
],
"employeeKYC": {
"aadharNumber": "46743545",
"aadharURL": "link.com/aadhar",
"panNumber": "PED5663",
"panURL": "link.com/pan"
},
"employeeIdentificationData": [
{
"type": "NATIONAL_ID",
"subType": "SSN",
"identificationNumber": "RIDOFJSIDJF"
}
],
"employeeProfilePicture": {
"pictureName": "avatar.jpg",
"pictureURL": "link.com/picture"
},
"compensation": {
"fixed": [
{
"type": "SALARY",
"planId": "SALARY_Salary_Plan",
"amount": 192674.38,
"percentage": null,
"currency": "USD",
"payPeriod": "MONTHLY",
"frequency": "ANNUAL"
},
{
"type": "ALLOWANCE",
"planId": "ALLOWANCE_Cell_Mobile_Phone_Allowance_USA",
"amount": 150,
"percentage": null,
"currency": "USD",
"payPeriod": "MONTHLY",
"frequency": "MONTHLY"
},
{
"type": "ALLOWANCE",
"planId": "ALLOWANCE_Car_Allowance_Plan",
"amount": 500,
"percentage": null,
"currency": "USD",
"payPeriod": "MONTHLY",
"frequency": "MONTHLY"
}
],
"variable": [
{
"type": "BONUS",
"planId": "BONUS_PERCENT_BASED_Executive_Bonus_Plan",
"amount": null,
"percentage": 0.2,
"currency": "USD",
"payPeriod": "MONTHLY",
"frequency": "QUARTERLY"
}
],
"stock": [
{
"planId": "STOCK_2008_Stock_Plan_Executive",
"type": "Options",
"targetShares": 5000,
"optionsPercentage": 0.85,
"stockPercentage": 0.15,
"vestingScheduleId": "4YQ",
"vestingScheduleName": "4-Year, Quarterly"
}
]
},
"deductions": [
{
"type": "401k",
"name": "401k Deduction Plan",
"deductionId": "PF9434F9",
"deductionCode": "DEDUC401",
"employeeContribution": {
"amount": 100.0,
"percentage": 0
},
"employerContribution": {
"amount": 100.0,
"percentage": 0
},
"currency": "USD",
"frequency": "MONTHLY",
"startDate": "2023-01-01T00:00:Z",
"endDate": "2023-12-31T00:00:Z"
}
],
"customFields": {
"fields": {
"unmappedFieldKey": "value"
}
},
"leaveRequests": [
{
"id": "1437",
"startDate": "2024-02-19T00:00:00Z",
"endDate": "2024-02-23T00:00:00Z",
"requestedOn": "2024-01-04T00:00:00Z",
"note": null,
"status": "REQUESTED",
"leaveType": {
"id": "78",
"name": "Vacation",
"type": "VACATION"
},
"unit": "HOURS",
"amount": 40.0,
"isPaid": "NOT_SPECIFIED"
},
{
"id": "1448",
"startDate": "2024-03-20T00:00:00Z",
"endDate": "2024-03-21T00:00:00Z",
"requestedOn": "2024-03-19T00:00:00Z",
"note": "Going to Disneyland",
"status": "APPROVED",
"leaveType": {
"id": "78",
"name": "Vacation",
"type": "VACATION"
},
"unit": "HOURS",
"amount": 16.0,
"isPaid": "NOT_SPECIFIED"
}
],
"w4Data": {
"filingStatus": "JOINTLY_FILED",
"hasMultipleJobs": "TRUE",
"totalDependentsAmount": "200.0",
"qualifiedDependentsAmount": "100.0",
"otherDependentsAmount": "100.0",
"numberOfQualifiedDependents": "1",
"numberOfOtherDependents": "1",
"otherIncomeAmount": "500.0",
"deductionsAmount": "300.0",
"extraWithholdingAmount": "100.0",
"withholdingStatus": "EXEMPT"
},
"company": {
"companyId": "WSRC_TECH",
"companyName": "Waystar Royco Technologies"
},
"rawValues": {
"profile": {
"employmentStatus": "Probation",
"maritalStatus": "single",
"gender": "male",
"employmentType": "full time"
}
}
}