Employee Data Models

Here are the different models you can subscribe to while doing a sync.

Model IDEvent Data KeyDescription
employee_profileprofileGet profile data of an employee like first and last names, date of birth, work email, termination date, hire date, etc.
employee_contactInfocontactInfoGet personal contact details of an employee like personal emails and phone numbers
employee_orgStructureorgStructureGet hierarchical data related to an employee like employee's manager, department and designation.
employee_dependentdependentsGet family members' data for an employee.
employee_locationlocationsGet work and home addresses of an employee.
employee_bankAccountbankAccountsGet an employee's bank account details
employee_kycDocumentsemployeeKYCGet an employee's KYC documents
employee_identificationemployeeIdentificationDataGet an employee's identification details
employee_profilePictureemployeeProfilePictureGet an employee's Profile Picture
employee_compensationcompensationGet compensation information for an employee
employee_deductionsdeductionsGet benefits and deductions information for an employee
employee_w4w4DataGet W4 data for an employee
employee_rawValuesrawValuesGet the raw values of enum fields like employmentStatus, employmentType, maritalStatus, gender
employee_leave_requestsleaveRequestsGet the leave requests for an employee
custom_fieldscustomFieldsEdit 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 dataTypein sync request body is employee

Employee Profile

Model ID: employee_profile

NameTypeDescription
firstNameString
lastNameString
idStringUnique ID of the employee as defined in origin system
employeeNumberStringUser generated employee number of the employee
workEmailStringThe official email of an employee.
startDateDateThe first day of an employee at the organization.
birthDateDateDate of birth of the employee
terminationDateDateLast working day of an employee
employmentStatusEnumOne of
ACTIVE
INACTIVE
NOT_SPECIFIED
maritalStatusEnumOne of
MARRIED,
SINGLE,
WIDOWED,
SEPARATED,
DIVORCED,
NOT_SPECIFIED
genderEnumOne of
MALE
FEMALE
NOT_SPECIFIED
NON_BINARY
employmentTypeEnumOne of
FULL_TIME
PART_TIME
CONTRACT
NOT_SPECIFIED

Employee Contact Info

Model ID: employee_contactInfo

NameTypeDescription
personalEmailsList[String]
phonesList[Phone]

Phone

NameTypeDescription
typeEnumOne of
WORK,
PERSONAL,
HOME,
NOT_SPECIFIED
numberString

Employee Org Structure

Model ID: employee_orgStructure

NameTypeDescription
designationStringJob title of the employee
departmentString
managerEmployee ManagerThe manager of the employee

Employee Manager

NameTypeDescription
idStringEmployee's manager's employee id in origin app
workEmailStringEmployee's manager's work email in origin app

Employee Dependents

Model ID: employee_dependent

NameTypeDescription
dependentsList[Employee Dependent]

Employee Dependent

NameTypeDescription
idStringDependent Id
firstNameStringDependent's first name
lastNameStringDependent's last name
relationStringPossible values are
NOT_SPECIFIED,
PARENT,
FATHER,
MOTHER,
SON,
DAUGHTER,
CHILD,
BROTHER,
SISTER,
SIBLING,
HUSBAND,
WIFE,
SPOUSE,

or as specified in the source app
birthDateDateDependent's date of birth, Eg: 2020-10-11T00:00:00Z
genderStringOne of
MALE
FEMALE
NOT_SPECIFIED
NON_BINARY

or as specified in the source app

Employee Locations

Model ID: employee_location

NameTypeDescription
workAddressEmployee LocationWork location
permanentAddressEmployee LocationPermanent residential address
presentAddressEmployee LocationPresent residential address

Employee Location

NameTypeDescription
addressLine1String
addressLine2String
cityString
stateString
countryEnumAlpha 2 code, Refer https://www.iban.com/country-codes or else country field in origin data
zipCodeString
addressTypeEnumOne of
WORK
HOME_PRESENT
HOME_PERMANENT

Employee Bank Accounts

Model ID: employee_bankAccount

NameTitleDescription
bankAccountsList[Bank Account]

Bank Account

NameTypeDescription
accountNumberString
accountTypeEnumOne of
SAVINGS,
CURRENT,
CHECKING,
NOT_SPECIFIED
bankNameString
routingInfoList[Routing Info]
payTypesList[String]Can contain:
ALL,
REGULAR,
EXPENSE,
BONUS

or as specified in the source app

Routing Info

NameTypeDescription
typeEnumOne of
ROUTING_NUMBER,
IBAN,
SWIFT_CODE,
IFSC_CODE,
BANK_IDENTIFICATION_CODE,
BRANCH_CODE
numberString

