Don't miss your chance to take the Fabric Data Engineer (DP-600) exam for FREE! Find out how by attending the DP-600 session on April 23rd (pacific time), live or on-demand.
Learn moreJoin the FabCon + SQLCon recap series. Up next: Power BI, Real-Time Intelligence, IQ and AI, and Data Factory take center stage. All sessions are available on-demand after the live show. Register now
Hello Everybody,
I have a problem with a Power BI API
First i get the Token:
$url = 'https://login.windows.net/' . $directoryIdAzure . '/oauth2/token'
/** @var GuzzleHttp\Client $client **/
$response = $client->post(
$url,
[
"headers" => [
"Accept" => "application/json"
],
'form_params' => [
'resource' => 'https://analysis.windows.net/powerbi/api',
'client_id' => $clientIdAzure,
'client_secret' => $clientSecretAzure,
'grant_type' => 'client_credentials',
'username' => $user,
'password' => $pass,
'scope' => 'openid',
]
]
);
$body = json_decode($response->getBody()->getContents(), true);
$token = $body['access_token'];
After i need list all Workspaces using a token
$client2 = new \GuzzleHttp\Client();
$res = $client2->request(
'GET',
'https://api.powerbi.com/v1.0/myorg/groups',
[
'headers' =>
[
'Authorization' => 'Bearer ' . $token,
'Accept' => 'application/json',
'Content-type' => 'application/json'
]
]
);
$workspaces = json_decode($res->getBody()->getContents(), true);
Return this error for me:
"Client error: `GET https://api.powerbi.com/v1.0/myorg/groups` resulted in a `401 Unauthorized` response"
The permissions in the Azure it's OK:
Solved! Go to Solution.
I Solved my problem.
I change
'grant_type' => 'client_credentials',
to
'grant_type' => 'password',
and I had to disable Security Defaults in the Azure
Azure Portal > Azure AD > Properties > Click on Manage Security Defaults link > Toggle Enable Security Defaults button to NO.
I hope thats help anyone.
You also need to enable use of the Fabric API within the Developer settings of your Power BI tenant. See ths link for details: https://learn.microsoft.com/en-us/power-bi/developer/embedded/embed-service-principal
I Solved my problem.
I change
'grant_type' => 'client_credentials',
to
'grant_type' => 'password',
and I had to disable Security Defaults in the Azure
Azure Portal > Azure AD > Properties > Click on Manage Security Defaults link > Toggle Enable Security Defaults button to NO.
I hope thats help anyone.
Check out the April 2026 Power BI update to learn about new features.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
| User | Count |
|---|---|
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |