Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredJoin us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM. Register now.
Does anyone know a way to programmatically create subscriptions? We already have the azure groups we just don't want to have to go through and create all the (50-100) subscriptions if there is a way to automate this.
Solved! Go to Solution.
Hi @ForTheQuestions ,
Base on my research, I didn't find a suitable way to programmatically create subscriptions. You can try using the method in the link below as a workaround to create a subscription.
1. Power Bi subscriptions by Powershell
You cannot programmatically trigger e-mail subscriptions. They are running according their schedule. But you can use Export to File API to export the report to a PDF file (or some other supported file type) and send it to someone. This means that the workspace must be attached to a dedicated capacity (Power BI Premium P SKU, Power BI Premium EM SKU or Power BI Embedded A SKU, and probably Premium per user) and you should maintain the list of "subscribers" on your own.
Here is some PowerShell code, which uses Power BI Management CmdLets, which will export a report to PDF and send it by e-mail. You need to edit the parameters in the beginning of the code, like report ID, workspace ID, credentials, recipients, etc.
############################################################# # Install-Module -Name MicrosoftPowerBIMgmt # Install-Module -Name MicrosoftPowerBIMgmt -Scope CurrentUser ############################################################# Import-Module MicrosoftPowerBIMgmt .... ############################################################# # E-mail settings ############################################################# $emailSmtpServer = "smtp.office365.com" $emailSmtpServerPort = 587 $emailTo = $username $emailSubject = "Here is your report" $emailBodyHtml = "Please find <b>your report</b> attached here." $emailUser = "account@example.com" $emailPassword = "SuperStrongPassword" $emailFrom = $emailUser $credential = New-Object System.Management.Automation.PSCredential($username, $password) Connect-PowerBIServiceAccount -Credential $credential $settings = @{ includeHiddenPages = $false; locale = "en-us" } $powerBIReportConfiguration = @{ settings = $settings } $export_body = @{ format = $format; powerBIReportConfiguration = $powerBIReportConfiguration } #'{ # format: "$format", # powerBIReportConfiguration: { settings: { includeHiddenPages: false, locale: "en-us" } } #}'
.....
2. PowerAutomate
Export and email a Power BI report with Power Automate
Schedule, Export and Email Power BI Reports using Power Automate
Best Regards
Hi @ForTheQuestions ,
Base on my research, I didn't find a suitable way to programmatically create subscriptions. You can try using the method in the link below as a workaround to create a subscription.
1. Power Bi subscriptions by Powershell
You cannot programmatically trigger e-mail subscriptions. They are running according their schedule. But you can use Export to File API to export the report to a PDF file (or some other supported file type) and send it to someone. This means that the workspace must be attached to a dedicated capacity (Power BI Premium P SKU, Power BI Premium EM SKU or Power BI Embedded A SKU, and probably Premium per user) and you should maintain the list of "subscribers" on your own.
Here is some PowerShell code, which uses Power BI Management CmdLets, which will export a report to PDF and send it by e-mail. You need to edit the parameters in the beginning of the code, like report ID, workspace ID, credentials, recipients, etc.
############################################################# # Install-Module -Name MicrosoftPowerBIMgmt # Install-Module -Name MicrosoftPowerBIMgmt -Scope CurrentUser ############################################################# Import-Module MicrosoftPowerBIMgmt .... ############################################################# # E-mail settings ############################################################# $emailSmtpServer = "smtp.office365.com" $emailSmtpServerPort = 587 $emailTo = $username $emailSubject = "Here is your report" $emailBodyHtml = "Please find <b>your report</b> attached here." $emailUser = "account@example.com" $emailPassword = "SuperStrongPassword" $emailFrom = $emailUser $credential = New-Object System.Management.Automation.PSCredential($username, $password) Connect-PowerBIServiceAccount -Credential $credential $settings = @{ includeHiddenPages = $false; locale = "en-us" } $powerBIReportConfiguration = @{ settings = $settings } $export_body = @{ format = $format; powerBIReportConfiguration = $powerBIReportConfiguration } #'{ # format: "$format", # powerBIReportConfiguration: { settings: { includeHiddenPages: false, locale: "en-us" } } #}'
.....
2. PowerAutomate
Export and email a Power BI report with Power Automate
Schedule, Export and Email Power BI Reports using Power Automate
Best Regards
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |