cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Anonymous
Not applicable

Automatically delete files in Document Library after X days

Hi,

 

How can i create a flow so that everytime a file is created/added in a SharePoint Document Library, that the particular file than will be deleted in lets say in "7 days".

 

The point is that the no files older than 7 days will stay in the Document Library.

 

Thanks...

 

 

 


Accepted Solutions
Highlighted
gamoraes
Level 10

Re: Automatically delete files in Document Library after X days

Hi @Anonymous, first of all thanks for post.

 

i think the best way to do this is using a schedule to get all documents, look at example below:

flow1.png

 

Detaileds Steps:

 

1 - Use an schedule trigger with 1 day interval

2 - Use the action - SharePoint - Get file properties only

      Put your Site and Document Libary name

3- Use an foreach and put values as result

4- Use an advanced condiction to verify if the actual date is greater than document created date + 7

      This is the condiction code, in red are the days to add, change if you need:

      

@greater(utcNow('yyyyMMdd'), formatDateTime(adddays(item()?['Created'],7),'yyyyMMdd'))

 

5- If the condiction is yes, the document is older than 7 days

6- Use the action - SharePoint - Delete Item

 

Hope this helps.

 

Best Regards,

 

Gustavo Moraes


All Replies
Highlighted
gamoraes
Level 10

Re: Automatically delete files in Document Library after X days

Hi @Anonymous, first of all thanks for post.

 

i think the best way to do this is using a schedule to get all documents, look at example below:

flow1.png

 

Detaileds Steps:

 

1 - Use an schedule trigger with 1 day interval

2 - Use the action - SharePoint - Get file properties only

      Put your Site and Document Libary name

3- Use an foreach and put values as result

4- Use an advanced condiction to verify if the actual date is greater than document created date + 7

      This is the condiction code, in red are the days to add, change if you need:

      

@greater(utcNow('yyyyMMdd'), formatDateTime(adddays(item()?['Created'],7),'yyyyMMdd'))

 

5- If the condiction is yes, the document is older than 7 days

6- Use the action - SharePoint - Delete Item

 

Hope this helps.

 

Best Regards,

 

Gustavo Moraes

Anonymous
Not applicable

Re: Automatically delete files in Document Library after X days

Hi Gustavo,

 

Thank you very much for your reply. I will try this out later

What if you want to change from 7 days to lets say 60 minutes?

 

Thanks again

gamoraes
Level 10

Re: Automatically delete files in Document Library after X days

Simple change adddays to addminutes, you can use other functions, to see docs look here inside Date Functions

Community Support Team
Community Support Team

Re: Automatically delete files in Document Library after X days

Hi @adamk,

 

I agree with @gamoraes’s thought, I have made a test on my side and the flow works well.15.JPG

The flow works successfully as below:16.JPG

If you have any further questions, please feel free to reply me here.

 

Bets regards,

Kris

ThomasAzar
Level: Power Up

Re: Automatically delete files in Document Library after X days

For the flow when you get to the Action for "SharePoint - Delete Items " It is asking me for the list and for the id. Am I doing something wrong? I am wanting to auto delete all files older than 21 days that were added to the Documents folder. 

freder1ck
Level: Powered On

Re: Automatically delete files in Document Library after X days

@ThomasAzar

I had a similar issue.

 

First, I created a new library in the workspace just for auto deletion.

 

Delete Item did not work for me. Instead, I had to use Sharepoint: Delete File action.  

 

There are two fields for this action: 

  • Site Address: (name of the workspace group)
  • File Identifier: (dynamic field called Identifier. Identifier contains both the Library name AND the actual file name for each file.

Fred

 

skim22
Level: Powered On

Re: Automatically delete files in Document Library after X days

Hi @gamoraes,

 

In your condition statement, @greater(utcNow('yyyyMMdd'), formatDateTime(adddays(item()?['Created'],1),'yyyyMMdd'))  -  is the "utcNow" telling MS Flow to look for the # of specified days based on when the file was created in SharePoint?

 

In my particular case, I'm not actually creating a new file within SharePoint, but rather creating a word doc on my computer, then uploading it into SharePoint documents library.  Will your condition statement treat the file in the same way as the upload date/time being the same as created date/time?  I hope my question makes sense.

 

Thanks!

skim22
Level: Powered On

Re: Automatically delete files in Document Library after X days

Hi @v-xida-msft,

 

I also created this same flow and followed the instructions given, yet my flow fails every time.  I'm not sure where I'm going wrong, any assistance would be appreciated!

 

Aso, would you please tell me if my understanding of this particular flow is correct?

 

Interval - 1 Day : This flow will "trigger" every day or once a day

Condition - Each time this flow is triggered, it is going to check if the designated file (based on filename) is older than X number of days, in this case, older than 1 day.

 

Thank you!!

 

flow.JPG

 

gamoraes
Level 10

Re: Automatically delete files in Document Library after X days

HI @skim22.

 

I'll do an example for you.

 

Regards,

 

Gustavo Moraes

>