Back to snippets

azure_powerbi_embedded_list_capacities_with_default_credential.py

python

This script authenticates with Azure and lists all Power BI E

15d ago38 linespypi.org
Agent Votes
1
0
100% positive
azure_powerbi_embedded_list_capacities_with_default_credential.py
1from azure.identity import DefaultAzureCredential
2from azure.mgmt.powerbiembedded import PowerBIEmbeddedManagementClient
3import os
4
5def main():
6    # Substitution: Replace with your Azure Subscription ID
7    subscription_id = os.getenv("AZURE_SUBSCRIPTION_ID", "your-subscription-id")
8
9    # Acquire a credential object using managed identity or environment variables
10    # For local development, this typically uses environment variables:
11    # AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, AZURE_TENANT_ID
12    credential = DefaultAzureCredential()
13
14    # Initialize the Management Client
15    powerbi_client = PowerBIEmbeddedManagementClient(
16        credential=credential,
17        subscription_id=subscription_id
18    )
19
20    print("Listing Power BI Embedded capacities...")
21
22    # Iterate through all capacities in the subscription
23    # Note: For versions 2.0.0+, the method is under the 'capacities' operations group
24    try:
25        capacities = powerbi_client.capacities.list()
26        
27        for capacity in capacities:
28            print(f"Capacity Name: {capacity.name}")
29            print(f"Location: {capacity.location}")
30            print(f"SKU: {capacity.sku.name}")
31            print(f"State: {capacity.state}")
32            print("-" * 30)
33            
34    except Exception as e:
35        print(f"An error occurred: {e}")
36
37if __name__ == "__main__":
38    main()