Employee KYC Details

Model ID: employee_kycDocuments

NameTypeDescription
aadharNumberString
aadharURLString
panNumberString
panURLString

Employee Identification Details

Model ID: employee_identification

NameTypeDescription
employeeIdentificationDataList[ID Data]

ID Data

NameTypeDescription
typeEnumOne of
NATIONAL_ID,
LICENSE,
PASSPORT,
OTHERS,
NOT_SPECIFIED
subTypeStringEg, SSN, ITIN
identificationNumberString

Employee Profile Picture

Model ID: employee_profilePicture

NameTypeDescription
pictureNameString
pictureURLString

Employee Compensation

Model ID: employee_compensation

NameTypeDescription
fixedList[compensationItemData]
variableList[compensationItemData]
stockList[stockData]

Compensation Item Data

NameTypeDescription
typeEnumOne of
SALARY,
ALLOWANCE,
BONUS,
MERIT,
COMMISSION

or as specified in the source app
planIdString
amountDouble
percentageDouble
currencyString
payPeriodEnumOne of
ANNUAL,
WEEKLY,
QUARTERLY,
SEMI MONTHLY,
MONTHLY,
HOURLY,
BI WEEKLY,
DAILY,

or as specified in the source app
frequencyEnumOne of
ANNUAL,
WEEKLY,
QUARTERLY,
SEMI MONTHLY,
MONTHLY,
HOURLY,
BI WEEKLY,
DAILY,

or as specified in the source app
startDateDate
endDateDate

Stock Data

NameTypeDescription
planIdString
typeString
targetSharesDouble
optionsPercentageDouble
stockPercentageDouble
vestingScheduleIdString
vestingScheduleNameString

Employee Deductions

Model ID: employee_deduction

NameTypeDescription
deductionsList[deductionItem]

Deduction Item

NameTypeDescription
typeEnumOne of
401k,
VISION,
DENTAL,
HEALTH,
HSA,
FSA,
TAX,
PENSION,

or as specified in the source app
nameString
employeeDeductionIdString
deductionIdString
deductionCodeString
employeeContributioncontribution
employerContributioncontribution
currencyString
frequencyEnumOne of
ANNUAL,
WEEKLY,
QUARTERLY,
SEMI MONTHLY,
MONTHLY,
HOURLY,
BI WEEKLY,
DAILY,
ONE_TIME,

or as specified in the source app
startDateDate
endDateDate
isTaxBoolean

Contribution

NameTypeDescription
amountDouble
percentageDouble

Employee W4 Details

Model ID: employee_w4

NameTypeDescription
filingStatusString
hasMultipleJobsBooleanOne of
TRUE,
FALSE
totalDependentsAmountDouble
qualifiedDependentsAmountDouble
otherDependentsAmountDouble
numberOfQualifiedDependentsInt
numberOfOtherDependentsInt
otherIncomeAmountDouble
deductionsAmountDouble
extraWithholdingAmountDouble
withholdingStatusEnumOne of
EXEMPT,
NOT-EXEMPT

or as specified in source app

Employee Raw Values

Model ID: employee_rawValues

NameTypeDescription
profileProfile Raw Values

Profile Raw Values

NameTypeDescription
employmentStatusString
maritalStatusString
genderString
employmentTypeString

Employee Leave Requests

Model ID: employee_leave_requests

NameTypeDescription
idStringUnique identifier of the leave request
startDateDateExample: 2022-09-23T00:00:00Z
endDateDateExample: 2022-09-30T00:00:00Z
requestedOnDateExample: 2022-09-20T13:45:00Z
noteStringNote by the employee requesting the leave
statusEnumOne of
REQUESTED,
APPROVED,
DECLINED,
CANCELLED,
DELETED,
NOT_SPECIFIED
leaveTypeLeaveTypeSee the Leave Type model below
unitEnumThe measurement that the HRIS uses to count time off requested.
One of
DAYS,
HOURS
NOT_SPECIFIED
amountDoubleThe leave time off quantity measured by the prescribed unit
Example: 7.0
isPaidEnumOne of
TRUE,
FALSE,
NOT_SPECIFIED

Leave Type

NameTypeDescription
idStringUnique identifier of the leave type
nameString
typeEnumOne of
VACATION,
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

NameTypeDescription
fieldsMap<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"
    }
  ],
  "rawValues": {
    "profile": {
      "employmentStatus": "Probation",
      "maritalStatus": "single",
      "gender": "male",
      "employmentType": "full time"
    }
  }
}