How to Get Power BI Client ID
Getting a Power BI Client ID is the essential first step for automating, embedding, or connecting a custom application to your data. Think of it as a unique passport for your application, allowing it to securely interact with the Power BI service. This guide will walk you through every step of registering an application in Microsoft Azure and configuring it properly to get the Client ID you need.
What Exactly is a Power BI Client ID?
Technically called the "Application (client) ID," it's a globally unique identifier (GUID) that Azure Active Directory assigns to your application once you register it. It's not a secret, but it's the primary way Microsoft's identity platform recognizes your specific application when it requests access to your Power BI data through the API.
You absolutely need a Client ID if you plan to:
- Embed Power BI reports and dashboards into a custom web application, portal, or a software-as-a-service (SaaS) product for your customers.
- Automate Power BI tasks using the REST API, such as programmatically refreshing datasets, managing workspaces, or exporting reports.
- Connect third-party tools or scripts that require authenticated access to your Power BI tenant.
Without registering your application and obtaining this ID, the Power BI service has no way of authenticating or authorizing your connection securely.
Prerequisites: What You Need First
Before you jump into the Azure portal, make sure you have a few things squared away. This will make the process much smoother and prevent you from hitting a permission-related wall.
- A Power BI Tenant: If your organization uses Power BI or Microsoft 365, you already have one.
- A Power BI Pro or Premium License: To use the REST APIs and embed content, the account you use must have a Pro or Premium Per User (PPU) license.
- Admin Permissions in Azure: To register an application, you ideally need to be an Azure administrator (like a Global Administrator or Application Administrator). If you aren't, you might still be able to register the application, but you'll need an admin to grant the final permissions. If you see a permissions error during the process, you'll know who to ask for help.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
A Step-by-Step Guide to Getting Your Power BI Client ID
The entire process takes place inside the Microsoft Azure portal, the central hub for managing all of Microsoft's cloud services, including the identity and access management system that Power BI relies on.
Step 1: Sign in to the Azure Portal
First, head over to https://portal.azure.com/ and sign in with your work or school account with the appropriate permissions in your tenant.
Step 2: Navigate to Azure Active Directory
Once you’re logged in, the easiest way to find what you're looking for is to use the search bar at the top of the page. Type "Azure Active Directory" and select it from the results. It’s the service that handles all user accounts and app identities for your Microsoft environment.
Step 3: Go to "App registrations"
On the Azure Active Directory page, look at the menu on the left side. Under the "Manage" heading, click on "App registrations". This is where you'll create and manage the identities for all the custom applications that interact with your Microsoft cloud services.
Step 4: Create a New App Registration
At the top of the "App registrations" screen, click the "+ New registration" button. This will take you to a form where you'll define the basic details of your application. Here's how to fill out the form:
- Name: Give your application a descriptive name that you'll easily recognize later, like "Sales Team Analytics Portal" or "Daily Refresh Automation Script."
- Supported account types: This setting is important as it determines who can use your application. For most internal business apps, the right choice is "Accounts in this organizational directory only (Default Directory only - Single tenant)." This means only user accounts within your own organization can access it.
- Redirect URI (Optional): While technically optional, this is critical for any interactive application where a user has to log in. This URI is the endpoint where Azure AD sends the token after a user successfully authenticates. Select "Web" from the dropdown and enter a placeholder if you're just getting started, like
http://localhost:3000/callback. You can always add the real URI for your application later.
Once you've filled out the details, click the blue "Register" button at the bottom.
Step 5: Copy Your New Client ID!
Success! After you click "Register," you’ll be redirected to your new application’s main overview page. Right at the top, you will see a field labeled "Application (client) ID." This is the ID you've been looking for. Click the "copy to clipboard" icon next to it and paste it somewhere safe. You will also want to copy the "Directory (tenant) ID" from this page, as you almost always need both the Client ID and Tenant ID to authenticate properly.
Configuring Essential API Permissions
Getting the Client ID is only half the battle. By default, your newly registered application has no permissions to access any data. You need to explicitly grant it access to the Power BI APIs.
- On your application's page, click on "API permissions" in the left-hand menu.
- Click the "+ Add a permission" button.
- A new window will slide out, asking you to select an API. Click on "Power BI Service" from the list of Microsoft APIs.
- Now, you need to choose the type of permission your application requires. You'll see two options:
- Select the appropriate type, and then check the specific permissions you need. For example, to read datasets and reports, you might select
Report.Read.AllandDataset.Read.All. Remember the principle of least privilege - only grant the exact permissions your application needs to function, and no more. - After adding the permissions, you'll likely need to grant admin consent. If you're an admin, you can click the "Grant admin consent for [Your Organization]" button. If not, this button will be disabled, and you'll need to ask an administrator to do it for you. Until consent is granted, the permissions will not be active.
Free PDF · the crash course
AI Agents for Marketing Crash Course
Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.
Creating a Client Secret
Your Client ID is a public identifier, not a password. To prove its identity, your application also needs a secret credential. This is known as a Client Secret.
Here’s how to quickly generate one:
- On your application's page, click on "Certificates & secrets" in the left-hand menu.
- Click the "+ New client secret" button.
- Give your secret a short description (e.g., "WebAppSecret1") and choose an expiration period. Keep in mind that you'll have to generate a new one after it expires for your application to continue working.
- Click "Add."
This next part is extremely important. The page will now show you the secret's value. You must copy and save this value immediately. As soon as you leave this page, the value will be masked forever, and you will not be able to retrieve it again. Store it securely with your Client ID and Tenant ID in a password manager or secure vault.
Final Thoughts
That's the entire process, from start to finish. You’ve now successfully registered an application in Azure AD, located the key pieces of information like your Client ID and Tenant ID, and configured the necessary API permissions and secrets. Your application is now ready to securely authenticate with and control the Power BI service.
As you can see, connecting to a platform like Power BI for custom reporting requires several manual steps within the Azure portal just to get authenticated. We created Graphed to completely eliminate this setup friction. Instead of hunting for API keys and configuring app permissions, you simply connect your marketing and sales data sources with a few simple clicks. We handle all the secure API connections in the background, allowing you to go right to the fun part: asking questions in plain English and instantly getting back real-time, interactive dashboards.
Related Articles
How to Create Facebook Ads API for Claude Code
Create a Meta Marketing API access token that never expires, using a system user, so Claude Code can pull Facebook ad reports and manage campaigns.
ClickHouse vs Postgres: When to Switch to Columnar
Comparing ClickHouse vs PostgreSQL means matching storage architecture to workload. Row storage wins for transactions. Columnar wins for scan-heavy analytics.
Google Ads for Orthodontists: Get More Booked Consults
Most orthodontic Google Ads campaigns waste money on low-intent searches. The problem is structure, not the platform.