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

# Career Initiation Dates from Entra Hire Dates

> Map the Employee hire date from Microsoft Entra ID into a SCIM attribute so that SkillsDB career automations set each career's initiation date automatically, for new users and for users already provisioned.

> [!NOTE]
>
> **Quick Summary:** Map Entra's `employeeHireDate` to the SCIM `locale` attribute in your SkillsDB enterprise application, then turn on **Use custom mapping for career initiation date** on each career automation and choose `locale`. New users get the hire date as their career initiation date when the career is assigned. To populate users who are already provisioned, run **Restart provisioning** in Entra.

## Overview

A career's initiation date records when a person started in that career. It anchors training timelines and the "Started" date shown on the career. When a [career automation](https://help.skillsdb.com/identity-and-provisioning/scim-career-automations.md) assigns a career, it assigns the career without an initiation date unless you map one.

Microsoft Entra ID holds a hire date for each user as the **Employee hire date** property (`employeeHireDate`). SkillsDB receives SCIM events through Stytch, and Stytch does not pass `employeeHireDate` through. The workaround is to carry the hire date in a SCIM attribute that Stytch does pass through and that SkillsDB does not otherwise use. The `locale` attribute is the recommended choice because the default Entra provisioning configuration does not map anything to it.

This page covers the whole flow:

* The attribute mapping to add in your Entra enterprise application
* The setting to turn on in each SkillsDB career automation
* How newly provisioned users receive the date
* How to populate users who were provisioned before the mapping existed
* How to verify the result in the SCIM event log

Only the enterprise application for SkillsDB is changed. The mapping does not affect any other application in your Entra tenant.

## Prerequisites

Before you begin, make sure you have:

* **Permission level**: Microsoft Entra administrator access to the SkillsDB enterprise application, and SkillsDB administrator access
* **Setup requirement**: An active SCIM connection between Entra and SkillsDB (see [SCIM Setup](https://help.skillsdb.com/identity-and-provisioning/scim-setup.md))
* **Setup requirement**: At least one custom SCIM group with a career automation (see [SCIM Career Automations](https://help.skillsdb.com/identity-and-provisioning/scim-career-automations.md))
* **Setup requirement**: The **Employee hire date** property filled in on the Entra users you want to cover

## How to map the hire date in Entra

Add one attribute mapping to the provisioning configuration of the SkillsDB enterprise application.

**1. Open the attribute mappings**

In the **Microsoft Entra admin center**, navigate to **Enterprise applications**, select the SkillsDB application, and select **Provisioning** under **Manage**.

Select **Edit attribute mappings**, expand **Mappings**, and select **Provision Microsoft Entra ID Users**.

**2. Add the mapping**

Below the **customappsso Attributes** table, select **Add New Mapping**.

Set the fields as follows:

| Field | Value |
| - | - |
| **Mapping type** | Direct |
| **Source attribute** | `employeeHireDate` |
| **Target attribute** | `urn:ietf:params:scim:schemas:core:2.0:User:locale` |
| **Apply this mapping** | Always |

Select **Ok**.

**3. Save**

Select **Save** at the top of the attribute mapping page and confirm.

From the next provisioning cycle, every user that Entra sends to SkillsDB carries their hire date in the `locale` attribute, in a date format SkillsDB accepts.

> [!NOTE]
>
> **Note:** Saving a new mapping does not resend users who have not changed. Entra only sends users whose attributes changed since the last cycle. See [How to populate users who are already provisioned](#how-to-populate-users-who-are-already-provisioned) below.

## How to turn on the mapping in SkillsDB

The mapping is a setting on each career automation. Turn it on for every automation whose careers should carry the hire date.

**1. Open the SSO & SCIM settings**

Navigate to **Company > Settings**, find the **SSO & SCIM** row, and select **Configure**.

**2. Edit the group**

In the **Custom SCIM Groups** table, select the **Edit Group** (pencil) icon on the group whose automation should set the date.

**3. Turn on the custom mapping**

In the **Career Automations** section, on the automation row, select **Use custom mapping for career initiation date**. In the **Select SCIM attribute** dropdown that appears, choose `locale`.

**4. Save**

Select **Save Changes**. Turning on the mapping does not present the initial activation choice again and does not assign careers to anyone.

Repeat for each group and automation. The setting is per automation: an automation without it continues to assign its career without an initiation date.

> [!TIP]
>
> **Tip:** Turn on the SkillsDB setting before you add the Entra mapping. Then every user provisioned after the Entra mapping goes live gets the date at the moment their career is assigned. If you do it the other way round, the date is filled in on each user's next SCIM event instead.

## What happens for newly provisioned users

When both the Entra mapping and the SkillsDB setting are in place, no further action is needed for new users.

When Entra provisions a user into a group with a career automation, SkillsDB assigns the career and sets its initiation date to the hire date in the same step. The SCIM event log records a **Career Assigned** event whose description ends with "initiation date 2024-03-15 from SCIM attribute "Locale"".

If the user's hire date arrives in a later SCIM event than the one that assigned the career, SkillsDB fills the initiation date in when that later event arrives and records an **Initiation Date Set** event.

If the `locale` value is empty or is not a valid date, SkillsDB assigns the career without an initiation date. The **Career Assigned** event description then ends with "no valid initiation date in SCIM attribute "Locale"". The assignment itself is never blocked by a missing or invalid date.

## How to populate users who are already provisioned

Users provisioned before the Entra mapping existed have no hire date stored in SkillsDB. Entra has to send their attributes again. There are two ways to trigger that.

### Test with one user first

**1. Provision one user on demand**

In the Entra enterprise application, select **Provisioning > Provision on demand**, pick a user who holds a career assigned by the automation, and select **Provision**.

**2. Check the event log**

In SkillsDB, open the [SCIM Event Log](https://help.skillsdb.com/identity-and-provisioning/scim-event-log.md) and filter by the user's group. An **Initiation Date Set** event for that user must appear, with the hire date in its description.

**3. Check the career**

Navigate to **Library > Careers**, open the career, and select **Assigned People**. The user's **Initiation Date** column must show the hire date.

### Resend every user

**1. Restart provisioning**

In the Entra enterprise application, select **Provisioning > Overview**, then select **Restart provisioning** and confirm.

**2. Wait for the cycle to complete**

The restart runs a full initial cycle over every user assigned to the application and sends each user's current attributes, including the hire date. The cycle takes from a few minutes to several hours depending on the number of users.

**3. Verify in the event log**

Open the [SCIM Event Log](https://help.skillsdb.com/identity-and-provisioning/scim-event-log.md) and filter by event type **Initiation Date Set**. One event per populated career appears.

### Which careers are populated

As each resent user reaches SkillsDB, the stored hire date is applied to that user's careers under these rules:

| Career | Populated? |
| - | - |
| Assigned by the automation, initiation date empty | Yes. SkillsDB sets the initiation date and records an **Initiation Date Set** event. |
| Assigned by the automation, initiation date already set | No. An existing initiation date is never overwritten, whether it was set by a person or by an earlier sync. |
| Assigned manually, by import, or by an automation on a different group | No. Only careers that this automation itself assigned are touched. |
| Not held by the user | No. Populating dates never assigns a career. |

Running the restart again does not overwrite initiation dates: careers already holding a date are left as they are. The restart does change other data, though.

> [!WARNING]
>
> **Restart provisioning resends every user, and each resent user is a full update of their SkillsDB record.** Before you restart, know that for every user it resends:
>
> * Fields that SCIM never carries are cleared: Employment Type, Home Number, Gender, Notes, Company, the free-text City field, Website / Resume Link, Attachments, the profile picture, Login Username, Next Available Date, and the employment type expiry date. See [SCIM Setup](https://help.skillsdb.com/identity-and-provisioning/scim-setup.md#stored-attributes-for-career-automations) for the full rule.
> * A user an administrator deactivated by hand in SkillsDB is reactivated if they are still active in Entra. See [Azure Sync Considerations](https://help.skillsdb.com/identity-and-provisioning/azure-sync-considerations.md#user-deactivation).
>
> To fill in hire dates for only a few users, use **Provision on demand** for those users instead of a full restart.

## Common Questions

> [accordion] Can I use a different attribute than locale?
>
> Yes. Any of the eleven attributes listed under [Stored attributes for career automations](https://help.skillsdb.com/identity-and-provisioning/scim-setup.md#stored-attributes-for-career-automations) works, as long as nothing else in your Entra configuration maps to it. Use the same attribute in the Entra mapping and in the **Select SCIM attribute** dropdown. `locale` is recommended because the default Entra provisioning configuration leaves it unmapped.

> [accordion] Does the Entra mapping change the user's language or locale in SkillsDB?
>
> No. SkillsDB does not read the SCIM `locale` attribute for anything except this mapping. The value is stored only so a career automation can read it, and it is not shown on the person's profile.

> [accordion] Why did a user get the career but no initiation date?
>
> Either the **Employee hire date** property is empty for that user in Entra, or the value that arrived was not a valid date. Open the [SCIM Event Log](https://help.skillsdb.com/identity-and-provisioning/scim-event-log.md) and read the user's **Career Assigned** event: its description says "no valid initiation date in SCIM attribute "Locale"" in both cases. Fill in the hire date in Entra and use **Provision on demand** for that user; SkillsDB then fills the date in and records an **Initiation Date Set** event.

> [accordion] Why did Restart provisioning not change a user's initiation date?
>
> SkillsDB never overwrites an initiation date that is already set, and it only fills dates on careers that the automation itself assigned. If the user's career already shows a date, or the career was assigned manually or by import, the hire date is not applied. An administrator can change the date on the career's **Assigned People** page instead.

> [accordion] What date formats does SkillsDB accept?
>
> A plain date such as `2024-03-15`, or a timestamp with a timezone such as `2024-03-15T00:00:00Z`. A direct mapping of `employeeHireDate` produces a value in one of these forms. Any other value is ignored and the career is assigned without an initiation date. The date is read in UTC.

## Related Articles

> [card] [SCIM Career Automations](https://help.skillsdb.com/identity-and-provisioning/scim-career-automations.md)
>
> Configure the automations that assign careers and carry the initiation date setting.

> [card] [SCIM Setup](https://help.skillsdb.com/identity-and-provisioning/scim-setup.md)
>
> The Entra provisioning configuration and the attributes SkillsDB stores.

> [card] [SCIM Event Log](https://help.skillsdb.com/identity-and-provisioning/scim-event-log.md)
>
> Verify Career Assigned and Initiation Date Set events.

> [card] [Azure Sync Considerations](https://help.skillsdb.com/identity-and-provisioning/azure-sync-considerations.md)
>
> Other Entra limitations and when to restart provisioning.

## Need More Help?

If the hire date is not reaching SkillsDB after a restart, reach out to your organization's SkillsDB administrator or contact [SkillsDB Support](https://www.skillsdb.com/support).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.