> ## 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.

# Microsoft Entra ID HRIS Integration

> Microsoft Entra ID connector for Kombo's HRIS API

The Microsoft Entra ID HRIS integration allows you to sync HRIS data between Microsoft Entra ID and your application through Kombo's unified API. The tool slug for this connector is `entraid`.

## Guides and Resources

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

## Supported Features & Coverage

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

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

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

    <Accordion title="Groups">
      | Field               | Notes |
      | ------------------- | ----- |
      | id                  |       |
      | remote\_id          |       |
      | changed\_at         |       |
      | remote\_deleted\_at |       |
      | name                |       |
      | type                |       |
      | 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 employee">
      <Note>
        Azure / entra requires a password to be set when creating a user. The user has to use the password on his initial sign-in and will be forced to change the password once signed in. The work\_email field is required. The domain of the submitted email has to be one of the verified domains in the organization.
      </Note>

      | Input Field             | Notes |
      | ----------------------- | ----- |
      | first\_name             |       |
      | last\_name              |       |
      | work\_email             |       |
      | job\_title              |       |
      | home\_address.street\_1 |       |
      | home\_address.city      |       |
      | home\_address.zip\_code |       |
      | home\_address.country   |       |
      | date\_of\_birth         |       |
    </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>
  </Tab>

  <Tab title="Features">
    | Feature               | Notes |
    | --------------------- | ----- |
    | Connection Guide      |       |
    | Prerequisites         |       |
    | OAuth                 |       |
    | API Passthrough       |       |
    | Additional Scopes     |       |
    | Group Types           |       |
    | DEPARTMENT            |       |
    | COST\_CENTER          |       |
    | Custom Field Explorer |       |
    | Employees             |       |
  </Tab>

  <Tab title="Create Employee with Form">
    <Info>
      Some **optional** form fields are referencing the following data models:

      * Groups

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

    <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="workEmail" type="text" required>**Work Email**<br />
    The email address of the employee<br />
    Unified field: `work_email`</ResponseField>
    <ResponseField name="password" type="text" required>**Password**<br />
    Azure / entra requires a password to be set when creating a user. The user has to use the password on his initial sign-in and will be forced to change the password once signed in.</ResponseField>
    <ResponseField name="businessPhones" type="text">**Business Phones**<br />
    The telephone numbers for the user.<br />
    Unified field: `mobile_phone_number`</ResponseField>
    <ResponseField name="mobilePhone" type="text">**Mobile Phone Number**<br />
    The mobile phone number of the employee<br />
    Unified field: `mobile_phone_number`</ResponseField>
    <ResponseField name="faxNumber" type="text">**Fax Number**<br />
    The fax number of the user.</ResponseField>

    <ResponseField name="otherMails" type="array">
      **Other Mails**<br />
      A list of additional email addresses for the user; for example: \['[bob@contoso.com](mailto:bob@contoso.com)', '[Robert@fabrikam.com](mailto:Robert@fabrikam.com)']. This cannot contain accent characters.

      <Expandable title="items">
        <ResponseField name="Item" type="text" />
      </Expandable>
    </ResponseField>

    <ResponseField name="city" type="text">**City**<br />
    The city in which the user is located.<br />
    Unified field: `home_address.city`</ResponseField>
    <ResponseField name="country" type="text">**Country or Region**<br />
    The country or region in which the user is located; for example, US or UK.<br />
    Unified field: `home_address.country`</ResponseField>
    <ResponseField name="postalCode" type="text">**Postal Code**<br />
    The postal code for the user's postal address. The postal code is specific to the user's country/region. In the United States of America, this attribute contains the ZIP code.<br />
    Unified field: `home_address.zip_code`</ResponseField>
    <ResponseField name="state" type="text">**State**<br />
    The state or province in the user's address.<br />
    Unified field: `home_address.state`</ResponseField>
    <ResponseField name="streetAddress" type="text">**Street Address**<br />
    The street address of the user's place of business.<br />
    Unified field: `home_address.street_1`</ResponseField>
    <ResponseField name="officeLocation" type="text">**Office Location**<br />
    The office location in the user's place of business.</ResponseField>
    <ResponseField name="companyName" type="text">**Company Name**<br />
    The company name which the user is associated. This property can be useful for describing the company that an external user comes from.</ResponseField>
    <ResponseField name="department" type="text">**Department**<br />
    The name for the department in which the user works.</ResponseField>
    <ResponseField name="employeeId" type="text">**Employee ID**<br />
    The employee identifier assigned to the user by the organization.</ResponseField>
    <ResponseField name="employeeHireDate" type="date">**Start Date**<br />
    Start date of the employee. Also considered to be the hire date<br />
    Unified field: `start_date`</ResponseField>
    <ResponseField name="employeeType" type="single_select">**Employee Type**<br />
    Captures the type of employment for the user.</ResponseField>
    <ResponseField name="jobTitle" type="text">**Job Title**<br />
    The user's job title.<br />
    Unified field: `job_title`</ResponseField>

    <ResponseField name="employeeOrgData" type="object">
      **Employee Organization Data**<br />
      Represents organization data (for example, division and costCenter).

      <Expandable title="properties">
        <ResponseField name="costCenter" type="single_select">**Cost Center**<br />
        The cost center associated with the user.<br />
        References `/v1/hris/groups?types=COST_CENTER`</ResponseField>
        <ResponseField name="division" type="single_select">**Division**<br />
        The name of the division in which the user works.<br />
        References `/v1/hris/groups?types=DEPARTMENT`</ResponseField>
      </Expandable>
    </ResponseField>
  </Tab>
</Tabs>

## Integration Variants

**Current connector:** Current Microsoft Entra ID integration (recommended for new connections)

For **Microsoft Entra ID**, we also offer the following other connector variants:

<CardGroup cols={2}>
  <Card title="Microsoft Azure AD" icon="https://storage.googleapis.com/kombo-assets/integrations/azuread/icon.svg" href="/hris/connectors/azuread">
    Legacy Azure AD integration. Microsoft rebranded Azure AD to Entra ID. Both variants work, but consider using Entra ID for new connections
  </Card>
</CardGroup>

<Note>You can only use one variant at a time.</Note>
