Jobs · Sales · Missouri

Get Deployment Pipelines from Power BI API with Python

Data Goblins · May, MO · 1 mo ago
SalesFull-time
Here's the reformatted job posting as clean, semantic HTML:

About the role

This article demonstrates how to use Python to retrieve deployment pipelines data from the Power BI Admin API. The solution shows how to authenticate using a Service Principal and extract pipeline information including users and stages.

Technical Implementation

The Python code provides a complete solution for:

  • Service Principal authentication with Azure AD
  • Making authenticated requests to the Power BI Admin API
  • Retrieving deployment pipelines with expanded user and stage details
  • Flattening nested JSON responses into a pandas DataFrame

Code Requirements

  • Python environment with azure.identity, requests, and pandas packages
  • Azure AD Service Principal with appropriate Power BI permissions
  • Tenant ID, Client ID, and Client Secret for authentication

Key Components

The implementation includes:

  • Authentication using ClientSecretCredential from Azure Identity
  • API endpoint for Power BI Admin pipelines with $expand parameter
  • Custom function to flatten nested JSON structures into a tabular format
  • Error handling for authentication and API requests

Setup Instructions

Before running the code:

  1. Create an Azure AD Service Principal
  2. Grant the Service Principal Power BI admin permissions
  3. Replace placeholder values for tenant ID, client ID, and client secret
  4. Consider using Azure Key Vault for secure credential storage (see Note 2 in code)

Example Output

The code produces a pandas DataFrame containing all deployment pipelines with expanded information about associated users and pipeline stages, flattened into a tabular structure for analysis.

Similar jobs