# Power BI Integration Discovered Resources

### Ingested Resources & Properties

#### Account (`powerbi_account`)

The Power BI integration discovers the top-level tenant as a single `powerbi_account` resource. All workspaces are children of this account.

| Property         | Description                          |
| ---------------- | ------------------------------------ |
| `name`           | Tenant identifier (tenant ID string) |
| `native_id`      | Microsoft Entra tenant ID (GUID)     |
| `subtype`        | Always `powerbi_account`             |
| `external_links` | URL to the Power BI tenant portal    |

#### Workspaces (`powerbi_workspace`)

| Property         | Description                                                                                                                                                 |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`           | Display name of the workspace                                                                                                                               |
| `description`    | Workspace description (when available)                                                                                                                      |
| `native_id`      | Workspace object ID (GUID)                                                                                                                                  |
| `subtype`        | Type of workspace: `workspace` for shared workspaces, `personal` for personal workspaces, `admin_workspace` for the admin monitoring workspace              |
| `native_owners`  | List of admin users (primary first); each entry contains `email`, `display_name`, and other user-reference fields                                           |
| `members`        | List of users and groups that are members of the workspace, including their roles (e.g., Admin, Member, Contributor). Each entry contains `uri` and `role`. |
| `external_links` | URL to open the workspace in the service                                                                                                                    |

#### Folders (`powerbi_folder`)

Fabric workspace folders are discovered when **Observe folders** is enabled and the workspace has Fabric Core endpoint data. Items (reports, dashboards, semantic models, etc.) are placed as children of the folder rather than directly of the workspace.

| Property         | Description                                                      |
| ---------------- | ---------------------------------------------------------------- |
| `name`           | Folder display name                                              |
| `native_id`      | Fabric folder ID (GUID)                                          |
| `subtype`        | Always `powerbi_folder`                                          |
| `external_links` | Deep link to the folder in the Power BI portal (when resolvable) |

#### Semantic Models (`powerbi_semantic_model`)

| Property                                 | Description                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | Display name                                                                                                                                                                                                                                                                                                                                                                        |
| `native_id`                              | Semantic model object ID (GUID)                                                                                                                                                                                                                                                                                                                                                     |
| `subtype`                                | Always `powerbi_semantic_model`                                                                                                                                                                                                                                                                                                                                                     |
| `native_owners`                          | List of owners (primary first); each entry contains `email`, `display_name`, and other user-reference fields                                                                                                                                                                                                                                                                        |
| `tags`                                   | User-defined tags                                                                                                                                                                                                                                                                                                                                                                   |
| `created_at`                             | Timestamp for creation date                                                                                                                                                                                                                                                                                                                                                         |
| `updated_at`                             | Timestamp last modification                                                                                                                                                                                                                                                                                                                                                         |
| `total_impressions_14d/30d/60d`          | The number of impressions the resource is found within over the last 14/30/60 days.                                                                                                                                                                                                                                                                                                 |
| `distinct_impressions_users_14d/30d/60d` | <p>The number of distinct users who triggered the impressions of the resource over the last 14/30/60 days.<br><br><strong>Note</strong>: The distinct user count <strong>does</strong> support a user-level breakdown, which you can access via the Euno Assistant or from the resource side panel. However, this breakdown is <strong>not</strong> available via an EQL query.</p> |
| `external_links`                         | Deep link to open the semantic model                                                                                                                                                                                                                                                                                                                                                |

#### Table (`powerbi_table`)

| Property | Description  |
| -------- | ------------ |
| `name`   | Display name |

#### Dataflows (`powerbi_dataflow`)

A **dataflow** is a Power BI ETL artifact that loads and transforms data and exposes **output entities** (tables) that can be consumed by semantic models (e.g. via the `PowerBI.Dataflows` connector). In Euno, a dataflow is observed as a resource of type **powerbi\_dataflow**. The `powerbi_table` resources that consume a dataflow have a **has upstream** relationship to it; conversely, the dataflow itself has a **has upstream** relationship to the warehouse tables it reads from (resolved from its Power Query M expression).

| Property         | Description                                                |
| ---------------- | ---------------------------------------------------------- |
| `name`           | Dataflow display name                                      |
| `subtype`        | Always `powerbi_dataflow`                                  |
| `native_id`      | Dataflow object ID (GUID)                                  |
| `tags`           | User-defined tags                                          |
| `created_at`     | Timestamp for creation date (when available from scan/API) |
| `updated_at`     | Timestamp last modification (when available)               |
| `external_links` | Deep link to the dataflow details page                     |

#### Reports (`powerbi_report`)

| Property                                 | Description                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | Display name                                                                                                                                                                                                                                                                                                                                                                        |
| `subtype`                                | Always `powerbi_report`; the report kind (e.g., PowerBI vs. paginated) is stored in the native payload (`reportType`)                                                                                                                                                                                                                                                               |
| `native_id`                              | Report object ID (GUID)                                                                                                                                                                                                                                                                                                                                                             |
| `native_owners`                          | List of owners (primary first); each entry contains `email`, `display_name`, and other user-reference fields                                                                                                                                                                                                                                                                        |
| `tags`                                   | User-defined tags                                                                                                                                                                                                                                                                                                                                                                   |
| `created_at`                             | Timestamp for creation date                                                                                                                                                                                                                                                                                                                                                         |
| `updated_at`                             | Timestamp last modification                                                                                                                                                                                                                                                                                                                                                         |
| `total_impressions_14d/30d/60d`          | The number of impressions the resource is found within over the last 14/30/60 days.                                                                                                                                                                                                                                                                                                 |
| `distinct_impressions_users_14d/30d/60d` | <p>The number of distinct users who triggered the impressions of the resource over the last 14/30/60 days.<br><br><strong>Note</strong>: The distinct user count <strong>does</strong> support a user-level breakdown, which you can access via the Euno Assistant or from the resource side panel. However, this breakdown is <strong>not</strong> available via an EQL query.</p> |
| `external_links`                         | Deep link to the report                                                                                                                                                                                                                                                                                                                                                             |

#### Pages (`powerbi_page`)

| Property         | Description                              |
| ---------------- | ---------------------------------------- |
| `name`           | Page display name (from report metadata) |
| `native_id`      | Page identifier (when exposed)           |
| `folder`         | Page grouping/order (if present)         |
| `created_at`     | Timestamp for creation date              |
| `updated_at`     | Timestamp last modification              |
| `external_links` | Deep link to page (when resolvable)      |

#### Dashboards (`powerbi_dashboard`)

| Property                                 | Description                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                   | Display name                                                                                                                                                                                                                                                                                                                                                                        |
| `native_id`                              | Dashboard object ID (GUID)                                                                                                                                                                                                                                                                                                                                                          |
| `native_owners`                          | List of owners (primary first); each entry contains `email`, `display_name`, and other user-reference fields                                                                                                                                                                                                                                                                        |
| `tags`                                   | User-defined tags                                                                                                                                                                                                                                                                                                                                                                   |
| `created_at`                             | Timestamp for creation date                                                                                                                                                                                                                                                                                                                                                         |
| `updated_at`                             | Timestamp last modification                                                                                                                                                                                                                                                                                                                                                         |
| `total_impressions_14d/30d/60d`          | The number of impressions the resource is found within over the last 14/30/60 days.                                                                                                                                                                                                                                                                                                 |
| `distinct_impressions_users_14d/30d/60d` | <p>The number of distinct users who triggered the impressions of the resource over the last 14/30/60 days.<br><br><strong>Note</strong>: The distinct user count <strong>does</strong> support a user-level breakdown, which you can access via the Euno Assistant or from the resource side panel. However, this breakdown is <strong>not</strong> available via an EQL query.</p> |
| `external_links`                         | Deep link to the dashboard                                                                                                                                                                                                                                                                                                                                                          |

#### Tiles (`powerbi_tile`)

| Property            | Description                                                     |
| ------------------- | --------------------------------------------------------------- |
| `name`              | Visual identifier (internal name from the report layout config) |
| `parent_container`  | URI of the parent page                                          |
| `native_raw_object` | Raw visual container config from the report layout (JSON)       |
| `raw_code`          | Pretty-printed version of the visual container config           |
| `external_links`    | Deep link to the page that contains the tile                    |

#### Apps (`powerbi_app`)

| Property         | Description                 |
| ---------------- | --------------------------- |
| `name`           | App name                    |
| `native_id`      | App object ID (GUID)        |
| `tags`           | User-defined tags           |
| `created_at`     | Timestamp for creation date |
| `updated_at`     | Timestamp last modification |
| `external_links` | Deep link to the app        |

#### Power BI Columns & Measures (`powerbi_column` & `powerbi_measure`)

| Property               | Description                                                            |
| ---------------------- | ---------------------------------------------------------------------- |
| `name`                 | Field name (column or measure)                                         |
| `native_data_type`     | Original data type (e.g., whole number, decimal, text, date)           |
| `normalized_data_type` | Standardized type (string, number, date, boolean)                      |
| `is_calculated`        | `true` if DAX (calculated column/measure) or M‑authored transformation |
| `raw_code`             | DAX expression or M code when available                                |

#### Table (`table`)

The Power BI integration will discover resources of type `table` when it identifies a dataset or dataflow referring to a database table. For example, if a data source is using a table from the data warehouse, which is not connected to dbt, or an integrated DW.

| Property              | Description                                                            |
| --------------------- | ---------------------------------------------------------------------- |
| `name`                | The name of the table.                                                 |
| `database_technology` | The technology of the database, based on the dialect of the connection |
| `database`            | The name of the database                                               |
| `schema`              | The name of the schema                                                 |

#### Column (`column`)

The Power BI integration will discover resources of type `column` when it identifies a dataset or dataflow referring to a database column.

| Property              | Description                                                            |
| --------------------- | ---------------------------------------------------------------------- |
| `name`                | The name of the column.                                                |
| `database_technology` | The technology of the database, based on the dialect of the connection |
| `database`            | The name of the database                                               |
| `schema`              | The name of the schema                                                 |

#### Lakehouse (`database`, with optional `database_schema`, `table`, `column`)

A **lakehouse** is a Microsoft Fabric managed data asset stored in OneLake and queryable from Fabric. In Euno it is observed as a resource of type **database** with **database\_technology** = `lakehouse`. The list of lakehouses comes from the Power BI admin scan (`workspace.Lakehouse[]`); no separate Fabric API call is required for the list.

* **When the lakehouse has a SQL analytics endpoint**, the integration also observes **schema**, **table**, and **column** by querying the SQL endpoint (INFORMATION\_SCHEMA). Schema/table/column use the same property conventions as other database-backed resources.

| Property              | Description                          |
| --------------------- | ------------------------------------ |
| `name`                | Lakehouse display name from the scan |
| `database_technology` | Always `lakehouse`                   |
| `native_id`           | Fabric item id of the lakehouse      |

Child resources (when SQL endpoint is available):

**Schema (`database_schema`)**

| Property              | Description                                                      |
| --------------------- | ---------------------------------------------------------------- |
| `name`                | Schema name                                                      |
| `database_technology` | Same as the parent database (`lakehouse` or `mirrored_database`) |

**Table** (`table`) and **Column** (`column`) — same property conventions as other database-backed resources (see `table` and `column` sections below).

#### Mirrored database (`database`, with optional `database_schema`, `table`, `column`)

A **mirrored database** is a Microsoft Fabric item (type MirroredDatabase) that replicates data from SQL Server or other sources into OneLake. It is observed as a resource of type **database** with **database\_technology** = `mirrored_database`.

* **When the mirrored database has a SQL analytics endpoint** (provisioningStatus = success), the integration also observes **schema**, **table**, and **column** via the same SQL endpoint pattern as lakehouse (INFORMATION\_SCHEMA).

| Property              | Description                                |
| --------------------- | ------------------------------------------ |
| `name`                | Mirrored database name from the scan       |
| `database_technology` | Always `mirrored_database`                 |
| `parent_container`    | Workspace URI                              |
| `native_id`           | Fabric item id of the mirrored database    |
| `native_raw_object`   | Admin scan entry for the mirrored database |

Child resources (when SQL endpoint is available): **schema** (`database_schema`), **table**, **column**, with the same property conventions.

#### Users (`user`)

Users are discovered when "Observe users" is enabled in the PowerBI integration configuration. Users are fetched from Microsoft Entra ID via the Microsoft Graph API.

| Property        | Description                                   |
| --------------- | --------------------------------------------- |
| `name`          | User's email address (used as the identifier) |
| `email_address` | User's email address                          |
| `label`         | User's display name from Entra ID             |

#### User Groups (`user_group`)

User groups (security groups) are discovered when "Observe groups" is enabled in the PowerBI integration configuration. Groups are fetched from Microsoft Entra ID via the Microsoft Graph API.

| Property    | Description                                                                                                                                                |
| ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`      | Display name of the group                                                                                                                                  |
| `native_id` | Group ID from Entra ID                                                                                                                                     |
| `subtype`   | Always `entra` for groups discovered from Entra ID                                                                                                         |
| `members`   | List of users and groups that are members of this group. Each member entry includes the URI. Groups can contain other groups, creating nested hierarchies. |

