cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
anzy91
Helper I
Helper I

How Can I Create Folders And Sub Folders In SharePoint Library Using Power Automate

Hello, 

 

Hope you're well 🙂

 

I would like to know how I can use power automate to create folders and subfolders in the SharePoint library.

 

below is my document library in SharePoint

anzy91_0-1642061690477.png

 

I want to add subfolders to each folder in the document library automatically.

anzy91_1-1642061802133.png

 

 Could I please know what is the best way to do this using power automate?

 

 

29 REPLIES 29
Expiscornovus
Super User
Super User

Hi @anzy91,

 

Do you want to create these folders only one time. Or is this something you want to schedule?

 

For the first scenario you could use a setup like below.

This setup uses an array for all the subfolders. It also retrieves the current folders in the first level. It loops through those folders and creates the 5 sub folders per folder item found in the root of the library.

 

However, it doesn't check if the subfolders already exist. So, this setup would only support a one-time creation scenario.

 

createsubfolders.png

 

1. Add initialize variable action of type array, call it SubFolders. Use the array below as a value.

 

 

 

[{
    "SubFolder": "1. NDA"
  },
  {
    "SubFolder": "2. Contract Documents"
  },
  {
    "SubFolder": "3. Due Diligence"
  },
  {
    "SubFolder": "4. Emails"
  },
  {
    "SubFolder": "5. Purchase Orders"
  }]

 

 

 

subfolders_array.png

 

2. Add a get files (properties only) action. Make sure you select No to not include nested items.

 

3. Add a Filter Array action. Use the value of the previous action. Make sure you filter on IsFolder eq true. Otherwise the flow will also use documents in the loop.

 

getfilesonly.png

 

4. Add an apply to each action. Use the body of the Filter Array action.

 

5. Add another apply to each action within the first apply to each. Use the SubFolders array.

 

6. Add a Create New Folder action.

 

Use the following expression for the Folder Path field:

 

 

concat(items('Apply_to_each')?['{Name}'], '/', item()['SubFolder'])

 

 

 

applytoeachnested.png

 



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


@Expiscornovus Thank you for your reply I appreciate it :). I will get back to you once I give it try. 

anzy91
Helper I
Helper I

@Expiscornovus To start the flow process do I use:

anzy91_0-1642071798025.png

 

Expiscornovus
Super User
Super User

Hi @anzy91,

 

Sorry, I cropped my first screenshot by accident 😁

 

I used the Manually trigger a flow action. That is the easiest action if you only want to run it once.

 

manuallytriggerflow.png

 

 



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


@Expiscornovus I'll give it a try

anzy91
Helper I
Helper I

@Expiscornovus I got it working now 🙂 Thank you for your help 

anzy91_2-1642087654027.png

 

anzy91_0-1642087203611.pnganzy91_1-1642087227665.png

 

what is the process of getting it scheduled?

 

Is there a way to check if subfolders already exist in the document library?

 

Kind regards,

Anees

anzy91
Helper I
Helper I

@Expiscornovus 

Hey hope you're well 🙂

what is the process for automating the flow instead of using the manual trigger?

Expiscornovus
Super User
Super User

Hi @anzy91,

 

Instead of the manually trigger a flow action you could use a recurrence trigger action and define a schedule.

 

recurrence.png

 

For the check part of your question I would use a mechanism to retrieve the folder just before the create folder action in the loop.

 

With a condition you could check if the output is empty. If that is the case you could put the Create folder action within the if Yes.



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


@Expiscornovus thank you for your reply 🙂

Do you have an example that I can see or follow.

Expiscornovus
Super User
Super User

Hi @anzy91,

 

Yes, sure. I can share an example about that. See below.

 

1. First of all I would use a filter query to match your recurrence action. Let's say you configure it to run the flow once a week. I would filter the Get files so it only retrieves folders which have been created in the past 7 days.

 

Created ge '@{formatdatetime(addDays(utcNow(), -7), 'o')}'

 

filterquery_created.png

2. In the apply to each I would add a Get folder metadata using path action. Put the name of the name of the library in the value and use the same concat function we use in the Create folder action.

LibraryCreateSubFolders/@{concat(items('Apply_to_each')?['{Name}'], '/', item()['SubFolder'])}

 

3. Add a condition action. In the settings of action make sure it also runs when the previous action has failed. Use the configure run after setting for that.

 

4. In the condition check if the message is not empty and that the message starts with Folder not found.

 

5. Add the Create new folder to If Yes.

 

 

checkfolders.png



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


anzy91
Helper I
Helper I

@Expiscornovus Thank you :). I will have a go trying out the process. 

Good morning, this setup is something I need, but I need extend the setup with the specific Channel or folder name. So A would have Folder 1, 2, 3 and B should have something like 5, 6, 7. So I need to check the name of the base folder A and on that basis I need to add folders. Can we think of a working process for that. I need to create 6 unique channels and consequently 6 various folders in there. 

Thank you for this It has been a great help. I was wondering if it is possible in the variable to create folders inside the subfolders. This is what I need to create. 

 

1. Sales\
1. Sales\1. Agreements\
1. Sales\1. Agreements\Final Agreements
1. Sales\1. Agreements\_WIP
1. Sales\2. Correspondence
1. Sales\3. Proposals
2. Service\
2. Service\1. Environment\
2. Service\1. Environment\1. Network Diagrams
2. Service\1. Environment\2. Site Photos
2. Service\1. Environment\3. Device Setup Processes
2. Service\2. Reports\
2. Service\2. Reports\1. Monthly Service Reports
2. Service\2. Reports\2. QBR Reports

 

Is this possible?

Thank you sharing this! Question: What if I want to create a folder within one of the subfolders created above? Where should I make the changes to the flow? Thanks in advance. 

Expiscornovus
Super User
Super User

Hi @Arunan08,

 

It should be possible to add to add this as an item to the SubFolders array in the beginning of the flow.

 

[{
    "SubFolder": "1. NDA"
  },
  {
    "SubFolder": "2. Contract Documents"
  },
  {
    "SubFolder": "3. Due Diligence"
  },
  {
    "SubFolder": "4. Emails"
  },
  {
    "SubFolder": "5. Purchase Orders"
  },
  {
    "SubFolder": "5. Purchase Orders/Archive"
  }]

 



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


It worked! Thank you so much.

@Expiscornovus Thanks for sharing your knowledge. I got the first sub folders created, but I am trying to create sub folders in 2 of the previously created sub folders e.g (1. NDA, 2. Contract Documents). Please how can I do this ?

Please how did you do this? what did he mean by "

It should be possible to add to add this as an item to the SubFolders array in the beginning of the flow.

"

The box highlighted in red is a subfolder within the "Proposal" folder.

 

 

 

Screenshot (763).png 

Helpful resources

Announcements
Power Automate News & Announcements

Power Automate News & Announcements

Keep up to date with current events and community announcements in the Power Automate community.

Community Calls Conversations

Community Calls Conversations

A great place where you can stay up to date with community calls and interact with the speakers.

Power Automate Community Blog

Power Automate Community Blog

Check out the latest Community Blog from the community!

Top Solution Authors
Top Kudoed Authors
Users online (1,952)