> For the complete documentation index, see [llms.txt](https://docs.e6data.com/query-engine/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.e6data.com/query-engine/guides/catalogs/microsoft-fabric.md).

# Microsoft Fabric

Connect e6data to **Microsoft Fabric** to query data stored in OneLake. e6data reads metadata from your Fabric workspace and accesses the underlying data directly from OneLake using your Azure credentials.

## Before you start

* A Microsoft Fabric workspace with the data you want to query.
* An Azure AD app registration with permissions on the Fabric workspace.
* The Workspace ID, OneLake account name, and OAuth credentials for the app registration.
* The ADLS Gen2 storage account holding the underlying OneLake data.
* For Serverless, your e6data workspace must already have [storage access granted](/query-engine/guides/deployment/azure-serverless/configure-azure-access.md).

## Connect to Microsoft Fabric

1. Navigate to the **Catalogs** section from the sidebar and click **Create Catalog**.
2. Enter a **Catalog Name**. The name must be unique within the workspace. Lowercase letters, numbers, and hyphens are recommended.
3. Select **Catalog Type** as **Microsoft Fabric**.
4. (Optional) Enable **Governance**. Apply fine-grained access control using Ranger, OPA, Unity, or Lake Formation.
5. Provide the Microsoft Fabric and OneLake connection details:

   | Field                          | Description                                                                                       |
   | ------------------------------ | ------------------------------------------------------------------------------------------------- |
   | **Workspace ID**               | Your Microsoft Fabric workspace identifier                                                        |
   | **OneLake Account Name**       | The OneLake account hosting your data (for example, `onelake.dfs.fabric.microsoft.com`)           |
   | **OneLake Client ID**          | Client ID of the Azure AD app registration with access to OneLake                                 |
   | **OneLake Client Secret**      | Client Secret for the same app registration                                                       |
   | **OneLake Client Endpoint**    | The OAuth2 token endpoint, typically `https://login.microsoftonline.com/{tenant-id}/oauth2/token` |
   | **Azure Tenant ID**            | The Azure AD tenant ID                                                                            |
   | **Azure Client ID**            | Client ID used to access the underlying ADLS Gen2 storage                                         |
   | **Azure Storage Account Name** | The storage account where OneLake data resides                                                    |
6. Click **Test Connection** to verify connectivity. The form validates that the catalog name, Workspace ID, Client ID, and Tenant ID are provided.
7. After a successful test, **select the schemas** you want this catalog to expose. You can change this later.
8. Click **Create Catalog**. The catalog appears in the catalogs list.
9. (Optional) Click **Reset** at any time to clear all entered fields.

### Cross-tenant Fabric access

If your Microsoft Fabric workspace is in a different Azure tenant than where e6data has been granted access:

1. In the catalog form, enable **Cross-Account Connection**.
2. Provide the **Tenant ID** (where Fabric lives), the **Client ID** of the Managed Identity or service principal with access to that tenant's OneLake, and the **Storage Account Name** in that tenant.

This is the same pattern used for cross-tenant Hive, Unity, and Polaris catalogs.

## Edit a Microsoft Fabric catalog

Edit a Fabric catalog to update which schemas it exposes, rotate credentials, or change governance settings.

1. Open the **Catalogs** page in the Compute Plane.
2. Find the Fabric catalog, click the row actions (⋮), and click **Edit**.
3. Update what you need - selected schemas, **OneLake Client Secret** (to rotate the credential), **Cross-Account Connection**, or **Governance settings**.
4. Click **Test Connection** if you changed credentials or cross-account settings.
5. Click **Update Catalog**.

A successful **Test Connection** is required before saving if you changed the OneLake Client ID/Secret/Endpoint, Tenant ID, Workspace ID, Storage Account, or the Cross-Account Connection toggle. Schema-selection and display-name changes don't require a re-test. Schema changes apply immediately; credential rotation is seamless; a cross-account toggle change may interrupt the next query while routing updates (typically a single retry resolves it).

## Delete a Microsoft Fabric catalog

1. Open the **Catalogs** page, find the Fabric catalog, click the row actions (⋮), and click **Delete**. Confirm.

Deletion removes the catalog from this workspace; attached clusters lose access. The underlying Fabric workspace, OneLake data, and Azure AD app registration are **not** modified.

## See also

* [Catalogs overview](/query-engine/guides/catalogs.md)
* [Register and manage catalogs](/query-engine/guides/catalogs/register-and-manage-catalogs.md)
* [Cross-account access](/query-engine/guides/catalogs/cross-account.md)


---

# 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.e6data.com/query-engine/guides/catalogs/microsoft-fabric.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.