### Relationships

| Source type(s)                                                                                            | Relationship         | Target type(s)                                                                                                                                                               | Notes                                                                                                                                                                                                                                          |
| --------------------------------------------------------------------------------------------------------- | -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `powerbi_workspace`                                                                                       | has child            | `powerbi_semantic_model`, `powerbi_report`, `powerbi_dashboard`, `powerbi_dataflow`, `powerbi_app`, `powerbi_folder`, lakehouse (`database`), mirrored database (`database`) | Direct children via Admin/Fabric APIs. Lakehouse and mirrored database from admin scan (`workspace.Lakehouse[]`, `workspace.MirroredDatabase[]`). Folders only when **Observe folders** is enabled and Fabric Core endpoint data is available. |
| `powerbi_semantic_model`                                                                                  | has child            | `powerbi_table`                                                                                                                                                              | Tables belong to a specific semantic model.                                                                                                                                                                                                    |
| `powerbi_table`                                                                                           | has upstream         | `powerbi_dataflow`                                                                                                                                                           | When a table's M query source is a Power BI dataflow.                                                                                                                                                                                          |
| `powerbi_table`                                                                                           | has upstream         | `table`                                                                                                                                                                      | DirectQuery/Import sources resolved to a warehouse table (e.g., Snowflake, BigQuery, Databricks).                                                                                                                                              |
| `powerbi_table`                                                                                           | has child            | `powerbi_column`, `powerbi_measure`                                                                                                                                          | Columns/measures come from Scanner (datasetSchema/expressions) or XMLA.                                                                                                                                                                        |
| `powerbi_dataflow`                                                                                        | has child            | `powerbi_column`                                                                                                                                                             | Output entity columns (CDM attributes) emitted when the group dataflow GET document is available.                                                                                                                                              |
| `powerbi_dataflow`                                                                                        | has upstream         | `powerbi_dataflow`                                                                                                                                                           | A dataflow can consume another dataflow's output entities as its source (dataflow chaining).                                                                                                                                                   |
| `powerbi_dataflow`                                                                                        | has upstream         | `table`                                                                                                                                                                      | Upstream warehouse tables resolved from the dataflow's Power Query M expression.                                                                                                                                                               |
| `powerbi_report`                                                                                          | has child            | `powerbi_page`                                                                                                                                                               | Pages enumerated via /reports/{id}/pages.                                                                                                                                                                                                      |
| `powerbi_report`                                                                                          | has upstream         | `powerbi_table`                                                                                                                                                              | When the report has no tile children, all tables in the upstream semantic model become the report's upstreams.                                                                                                                                 |
| `powerbi_report`                                                                                          | has upstream         | `powerbi_tile`                                                                                                                                                               | When the report has tile children, each tile becomes the report's direct upstream (mutually exclusive with the `powerbi_table` row above).                                                                                                     |
| `powerbi_page`                                                                                            | has child            | `powerbi_tile`                                                                                                                                                               | Visuals on a page.                                                                                                                                                                                                                             |
| `powerbi_dashboard`                                                                                       | has upstream         | `powerbi_report`                                                                                                                                                             | Reports whose visuals are pinned on the dashboard.                                                                                                                                                                                             |
| `powerbi_tile`                                                                                            | has upstream         | `powerbi_table`                                                                                                                                                              | Tables referenced by Q\&A tiles and streaming dataset tiles. Static tiles (text/image) have no lineage and are excluded.                                                                                                                       |
| `powerbi_app`                                                                                             | has upstream         | `powerbi_report`                                                                                                                                                             | The source report that the app distributes to its audience (the original report object the app was built from).                                                                                                                                |
| `powerbi_column`                                                                                          | has upstream\_fields | `column`, `powerbi_column`                                                                                                                                                   | Source columns → table columns → dataflow columns → Power BI table columns; derived from the semantic model's Power Query M expressions and DAX.                                                                                               |
| `powerbi_measure`                                                                                         | has upstream\_fields | `powerbi_column`, `powerbi_measure`                                                                                                                                          | DAX references to columns and other measures.                                                                                                                                                                                                  |
| `powerbi_tile`                                                                                            | has upstream\_fields | `powerbi_column`, `powerbi_measure`                                                                                                                                          | Fields used in the tile's visualization.                                                                                                                                                                                                       |
| `powerbi_workspace`                                                                                       | has group            | `user`, `user_group`                                                                                                                                                         | Workspace members (users and groups) with role information (e.g., Admin, Member, Contributor).                                                                                                                                                 |
| `user_group`                                                                                              | has group            | `user`, `user_group`                                                                                                                                                         | Group members from Entra ID. Groups can contain users and other groups, creating nested hierarchies.                                                                                                                                           |
| `user`, `user_group`                                                                                      | has member           | `user_group`, `powerbi_workspace`                                                                                                                                            | Reverse relationship: resources that a user or group is a member of.                                                                                                                                                                           |
| Lakehouse, mirrored database (`database` with `database_technology` = `lakehouse` or `mirrored_database`) | has child            | `database_schema`                                                                                                                                                            | When the item has a SQL analytics endpoint; schema discovered via INFORMATION\_SCHEMA on that endpoint.                                                                                                                                        |
| `database_schema`                                                                                         | has child            | `table`                                                                                                                                                                      | Tables within the schema, discovered via INFORMATION\_SCHEMA.                                                                                                                                                                                  |
| `table`                                                                                                   | has child            | `column`                                                                                                                                                                     | Columns within the table, discovered via INFORMATION\_SCHEMA.                                                                                                                                                                                  |


---

# 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.euno.ai/sources/business-intelligence/powerbi-integration/power-bi-integration-discovered-resources.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.
