Question: I'm trying to retrieve the list of available PowerApps from my Office 365 tenant. Is there a set of APIs that I could use to get the information about PowerApps (existing environments, all PowerApps, PowerApps shared with me, etc.)?

I couldn't find any documentation on this.

Answer: 
You can try PowerShell to get all the necessary details like below: 

**Display a list of all PowerApps**

```
Get-AdminPowerApp

```

Returns a list of all PowerApps across the tenant, with details of each (e.g., application name (guid), display name, creator, etc).

**Display the number of apps each user owns**

```
Get-AdminPowerApp | Select –ExpandProperty Owner | Select –ExpandProperty displayname | Group

```

**Display the number of apps in each environment**

```
Get-AdminPowerApp | Select -ExpandProperty EnvironmentName | Group | %{ New-Object -TypeName PSObject -Property @{ DisplayName = (Get-AdminPowerAppEnvironment -EnvironmentName $_.Name | Select -ExpandProperty displayName); Count = $_.Count } }

```

[Read more](https://learn.microsoft.com/en-us/power-platform/admin/powerapps-powershell#display-a-list-of-all-powerapps)
You can use the [PowerApps for Admins](https://learn.microsoft.com/en-us/connectors/powerappsforadmins/) connectors in Flow to retrieve all this information. Use them as your web service and write the data anywhere you like. Its a little more automated than a local terminal. 

If you're super hacky, you might spin up a [PowerShell Azure Function](https://learn.microsoft.com/en-us/azure/azure-functions/functions-create-first-function-powershell) instance to run those PS scripts serverless!