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

# Power BI

> Connect Power BI, register embeds, configure per-partner row-level security, and surface embeds in the portal in Introw.

**Open in Introw:** [Integrations](https://app.introw.io/settings/integrations)

## How it works

Power BI is set up from the Integrations settings, where the Power BI card connects your tenant via
an Azure AD service principal and OAuth. Once connected, you manage the integration on its own page,
registering the reports and dashboards you want to embed and configuring per-partner dataset roles
for row-level security.

In the **Experience builder**, a Power BI embed section surfaces a registered report or dashboard. Embeds are
rendered with secure embed tokens, and the configured roles ensure each partner sees only their own
data. Power BI is a paid module, so it must be enabled on your plan.

```mermaid theme={"theme":{"light":"github-light","dark":"github-dark"}}
flowchart LR
  tenant["Power BI tenant"] -->|"Azure AD OAuth"| introw["Introw"]
  introw --> rls["Per-partner dataset roles"]
  rls --> portal["Embedded in the partner portal"]
```

## Prerequisites

* The Power BI module enabled on your plan.
* A Power BI tenant with an Azure AD service principal.
* Reports or dashboards in Power BI, with row-level security roles if you need per-partner scoping.

## Settings & configuration

Power BI is configured from [Integrations](https://app.introw.io/settings/integrations).

### Connect the tenant

Use the Power BI card to connect via OAuth and the Azure AD service principal.

### Manage embeds

On the integration page, register the reports and dashboards you want to embed.

### Row-level security

Configure per-partner dataset roles so each partner's embed is scoped to their own rows.

### Test the connection

Use the connection test to confirm credentials work before embedding.

### Portal embed

In the **Experience builder**, add a Power BI embed section and select a registered report or dashboard.

## Setup walkthrough

<Steps>
  <Step title="Open Integrations">
    Go to [Integrations](https://app.introw.io/settings/integrations) and open the Power BI card.
  </Step>

  <Step title="Connect your tenant">
    Authenticate via OAuth with your service principal.
  </Step>

  <Step title="Register embeds">
    Add the reports and dashboards to embed.
  </Step>

  <Step title="Configure roles">
    Set per-partner row-level security roles.
  </Step>

  <Step title="Surface in the portal">
    Add a Power BI embed to a portal experience.
  </Step>
</Steps>

## How-to guides

<CardGroup cols={2}>
  <Card title="Surface Power BI in the portal" icon="book-open" href="/features/reporting/power-bi/guides/surface-power-bi-in-the-portal">
    Connect your Power BI tenant, register a report, scope it per partner with row-level security, and embed it in the partner portal.
  </Card>
</CardGroup>

## Limits & gotchas

<Warning>
  Power BI is a paid module and must be enabled on your plan. Per-partner scoping depends on row-level security roles configured in your Power BI dataset; without them, an embed is not partner-scoped. Embedding requires a valid Azure AD service principal with access to the workspace.
</Warning>

## Troubleshooting

* **The Power BI card shows an upgrade prompt** - the module is not enabled on your plan.
* **The connection test fails** - check the service principal credentials and workspace access.
* **A partner sees all the data** - row-level security roles are not configured for the embed.
