> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kombo.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# HR WORKS HRIS Integration

> HR WORKS connector for Kombo's HRIS API

The HR WORKS HRIS integration allows you to sync HRIS data between HR WORKS and your application through Kombo's unified API. The tool slug for this connector is `hrworks`.

## Guides and Resources

<CardGroup cols={2}>
  <Card title="Connection Setup Guide" icon="link" href="https://help.kombo.dev/hc/en-us/articles/15064269328145">
    Step-by-step instructions to connect your HR WORKS account to Kombo.
  </Card>
</CardGroup>

## Supported Features & Coverage

<Tabs>
  <Tab title="Models">
    <Accordion title="Work Locations">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | name                |       |
      | address             |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Employees">
      | Field                 | Notes |
      | --------------------- | ----- |
      | id                    |       |
      | remote\_id            |       |
      | changed\_at           |       |
      | remote\_deleted\_at   |       |
      | employee\_number      |       |
      | first\_name           |       |
      | last\_name            |       |
      | job\_title            |       |
      | work\_email           |       |
      | personal\_email       |       |
      | mobile\_phone\_number |       |
      | ssn                   |       |
      | gender                |       |
      | employment\_status    |       |
      | employment\_type      |       |
      | avatar                |       |
      | work\_location\_id    |       |
      | manager\_id           |       |
      | home\_address         |       |
      | date\_of\_birth       |       |
      | start\_date           |       |
      | termination\_date     |       |
      | custom\_fields        |       |
      | integration\_fields   |       |
      | remote\_data          |       |
    </Accordion>

    <Accordion title="Absence Types">
      | Field                   | Notes |
      | ----------------------- | ----- |
      | id                      |       |
      | remote\_id              |       |
      | changed\_at             |       |
      | remote\_deleted\_at     |       |
      | name                    |       |
      | unit                    |       |
      | half\_days\_supported   |       |
      | exact\_times\_supported |       |
      | remote\_data            |       |
    </Accordion>

    <Accordion title="Absences">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | employee\_id        |       |
      | start\_date         |       |
      | end\_date           |       |
      | start\_half\_day    |       |
      | end\_half\_day      |       |
      | amount              |       |
      | unit                |       |
      | status              |       |
      | type\_id            |       |
    </Accordion>

    <Accordion title="Employments">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | employee\_id        |       |
      | job\_title          |       |
      | employment\_type    |       |
      | effective\_date     |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Groups">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | name                |       |
      | type                |       |
      | parent\_id          |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Time Off Balances">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | employee\_id        |       |
      | type\_id            |       |
      | balance             |       |
      | balance\_unit       |       |
      | used                |       |
      | used\_unit          |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Employee Document Categories">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | name                |       |
      | remote\_data        |       |
    </Accordion>

    <Accordion title="Employee <> Group">
      | Field               | Notes |
      | ------------------- | ----- |
      | employee\_id        |       |
      | team\_id            |       |
      | id                  |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
    </Accordion>
  </Tab>

  <Tab title="Actions">
    <Accordion title="Create absence">
      | Input Field       | Notes |
      | ----------------- | ----- |
      | employee\_id      |       |
      | absence\_type\_id |       |
      | status            |       |
      | start\_date       |       |
      | end\_date         |       |
      | start\_half\_day  |       |
      | end\_half\_day    |       |
      | employee\_note    |       |
      | start\_time       |       |
      | end\_time         |       |
    </Accordion>

    <Accordion title="Delete absence">
      | Input Field | Notes |
      | ----------- | ----- |
      | absence\_id |       |
    </Accordion>

    <Accordion title="Create employee (v2)">
      <Info>For detailed information about [creating employees with form](/hris/implementation-guide/create-employee), please see the [**Create Employee with Form** tab](#create-employee-with-form) above.</Info>

      | Input Field          | Notes |
      | -------------------- | ----- |
      | staffing\_entity\_id |       |
      | properties           |       |
    </Accordion>

    <Accordion title="Add document to employee">
      <Note>
        The maximum file size allowed by HR Works' API is 10MB
      </Note>

      | Input Field            | Notes |
      | ---------------------- | ----- |
      | employee\_id           |       |
      | category\_id           |       |
      | document.name          |       |
      | document.content\_type |       |
      | document.data\_url     |       |
      | document.data          |       |
    </Accordion>
  </Tab>

  <Tab title="Features">
    | Feature            | Notes |
    | ------------------ | ----- |
    | Connection Guide   |       |
    | Prerequisites      |       |
    | Create credentials |       |
    | API Passthrough    |       |
    | Scope Testing      |       |
    | Per Model Tests    |       |
    | Group Types        |       |
    | DEPARTMENT         |       |
    | COST\_CENTER       |       |
  </Tab>

  <Tab title="Create Employee with Form">
    <Note>
      The behavior of this action depends on the creation method selected during setup. With "Onboarding", an onboarding document is created that the new employee can complete. With "Direct", the employee record is created directly in HR WORKS (requires a Person ID and Personnel Number).
    </Note>

    This integration supports multiple employee creation forms for different use cases:

    <Tabs>
      <Tab title="direct">
        <Info>
          Some **required** form fields are referencing the following data models:

          * Groups

          Consider enabling these in your [scope configuration](/hris/features/scopes).
        </Info>

        <ResponseField name="personId" type="text" required>**Person ID**<br />
        The user/login ID for the new employee. Must be unique in HR WORKS.</ResponseField>
        <ResponseField name="personnelNumber" type="text" required>**Personnel Number**<br />
        The personnel number for the new employee. Must be unique in HR WORKS.</ResponseField>
        <ResponseField name="firstName" type="text" required>**First Name**<br />
        The first name of the employee<br />
        Unified field: `first_name`</ResponseField>
        <ResponseField name="lastName" type="text" required>**Last Name**<br />
        The last name of the employee<br />
        Unified field: `last_name`</ResponseField>
        <ResponseField name="joinDate" type="date" required>**Start Date**<br />
        Start date of the employee. Also considered to be the hire date<br />
        Unified field: `start_date`</ResponseField>
        <ResponseField name="organizationUnitNumber" type="single_select" required>**Organization Unit**<br />
        The organization unit the new employee will be assigned to.<br />
        References `/v1/hris/groups?types=DEPARTMENT`</ResponseField>
        <ResponseField name="email" type="text">**Work Email**<br />
        The business email address of the employee.<br />
        Unified field: `work_email`</ResponseField>
        <ResponseField name="gender" type="single_select">**Gender**<br />
        The gender of the employee<br />
        Unified field: `gender`</ResponseField>
        <ResponseField name="birthday" type="date">**Date of Birth**<br />
        The employee's date of birth<br />
        Unified field: `date_of_birth`</ResponseField>
        <ResponseField name="nationality" type="text">**Nationality**<br />
        The nationality of the new employee (three-letter country code, e.g. DEU).<br />
        Unified field: `nationality`</ResponseField>

        <ResponseField name="address" type="object">
          **Address**

          <Expandable title="properties">
            <ResponseField name="street" type="text">**Street 1**<br />
            The street address of the employee<br />
            Unified field: `home_address.street_1`</ResponseField>
            <ResponseField name="street_number" type="text">**Street Number**</ResponseField>
            <ResponseField name="zip_code" type="text">**ZIP Code**<br />
            The ZIP code of the employee<br />
            Unified field: `home_address.zip_code`</ResponseField>
            <ResponseField name="city" type="text">**City**<br />
            The city of the employee<br />
            Unified field: `home_address.city`</ResponseField>
            <ResponseField name="country" type="text">**Country**<br />
            The country of the address (three-letter country code, e.g. DEU).<br />
            Unified field: `home_address.country`</ResponseField>
          </Expandable>
        </ResponseField>
      </Tab>

      <Tab title="onboarding">
        <Info>
          Some **required** form fields are referencing the following data models:

          * Groups

          Consider enabling these in your [scope configuration](/hris/features/scopes).
        </Info>

        <ResponseField name="privateEmail" type="text" required>**Private Email**<br />
        The private email address of the employee<br />
        Unified field: `private_email`</ResponseField>
        <ResponseField name="firstName" type="text" required>**First Name**<br />
        The first name of the employee<br />
        Unified field: `first_name`</ResponseField>
        <ResponseField name="lastName" type="text" required>**Last Name**<br />
        The last name of the employee<br />
        Unified field: `last_name`</ResponseField>
        <ResponseField name="joinDate" type="date" required>**Start Date**<br />
        Start date of the employee. Also considered to be the hire date<br />
        Unified field: `start_date`</ResponseField>
        <ResponseField name="organizationUnitNumber" type="single_select" required>**Organization Unit**<br />
        The organization unit the new employee will be assigned to. Determines the assigned country.<br />
        References `/v1/hris/groups?types=DEPARTMENT`</ResponseField>
        <ResponseField name="gender" type="single_select">**Gender**<br />
        The gender of the employee<br />
        Unified field: `gender`</ResponseField>
        <ResponseField name="birthday" type="date">**Date of Birth**<br />
        The employee's date of birth<br />
        Unified field: `date_of_birth`</ResponseField>
        <ResponseField name="nationality" type="text">**Nationality**<br />
        The nationality of the new employee (three-letter country code, e.g. DEU).<br />
        Unified field: `nationality`</ResponseField>
        <ResponseField name="maritalStatus" type="single_select">**Marital Status**</ResponseField>

        <ResponseField name="address" type="object">
          **Address**

          <Expandable title="properties">
            <ResponseField name="street" type="text">**Street 1**<br />
            The street address of the employee<br />
            Unified field: `home_address.street_1`</ResponseField>
            <ResponseField name="street_number" type="text">**Street Number**</ResponseField>
            <ResponseField name="zip_code" type="text">**ZIP Code**<br />
            The ZIP code of the employee<br />
            Unified field: `home_address.zip_code`</ResponseField>
            <ResponseField name="city" type="text">**City**<br />
            The city of the employee<br />
            Unified field: `home_address.city`</ResponseField>
            <ResponseField name="country" type="text">**Country**<br />
            The country of the address (three-letter country code, e.g. DEU).<br />
            Unified field: `home_address.country`</ResponseField>
          </Expandable>
        </ResponseField>

        <ResponseField name="languageCode" type="single_select">**Language**<br />
        Determines the GUI language of the onboarding tool. Defaults to the language of the assigned organization unit.</ResponseField>
      </Tab>
    </Tabs>
  </Tab>
</Tabs>

## Integration Variants

**Current connector:** HR WORKS

For **HR WORKS**, we also offer the following other connector variants:

<CardGroup cols={2}>
  <Card title="HR WORKS ATS" icon="https://storage.googleapis.com/kombo-assets/integrations/hrworks/icon.svg" href="/ats/connectors/hrworks">
    HR WORKS for the ATS category
  </Card>
</CardGroup>
