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

# Microsoft Shifts integration

> Push approved absences from absentify into Microsoft Teams Shifts as time-off entries so shift planners see who is off directly in the schedule.

<Note>
  **Preview feature.** Microsoft Shifts synchronization is currently in preview and not yet generally available. To request access for your workspace, email [support@absentify.com](mailto:support@absentify.com).
</Note>

The **Microsoft Shifts** integration automatically writes approved absences into a Microsoft Teams Shifts schedule. Shift planners and colleagues see who is off directly in the timeline without any manual data entry.

## Prerequisites

Before you can configure the integration, the following must be in place:

1. **Plan**: Your workspace must be on the **Essentials** or **Plus** plan.
2. **Microsoft Shifts permission**: A Microsoft Tenant Administrator must grant the **absentify Shifts Permission** app the required `Schedule.ReadWrite.All` and `Group.Read.All` permissions, and the permission must be **activated** in **Settings > Microsoft**. See the [Shifts synchronization permissions guide](/docs/en/roles/m365admins/permissions/shifts_synchronization) for details.
3. **Active Shifts schedule**: The target Microsoft Team must have an active, provisioned Shifts schedule. absentify never provisions a schedule on your behalf.
4. **Linked Microsoft accounts**: Employees whose absences should be synced must have their Microsoft account linked in absentify.

***

## Setting up the integration

<Steps>
  <Step title="Navigate to the integration">
    Go to **Settings > Integrations > Microsoft Shifts** in your absentify dashboard.
  </Step>

  <Step title="Connect a team">
    Select **Connect a team**. Choose the Microsoft Team whose Shifts schedule should receive time-off entries. Each team can only be connected to one Shifts sync setting.
  </Step>

  <Step title="Select departments">
    Choose the **departments** whose employees' approved absences should be synced. Only absences from members of the selected departments are written into the Shifts schedule.
  </Step>

  <Step title="Select leave types and configure display names">
    Choose the **leave types** to synchronize. For each selected leave type you can set a **Shown as (time-off reason)** label — this is the name that appears as the time-off reason in the Shifts schedule. If you leave the field empty, the leave type name is used (or "Absent" for privacy-hidden leave types).
  </Step>

  <Step title="Save">
    Select **Save** to create the synchronization. absentify will begin syncing newly approved absences for the selected departments and leave types into the connected team's Shifts schedule.
  </Step>
</Steps>

***

## How the synchronization works

* **Trigger**: Only **approved** absences are synced. Pending or rejected requests are not written to Shifts.
* **Working schedule**: The synced time-off period follows the employee's **absentify working schedule** (AM/PM slots, part-time configurations), not their Shifts shift assignments. This ensures the time-off entry in Shifts matches the deduction calculated in absentify.
* **Updates and cancellations**: If an approved absence is modified, the corresponding Shifts time-off entry is updated automatically. If an absence is cancelled, rejected, or deleted, the time-off entry is removed from Shifts.
* **Member requirement**: An employee must be linked to a Microsoft account for the sync to succeed. If the link is missing, the sync log shows a "Member not linked to Microsoft" status and retries once the link is established.

***

## Managing the integration

### View existing settings

All configured Shifts sync settings are listed on the **Microsoft Shifts** integration page. Each entry shows the connected team name, the number of departments and leave types, and whether the team's Shifts schedule is active.

### Delete a Shifts sync setting

1. Select the **Delete** button next to the setting you want to remove.
2. Confirm the deletion. Already-synced time-off entries are removed from the Shifts schedule automatically.

***

## Troubleshooting

Check the [Microsoft sync logs](/docs/en/roles/hr_admins/settings/microsoft#microsoft-sync-logs) for detailed information about each sync operation. Common statuses for Shifts sync entries include:

| Status                      | Meaning                                                                                                                                                           |
| --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Synced**                  | The time-off entry was successfully created or updated in Shifts.                                                                                                 |
| **Skipped**                 | The absence was not synced — for example because the leave type is not configured for this setting.                                                               |
| **Failed**                  | An error occurred (e.g. revoked permissions or Microsoft Graph throttling). The error message provides details.                                                   |
| **Not Synced** (with error) | A recoverable condition prevented the sync, such as an inactive Shifts schedule or a member not linked to Microsoft. The entry remains eligible for future retry. |
