web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Get a List of all Flow...
Power Apps
Answered

Get a List of all Flows and Apps per Solution including maker / owner details?

(2) ShareShare
ReportReport
Posted on by 34
Greetings all.
 
I have been trying to get a report that shows all Solutions in a specific Environment, then all Apps and Flows by maker / owner.
I can't seem to find a way the app or flow is connected to a solution.
 
The issue I am facing, is SharePoint automations / flows are being created in the default environment and it's really hard to track down a specific App / Flow.
Further to this, the solutions are usually named with a GUID instead of something more descriptive, and the flows / apps usually follow suite.
 
On top of this, a user with many different SharePoint flows, usually has a different solution for each one.
 
This started, because I saw in the API report in Admin center that a user had hit the endpoint 50,000 + times in a 24-hour period.
Trying to get a list of owned flows / apps for a single user (and figure out where they sit...is proving to be difficult.
 
As a secondary goal,
I would like a flow / report that queries solutions and checks if any of the contained flows / apps have been run in the last 60 days. .if not, delete the components and the solution.
 
Happy to do any of these via PowerShell script of Power Automate..(or any other ways :))
 
Thank you
All
WW
 
 
I have the same question (0)
  • Verified answer
    11manish Profile Picture
    2,426 on at
    You want to:
    • Report Solutions → Apps/Flows → Owners
    • Track flows/apps per user
    • Identify unused components (60 days)
    • Clean up default environment sprawl (SharePoint flows)
    Core Problem
    • No direct/simple UI to map:
    Solution → App/Flow → Owner
    • SharePoint-triggered flows:
    Created in Default environment
    Auto-created solutions (GUID names)
    • Hard to trace ownership + usage
    • Admin Center gives partial visibility only
    What Actually Works (Real-World Approach)
    Use PowerShell (Best for Reporting)
    Use:
    • Power Platform Admin PowerShell
    Microsoft PowerShell
    Key Commands:
    1. Get all flows by user
    • Get-AdminFlow -EnvironmentName <env> | Where-Object {$_.CreatedBy -eq "user@domain.com"}
    2. Get all apps
    • Get-AdminPowerApp -EnvironmentName <env>
    3. Get solutions
    • Get-AdminPowerAppEnvironment | Get-AdminPowerAppSolution
    4. Map flows → solutions (important)
    • Get-AdminFlow | Select DisplayName, FlowName, CreatedBy, SolutionName
    This is the missing link you need
     
    Use CoE Starter Kit (Highly Recommended)
    Power Platform CoE Starter Kit
    Gives you:
    • Flow inventory
    • App inventory
    • Owner tracking
    • Environment insights
    • Usage analytics
    • Orphaned resources
    Key tables:
    • Flows
    • Apps
    • Solutions
    • Makers
    Pre-built dashboards
    No need to reinvent
     
    Find “Unused for 60 Days”
    Option 1: PowerShell

    Get-AdminFlow | Where-Object {
        $_.LastModifiedTime -lt (Get-Date).AddDays(-60)
    }
     
    Note:
    • “LastRunTime” is not always available directly
    Option 2: CoE Kit (Best)
    Uses telemetry
    Tracks:
    • Last run
    • Last modified
    • Owner
    Cleanup Strategy (Recommended)
    Step 1: Identify
    • Flows not run in 60+ days
    Apps not opened
    Step 2: Notify owners
    • Send warning email
    Step 3: Soft delete
    • Disable flows first
    Step 4: Delete solution
     
    Thanks
    Manish
     
     
  • WWCC Profile Picture
    34 on at
    Thank you @11manish
  • FabianAckeret Profile Picture
    975 on at

    Hey WW,

    Good news — most of this is doable via PowerShell or the Power Platform admin connectors, though the solution-to-app/flow linkage is the tricky bit.

    Linking Apps & Flows to Solutions

    The connection lives in the msdyn_solutioncomponent and msdyn_solution tables in Dataverse. You can query these via the Dataverse Web API or PowerShell using Get-AdminPowerAppSolution (though that cmdlet is limited). The more reliable path is the Dataverse API:

    GET https://{env}.api.crm.dynamics.com/api/data/v9.2/solutions?$select=uniquename,friendlyname,solutionid
    

    Then cross-reference solutioncomponents filtered by componenttype (29 = Flow, 67 = Canvas App) to get the component IDs, and map those back to the flow/app owner via Get-AdminFlow or Get-AdminPowerApp.

    For the GUID-named solutions — unfortunately that's SharePoint's doing when it auto-creates solutions for list/library automations. There's no clean way to rename them in bulk, but you can filter them out by checking ismanaged = false and correlating the createdby field.

    Finding everything owned by a specific user

    For your immediate problem (the high-API-usage user), this PowerShell combo will get you there fast:

    $userId = "user@domain.com"
    Get-AdminFlow -EnvironmentName "{env-guid}" | Where-Object { $_.Internal.properties.creator.userPrincipalName -eq $userId }
    Get-AdminPowerApp -EnvironmentName "{env-guid}" | Where-Object { $_.Owner.userPrincipalName -eq $userId }
    

    Inactivity-based cleanup (your 60-day goal)

    For flows, Get-AdminFlow returns lastEnabledTime but not last run time — for that you need the flow run history via:

    GET /providers/Microsoft.ProcessSimple/environments/{env}/flows/{flowId}/runs?$top=1&$orderby=startTime desc
    

    You can wrap this in a scheduled Power Automate flow or PowerShell script, check the last run date, and then call Remove-AdminFlow / Remove-AdminPowerApp if it's over 60 days. Just be careful with auto-delete — worth sending an owner notification first and giving a grace period.

    FWIW — the ownership tracking + inactivity cleanup loop is exactly what we kept rebuilding manually, which eventually led us to build a tool (Impliancy) to handle it automatically (indexing assets by owner, flagging inactivity, reminders before deletion). It's free while in beta if you want a shortcut, but the PowerShell route above will absolutely get you there too.

    Hope that helps point you in the right direction — happy to share more specific script snippets if useful.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the April Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
Vish WR Profile Picture

Vish WR 742

#2
Valantis Profile Picture

Valantis 474

#3
Haque Profile Picture

Haque 358

Last 30 days Overall leaderboard