Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
nkasdali
Microsoft Employee
Microsoft Employee

GetDatasourcesAsAdmin Powershell help

Hi All,

I need your help to build this ForEach loop, unfortunately i'm not familiar with PowerShell.

 

First API call helps me to get all my datasets, then, i have to passe the "id" of each one to the datasource APi call :

 

 

 

 

################## GET Datasets DATA###########################################
Write-Host("Getting datasets data.....")
$DatasetsApi = 'https://api.powerbi.com/v1.0/myorg/admin/datasets?$top=2'
$DatasetsCall = Invoke-PowerBIRestMethod -Url $DatasetsApi -Method Get 

################## GET Datasources DATA###########################################
ForEach ($DatasetsCall in $DatasetsCall)
{
$DatasourceApi = 'https://api.powerbi.com/v1.0/myorg/admin/datasets/&'+$DatasetsCall.id+'&/datasources'

$DatasourceCall = Invoke-PowerBIRestMethod -Url $DatasourceApi -Method Get 
$DatasourceCall

}

 

 

 

 

Thank you for your help

1 ACCEPTED SOLUTION

Hi @nkasdali ,

 

Please try this.

################## GET Datasets DATA###########################################
Write-Host("Getting datasets data.....")
$DatasetsApi = 'https://api.powerbi.com/v1.0/myorg/admin/datasets?$top=2'
$DatasetsCall = Invoke-PowerBIRestMethod -Url $DatasetsApi -Method Get 

################## GET Datasources DATA###########################################
ForEach ($DatasetsCall in $DatasetsCall)
{
    $DatasourceApi = "https://api.powerbi.com/v1.0/myorg/admin/datasets/" + $DatasetsCall.Id + "/datasources"
    $DatasourceCall = Invoke-PowerBIRestMethod -Url $DatasourceApi -Method Get 
    $DatasourceCall

}

 

Best regards,
Lionel Chen

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

View solution in original post

3 REPLIES 3
nkasdali
Microsoft Employee
Microsoft Employee

Up 😞

Hi @nkasdali ,

 

Please try this.

################## GET Datasets DATA###########################################
Write-Host("Getting datasets data.....")
$DatasetsApi = 'https://api.powerbi.com/v1.0/myorg/admin/datasets?$top=2'
$DatasetsCall = Invoke-PowerBIRestMethod -Url $DatasetsApi -Method Get 

################## GET Datasources DATA###########################################
ForEach ($DatasetsCall in $DatasetsCall)
{
    $DatasourceApi = "https://api.powerbi.com/v1.0/myorg/admin/datasets/" + $DatasetsCall.Id + "/datasources"
    $DatasourceCall = Invoke-PowerBIRestMethod -Url $DatasourceApi -Method Get 
    $DatasourceCall

}

 

Best regards,
Lionel Chen

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

 

Thank you 🙂

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

Find out what's new and trending in the Fabric community.

July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.