← ClaudeAtlas

fabric-authlisted

Use when authenticating to Microsoft Fabric APIs — getting 401 Unauthorized errors, choosing token audience/scope for Fabric REST, Power BI REST, OneLake, Warehouse/SQL, KQL, XMLA, or Azure ARM, or running `az login` / `az account get-access-token` / `az rest` for Fabric. Covers the full token-audience table, the OneLake-only `storage.azure.com/.default` requirement, `az login` flow variants (--allow-no-subscriptions, --use-device-code, SPN cert, managed identity), `az rest --resource` requirement (Fabric URL is not a built-in Azure endpoint), JWT decoding for 401 debugging, and why using the wrong audience is the #1 cause of 401s.
wardawgmalvicious/claude-config · ★ 1 · API & Backend · score 72
Install: claude install-skill wardawgmalvicious/claude-config
# Fabric authentication & token audiences All Fabric operations require Microsoft Entra ID OAuth 2.0 bearer tokens. **Using the wrong audience is the #1 cause of 401 errors.** | Access Target | Token Audience / Scope | |---|---| | **Fabric REST API** | `https://api.fabric.microsoft.com/.default` | | **Power BI REST API** (refresh, data sources, permissions, DAX) | `https://analysis.windows.net/powerbi/api/.default` | | **OneLake** (DFS/Blob) | `https://storage.azure.com/.default` | | **Warehouse / SQL Endpoint / SQL Database** (TDS) | `https://database.windows.net/.default` | | **KQL / Kusto** | `https://kusto.kusto.windows.net/.default` | | **XMLA Endpoint** | `https://analysis.windows.net/powerbi/api/.default` | | **Azure Resource Management** | `https://management.azure.com/.default` | ```bash az login az account get-access-token --resource https://api.fabric.microsoft.com # Fabric REST az account get-access-token --resource https://database.windows.net # SQL / TDS az account get-access-token --resource https://analysis.windows.net/powerbi/api # Power BI ``` **Critical**: OneLake ONLY accepts `https://storage.azure.com/.default` — using `https://datalake.azure.net/` will fail. ## `az login` flow variants ```bash az login --allow-no-subscriptions --tenant <tid> # Fabric tenant with no Azure subscription az login --use-device-code --tenant <tid> # headless / SSH / no-browser az login --service-principal -u <appId> -p <secret> --tenant <tid>