Power BI Integration
Connect Lucaro to Microsoft Power BI to audit workspaces, track dataset usage, and discover DAX measure definitions.
What You Get
Workspace Inventory
Complete catalog of workspaces, datasets, reports, and dashboards
DAX Analysis
Extract and catalog DAX measures and calculated columns
Usage Tracking
Activity events, user access patterns, and refresh history
Refresh Monitoring
Dataset refresh schedules, history, and failure alerts
Prerequisites
- Power BI Pro or Premium license
- Azure AD App Registration with Power BI API permissions
- Tenant Admin consent (for activity events)
Setup Instructions
1. Create Azure AD App Registration
- Go to Azure Portal → Azure Active Directory → App registrations
- Click New registration
- Name it "Lucaro Power BI Integration"
- Set the redirect URI to
https://app.lucaro.dev/oauth/callback - Click Register
2. Configure API Permissions
Add these Power BI Service permissions:
Required permissions: - Dataset.Read.All - Report.Read.All - Dashboard.Read.All - Workspace.Read.All - Tenant.Read.All (for activity events) - Dataflow.Read.All
3. Create Client Secret
- In your app registration, go to Certificates & secrets
- Click New client secret
- Set an expiration period and click Add
- Copy the secret value immediately (it won't be shown again)
4. Connect in Lucaro
curl -X POST "https://api.lucaro.dev/v2/projects/{projectId}/integrations/powerbi" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"tenant_id": "your-azure-tenant-id",
"client_id": "your-app-client-id",
"client_secret": "your-client-secret"
}'What Gets Synced
| Asset Type | Metadata Captured |
|---|---|
| Workspaces | Name, type, members, capacity |
| Datasets | Tables, measures (DAX), relationships, refresh schedule |
| Reports | Name, pages, dataset binding, owner |
| Dashboards | Tiles, source reports, subscriptions |
| Dataflows | Entities, data sources, refresh schedule |
DAX Measure Extraction
Lucaro extracts DAX measure definitions from your datasets:
// Example extracted measure
{
"name": "Total Revenue",
"expression": "SUM(Sales[Amount])",
"table": "Sales",
"format_string": "$#,##0",
"description": "Sum of all sales amounts"
}These measures are cataloged and can be compared against your Lucaro metrics registry for consistency.
Activity Events
With admin consent, Lucaro captures Power BI activity events:
- Report views and exports
- Dashboard access
- Dataset refreshes
- Sharing and permission changes