List of all SharePoint active sites... in a list (modern)

Occasional Contributor

How would I create a SharePoint list of active SharePoint sites?


I know I can view my active sites in SharePoint Admin Centre, but I want our users to be able to browse through in a modern experience a filtered list of all our active projects.


I know I could create a manual SharePoint list, but given we have hundreds of projects per year, I really need a list that automatically shows all active sites (we create all sites so they are accessible to all in the organisation).


A SharePoint List would be a helpful way to present them as I can apply filters, add columns and set views so that the lists show only certain types of projects, but open to other ideas. Any suggestions?



4 Replies
One possible way without having to write a line of code is the following:
(1) Create a Site that will be the entry point to the Project Sites
(2) Promote the Site to be a Hub Site
(3) Associate all the Project Sites to the Hub site
(4) Add a Sites WebPart to the Home page of the Hub Site and just configure it to get all the sites joined to the Hub
Juan beat me to the option to write code to do this. Another way to do this - potentially - is to have an approval process based on a SharePoint list for all Teams/SharePoint sites (since every team creates a SharePoint site). This way you capture the request and you can add more details via new columns. Of course, if you don't have a controlled process, then the only options may be (a) script or (b) hubs.

Hi Juan & Andrew, those options don't quite work as I would like. Do you think I could use Power Automate to add a new site (trigger) to the SharePoint list when it is created? Writing code is not really an option, but think I could figure Power Automate.

Can't find a trigger for new site, so how about
1. PowerApps to build a form
2. Send data to SharePoint list
3. PowerAutomate to trigger when a new item is added
a. Create the Microsoft Team
b. Add Member to the Team
c. Get SharePoint URL of Team (can you/how do you do this with Graph API???)