> For the complete documentation index, see [llms.txt](https://docs.thousandeyes.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.thousandeyes.com/product-documentation/user-management/user-registration/thousandeyes-support-for-scim/how-to-configure-scim-with-azure-active-directory.md).

# How to Configure SCIM with Azure Active Directory

You can add, delete, and modify ThousandEyes users using SCIM 2.0- and 1.1-compatible identity providers. This method dramatically decreases the time needed to provision users into ThousandEyes. This article describes how to integrate between the Azure Active Directory (Azure AD) identity provider and ThousandEyes.

## Prerequisites

* A ThousandEyes account that is assigned a role with the following permissions:
  * *View users*
  * *Edit users*
  * *API access*
  * *Edit users in all account groups*
* An Azure AD subscription

## Supported Features

* User provisioning (user account creation)
* User deletion
* User modification
  * Display name

Azure AD group information or other user attributes cannot be translated into account groups, roles, or any other ThousandEyes structure.

## Configuration

1. To start, log in to Azure AD with this [special link](https://ms.portal.azure.com/?Microsoft_AAD_IAM_userProvisioningV2ClientEnabled=false#home). This disables the Azure v2 Provisioning Client, which is not compatible with ThousandEyes SCIM. If you have already set up SSO with Azure AD, skip to step 7.
2. Go to **Azure Active Directory > Enterprise applications > Add an application** and search for **ThousandEyes**. If you are configuring a custom application, skip to step 4.

   ![](/files/o4j9rNgbgnqxN5dCedXq)
3. Click the ThousandEyes Enterprise application and **Add**.

   ![](/files/KLeRHpGwdxRHYZVf7P7I)
4. Once you click **Add**, the Enterprise Application opens as below:

   ![](/files/jfjT5w2YydzALo4oOTVf)
5. To assign users to the app, use the **Assign users and groups** option.
6. For a guide on setting up SSO, see [How to Configure Single Sign-On](https://docs.thousandeyes.com/product-documentation/user-management/sso/how-to-configure-single-sign-on-with-metadata). Here, we focus on setting up SCIM. Because SSO and SCIM are distinct features, one is not required in order to set up the other.
7. Click **Provisioning** (1) and change the **Provisioning Mode** (2) to **Automatic**.

   ![](/files/-M5xtQei5SPM1eVi3v1x)
8. In the ThousandEyes platform, go to **Manage > Account Settings > Users and Roles > Profile** and copy the **OAuth Bearer Token**. In Azure's **Admin Credentials** section, paste the token into the **Secret Token(1)** field and click **Test Connection** (2). The enterprise application tests the token and displays results(3).

   ![](/files/-M5xtQel623FxfEYfTeY)
9. Expand the **Mappings** section and click **Synchronize Azure Active Directory Users to ThousandEyes** to open the mappings.

![](/files/LiMmoUIALA0WMet8Sj2K)

10. Enable provisioning: Check the **Create**, **Update**, and **Delete** checkboxes. Make sure the **Attribute Mappings** match the following table; then click **Save**.

    | **Azure Active Directory Attribute**                         | **ThousandEyes Attribute**    | **Matching Precedence** |
    | ------------------------------------------------------------ | ----------------------------- | ----------------------- |
    | userPrincipalName                                            | userName                      | 1                       |
    | mail                                                         | emails\[type eq "work"].value |                         |
    | Switch(\[IsSoftDeleted], , "False", "True", "True", "False") | active                        |                         |
    | displayName                                                  | displayName                   |                         |

    ![](/files/-MHRouDl8kZ55cE4oYGY)
11. Enable the **Provisioning Status** (1) radio button, set **Scope** (2) to **Sync only assigned users and groups**, and click **Save**.

    ![](/files/-M5xtQezKBQZm4yQ0uX9)

## Status

Once the initial cycle has run, the Current Status section shows results with the number of users that are synchronized with ThousandEyes. This cycle runs once an hour to maintain a sync between Azure AD and ThousandEyes. You can force a cycle by checking **Clear current state and restart synchronization** and then **Save**. ![](/files/-M5xtQf5o9r79EuyrWiD)

To reveal under-the-hood activity, see **View Audit Logs**. This can be a very valuable troubleshooting tool: ![](/files/-M5xtQf90hb46Ttuh956)

To see the attribute mappings in action, open the **Modified Properties** tab of an **Import** event: ![](/files/nwfF1WknA1TU1KTvHk4x)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.thousandeyes.com/product-documentation/user-management/user-registration/thousandeyes-support-for-scim/how-to-configure-scim-with-azure-active-directory.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
