Some of you reported that some of the script provided were not working, so I decided to try it. The conclusion that I can obtain is the following:
I tried with the command “Set-SPOSITE <urltosc> -DisableAppViews Disable -DisableFlows Disable” in a Teams Site Collection, but I receveid the following error:
but as you can see, the error throwed but something related to groups, so I decided to execute this PS with a SC which is based in a classic template:
and it succeed, so the only conclusion that I extract from here, there are certain parameters not activated by design in Teams/O365 TS templates. I hope we will hear something from Microsoft to solve that mistery
The modern library experience is going to be the default view in a few weeks. But in this modern view I have found that many customers prefer to customize this view, for example to not to show Flow and PowerApps options, so you have the opportunity to disable the buttons for this particular list or event at site level. Obviously you could disable the services on tenant level.
Disable those buttons
Disabling Flow and PowerApps is possible but only on a web (or site collection) level. You can do so with PowerShell as described on Technet. As the sample only describes to disable Flow, and it is not using PnP-PowerShell I wrote a quick sample to achieve this using PnP-PowerShell. Besides the DisableFlows property there is a DisableAppViews property to disable the PowerApps button on the list as well! So your code would look something like the following
Connect-PnPOnline –Url https://tenant.sharepoint.com/sites/urlsc –Credentials (Get-Credential)
$ctx = Get-PnPContext
$ctx.Site.DisableAppViews = $true;
$ctx.Site.DisableFlows = $true;
Don’t worry about your existing Flows and PowerApps, because it will keep working and you are still able to start Flow and PowerApps interfaces. But, as you can imagine, no longer see the buttons. If you want to change again to show the buttons, set the properties DisableAppViews and DisableFlows to $false
Take into account that this values are only for site level, if you want to set them at web level, use the $ctx.Web and you are good to go.