# Power BI Admin Portal Configurations

A Power BI Administrator must enable a small number of tenant settings before Mosaic can embed your content. All changes are made in the Power BI Admin Portal.

## Open the Admin Portal

1. Go to the [Power BI service](https://app.powerbi.com)
2. Click the **Settings** gear in the top-right
3. Choose **Admin portal**
4. Open **Tenant settings** in the left navigation

You will only see this option if you hold the **Power BI Administrator** role on the tenant.

<figure><img src="/files/NkDSg7tgDR80nL9V0EpQ" alt=""><figcaption><p>The Power BI / Fabric Admin Portal — Tenant settings view. Use this page to enable each of the settings listed below. (The highlighted boxes in this screenshot are not the ones Mosaic requires — see the per-setting instructions below.)</p></figcaption></figure>

## Tenant settings to enable

The settings below are minimum requirements for Mosaic embedding to work for your users.

### Embed content in apps

* **Setting**: *Embed content in apps*
* **Where**: Tenant settings → Developer settings
* **Value**: Enabled
* **Apply to**: the Microsoft Entra security group whose members will use Mosaic (recommended) — or *The entire organisation* if you prefer a tenant-wide allow

This is the master switch that lets Mosaic load Power BI content via the embed API on behalf of users. Without it, embedded reports return an error.

### Allow XMLA endpoints and analyze in Excel

* **Setting**: *Allow XMLA endpoints and Analyze in Excel with on-premises datasets*
* **Where**: Tenant settings → Integration settings
* **Value**: Enabled (for Mosaic-using groups)

Required for Mosaic's DAX query block to execute queries against your datasets. Mosaic uses the Power BI REST API's `executeQueries` endpoint, which requires XMLA access on the dataset's hosting capacity.

> XMLA endpoints are also a Premium / Fabric / PPU / Embedded-capacity feature. Datasets in standard (non-capacity) workspaces cannot accept Mosaic's DAX queries.

### Service principals can use Power BI APIs *(for AOD model and data queries)*

* **Setting**: *Service principals can use Power BI APIs*
* **Where**: Tenant settings → Developer settings
* **Value**: Currently optional

Mosaic today uses the **User Owns Data** model - every Power BI call is on behalf of a signed-in user. Service principal permissions are not required.

If needed Mosaic can support **App Owns Data** (Embed Token mode) for higher-scale deployments. When that ships, you will optionally enable this setting and grant the Mosaic service principal access to your workspaces. We will publish a separate guide at that time.

## Workspace-level requirements

For each Power BI workspace you intend to expose in Mosaic:

1. Confirm it is **assigned to a capacity** (Fabric F-SKU, Power BI Premium, PPU, or Power BI Embedded). Workspaces in shared capacity can be browsed but cannot embed for users without their own Pro license.
2. Confirm the users who will sign in to Mosaic have **Viewer** or higher access to the workspace in Power BI itself. Mosaic does not bypass Power BI's own access model.

## Verify

The fastest way to verify the Admin Portal settings are correct is to complete the [Mosaic App Configurations](/mosaic/get-started/powerbi-configuration/mosaic-app-configurations.md) and embed one report end-to-end with a test user.

## What's next

[Mosaic App Configurations →](/mosaic/get-started/powerbi-configuration/mosaic-app-configurations.md)


---

# Agent Instructions: 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:

```
GET https://docs.aidi.ai/mosaic/get-started/powerbi-configuration/powerbi-admin-portal.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
