> ## Documentation Index
> Fetch the complete documentation index at: https://portkey-docs-guide-prompt-api.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Azure Entra

> Setup Azure Entra for SCIM provisioning with Portkey.

#### Azure Active Directory (Azure AD)

[Reference](https://learn.microsoft.com/en-us/azure/active-directory/app-provisioning/use-scim-to-provision-users-and-groups)

Setting up Azure Entra for SCIM provisioning consists of the following steps:

* **New Entra Application & SCIM Provisioning**
* **Application Roles**
* **SCIM Attribute Mapping Update**

***

##### New Entra Application

First, create a new Azure Entra application to set up SCIM provisioning with Portkey.

1. Navigate to the [Entra Applications Page](https://entra.microsoft.com/?culture=en-in\&country=in#view/Microsoft_AAD_IAM/AppGalleryBladeV2) and click **`Create your own application`**.

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/create.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=3009a9bde318e93dd208c1eb2650c84b" alt="Application Creation" width="1600" height="899" data-path="images/scim/azure/create.png" />

2. Complete the required fields to create a new application.

3. Once the application is created, navigate to the application's **Provisioning** page under the **Manage** section.

4. Click **`New Configuration`** to go to the provisioning settings page.

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/settings.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=a708be9b7e182970a17c3c4b70487dac" alt="Provisioning Settings" width="1586" height="1344" data-path="images/scim/azure/settings.png" />

5. Obtain the **Tenant URL** and **Secret Token** from the Portkey Admin Settings page (if SCIM is enabled for your organization).

   * [Portkey Settings Page](https://app.portkey.ai/settings/organisation/sso)

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/portkey.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=150cd500c30f45530bbbf798b0e196b7" alt="Portkey Admin Settings" width="1600" height="1052" data-path="images/scim/portkey.png" />

6. Fill in the values from the Portkey dashboard in Entra's provisioning settings and click **`Test Connection`**. If successful, click **`Create`**.

> If the test connection returns any errors, please contact us at [support@portkey.ai](mailto:support@portkey.ai).

***

##### Application Roles

Portkey supported roles should match Entra's application roles.

1. Navigate to **App Registrations** under **Enterprise Applications**, click **All Applications**, and select the application created earlier.
2. Go to the **App Roles** page and click **`Create app role`**.
   > Portkey supports two application-level roles:
   >
   > * **`member`**  (Organization Member)
   > * **`admin`**  (Organization Admin)
   > * **`owner`**  (Organization Owner)

<img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/roles.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=3de5f1216ad8666f854cb804e1c7c7d5" alt="App Roles" width="1600" height="482" data-path="images/scim/azure/roles.png" />

> Users assigned any other role will default to the **member** role.

3. To support group roles, create a role with the value **`group`** and a name in title-case (e.g., `Group` for the value `group`).

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/create-roles.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=ac29e5f0945e7a170b4e9903033789bd" alt="Creating App Roles" width="1600" height="1015" data-path="images/scim/azure/create-roles.png" />

4. Assign users to the application with the desired role (e.g., **`owner`**, **`member`**, or **`admin`**) for the organization.

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/select-role.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=44b89bf1a7e530965a27c083c2c854c2" alt="Assigning Roles" width="602" height="686" data-path="images/scim/azure/select-role.png" />

***

#### Attribute Mapping

###### Adding a New Attribute

1. Go to the **Provisioning** page and click **Attribute Mapping (Preview)** to access the attributes page.

2. Enable advanced options and click **`Edit attribute list for customappsso`**.

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/new-mapping.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=7e1a46ad133e01ffc5fce6003b8a44d6" alt="Edit Attribute List" width="778" height="502" data-path="images/scim/azure/new-mapping.png" />

3. Add a new attribute called **`roles`** with the following properties:

   * **Multi-valued:** Enabled
   * **Type:** String

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/mapping-properties.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=ad0859b0f93f1f799e8508f3cbe8a9f6" alt="Roles Attribute Properties" width="1544" height="214" data-path="images/scim/azure/mapping-properties.png" />

###### Adding a new mapping

1. Click on the **`Add new mapping`** link to add a new mapping. (refer to the above images).
2. Follow the values from the below image to add a new mapping.

<img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/new-mapping.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=89b60777e6c8d4fd9b9d80fdf9f7f760" alt="New Mapping Attributes" width="1488" height="1388" data-path="images/scim/new-mapping.png" />

3. Once done, save the changes.

###### Removing Unnecessary Attributes

Delete the following unsupported attributes:

* **preferredLanguage**
* **addresses (all fields)**
* **phoneNumbers**

***

#### Updating Attributes

**Update `displayName`**

1. Edit the **`displayName`** field to concatenate `firstName + lastName` instead of using the default `displayName` value from Entra records.

   <img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/azure/update-displayname.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=c6226cda685ee4f3c5cdea87a74f9d7c" alt="Update displayName Expression" width="1500" height="526" data-path="images/scim/azure/update-displayname.png" />

2. Save the changes and enable provisioning on the **Overview** page of the provisioning settings.

***

##### Group (Workspace) Provisioning

Portkey supports RBAC (Role-Based Access Control) for workspaces mapped to groups in Entra. Use the following naming convention for groups:

* **Format:** `ws-{group}-role-{role}`
  * **Role:** One of `admin`, `member`, or `manager`
* A user should belong to only one group per `{group}`.

**Example:**
For a `Sales` workspace:

* `ws-Sales-role-admin`
* `ws-Sales-role-manager`
* `ws-Sales-role-member`

Users assigned to these groups will inherit the corresponding role in Portkey.

<img src="https://mintcdn.com/portkey-docs-guide-prompt-api/ED5PrdhPKJIXYp7p/images/scim/portkey-group-roles.png?fit=max&auto=format&n=ED5PrdhPKJIXYp7p&q=85&s=508822f0e1faccee56cd9bd9c5cc6e8f" alt="Entra Group Role Mapping" width="1600" height="425" data-path="images/scim/portkey-group-roles.png" />

***

### Support

If you face any issues with the group provisioning, please reach out to us at [here](mailto:support@portkey.ai).
