cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Lina_Ma
Regular Visitor

Renaming a File in SharePoint Online

Hi 🙂

I am trying to rename a file in a document library on SharePoint Online, I want that when a user upload a file, a flow change it name, adding the current date and hour. I am not know the formula to add the date at the name of the file, can help me please whit information about that. Is important too that when the user upload a new document the flow don't generate a new version on the historical version document.

Im am trying whit sharepoint designer because I don't know how to create a flow in Microsoft Flows, thanks fot your helps.

🙂 😃

1 ACCEPTED SOLUTION

Accepted Solutions
v-bacao-msft
Community Support
Community Support

Hi @Lina_Ma,

 

There is no action to rename SharePoint files directly currently. If you want to the feature to be supported in Microsoft Flow, you could vote for the similar ideal in the forum below:

https://powerusers.microsoft.com/t5/Flow-Ideas/New-SharePoint-Action-rename-file-folder-document-set...

Maybe you could consider using "Send a http request to SharePoint" action to rename the file.

Use Compose to get the current Date and Hour, and then prefix it before the file name.

It is recommended to set a Delay action to avoid delays in the execution of the action.

But unfortunately, the action executed in the Flow for the files in SharePoint will change the version of the file, and the Modified user is determined according to the account of the connection configured on the action.

Anyway, if you want to rename the file name, you could refer to the following image:

44.PNG

Besides, for more information about SharePoint http request, please refer to link:

https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/working-with-folders-and-files-with-rest

Please take a try.

 

Best Regards,

Barry

 

Community Support Team _ Barry
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

61 REPLIES 61
faustocapellanj
Memorable Member
Memorable Member

Hi @Lina_Ma

 

There have been quite a few posts about what you're looking for here in the forums. The solution in the link below can give you an idea on how to go about what you want to do. Please give it a try and let us know.

https://powerusers.microsoft.com/t5/General-Flow-Discussion/Manipulate-filename-from-email-attachmen...

 

Regards,

Fausto Capellan, Jr

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!
v-bacao-msft
Community Support
Community Support

Hi @Lina_Ma,

 

There is no action to rename SharePoint files directly currently. If you want to the feature to be supported in Microsoft Flow, you could vote for the similar ideal in the forum below:

https://powerusers.microsoft.com/t5/Flow-Ideas/New-SharePoint-Action-rename-file-folder-document-set...

Maybe you could consider using "Send a http request to SharePoint" action to rename the file.

Use Compose to get the current Date and Hour, and then prefix it before the file name.

It is recommended to set a Delay action to avoid delays in the execution of the action.

But unfortunately, the action executed in the Flow for the files in SharePoint will change the version of the file, and the Modified user is determined according to the account of the connection configured on the action.

Anyway, if you want to rename the file name, you could refer to the following image:

44.PNG

Besides, for more information about SharePoint http request, please refer to link:

https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/working-with-folders-and-files-with-rest

Please take a try.

 

Best Regards,

Barry

 

Community Support Team _ Barry
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Barry, Thank you so much! 🙂 I go to trying.

I tried the http request that Barry posted for renaming a file in my SharePoint Online document library, however, the Flow fails with the following error:

 

An entry without a type name was found, but no expected type was specified. To allow entries without type information, the expected type must also be specified when the model is specified.

 

Any ideas?

Hi @kagoodm,

Do you mind posting some screenshots of your Flow?
Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!

Absolutely.  Below is what I have in my flow.  I'm hoping there is something simple that I'm missing.

 

Hi @kagoodm

 

The screenshot didn't come through. Do you mind trying to post it again so I can check it out? Thanks.

 

Fausto Capellan, Jr

 

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!

Hopefully this comes through this time.

Flow.jpg

Hi @kagoodm

 

Sorry for the late reply. After building a Flow on my end with all the steps on your screenshot, I believe the issue lies in the Body field of the Send an HTTP request to SharePoint. You currently have _metadata and it should be __metadata. This one requires 2 underscore lines and yours only have one. The first screenshot below is yours and the second one is mine. Please compare the highlighted content and update that field accordingly. And once you test, please let me know.

Your screenshotYour screenshotMy screenshotMy screenshot

 

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!

Thanks for the extra set of eyes.  I wouldn't have caught that.  I updated it to have an extra _ as you stated and I was able to get the flow to run now without errors. 

 

Thanks again!

Hi @kagoodm

 

I'm glad you got that sorted. Please, do not hesitate to reach out if you have any questions.

 

Regards,

Fausto Capellan, Jr

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!
Anonymous
Not applicable

Hello

 

thank you for providing a work around for renaming an existing document in a document library.

 

not sure if my previous post went through (trouble adding an image) so I'm posting again

 

i'm blindly following the examples above and don't understand part of the 'Uri' field in the Send an HTTP request to sharepoint.

 

The examples show several different things -

/_api/web/lists/GetByTitle('PMTR')/...

/_api/web/lists/GetByTitle('B')/... 

/_api/web/lists/GetByTitle('CustomCSS')/...

 

can you please tell me what the 'PMTR', 'B' and 'CustomCSS' are adn where do I find what I need to use in my document library?

 

I understand what ever is put in the Uri needs to go in the 'Body' 

 

I'm feeling like dumb screwdriver  here

 

brian

 

 

 

Hi @Anonymous

 

The URLs you posted below are the ones you need to add to the SharePoint HTTP Request. Here's one of the URLs again and its breakdown: /_api/web/lists/GetByTitle('CustomCSS')/

The bold text inside the parenthesis is the name of the folder I need to Flow to work with. In your case, it will be the name of your folder. To become acquainted with SharePoint REST API, I have added a link below for you to check.

https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/working-with-lists-and-list-items-with-rest

 

Regards,

Fausto Capellan, Jr

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!

Hi Brian.  I know exactly where you're coming from...I was lost trying to figure this out as well.

 

In my particular use case, I wanted to take my document that gets stored into the SharePoint Online library and completely rename it to Something-ID#.

 

In my example, the PMTR wass the name of my SharePoint Online document library.  I've copied/pasted in my actual values below.  My error was when I tried manually typing it all out based on screen prints and missed one extra _.

 

In my Compose step, I did the following to concatenate a string of Something-ID#:

concat('the text I wanted my file to be renamed as-', triggerBody()?['ID'])

 

In my Send an HTTP request to SharePoint, I did the following:

Site Address:  your SharePoint Online site where the document library exists

Method:  POST

Uri:      /_api/web/lists/GetByTitle('your SharePoint Online document library ')/items(@{triggerBody()['ID']}) Where you are seeing the @{triggerBody()['ID']}), I pulled that in from the available fields in my SharePoint Online document library.

 

Headers: 

content-type:     application/json;odata=verbose

IF-MATCH:  *

X-HTTP-Method:  MERGE

 

Body:  {'__metadata':{'type':'SP.Data.your SharePoint Online document libraryItem'},'FileLeafRef':' @{outputs('Compose')}'}

 

Doing this, I was able to get my documents to be completely renamed to just the Something-ID# like we were hoping for.

 

Hope this helps.  🙂

Anonymous
Not applicable

thank you both for replying, I'm begining to understand now and I believe the problem I'm having is with my document library name.

The error I"m getting is this:

{
  "message": "List 'CAM  Agreement Documents' does not exist at site with URL 'https://*********.sharepoint.com/teams/International/RAM'.\r\nclientRequestId: 8909cbe0-c331-4db2-b240-b7d0edcda2d8\r\nserviceRequestId: 5a77bd9e-4025-0000-1f04-751ff44fe38f",
  "status": 404,
  "source": "https://********.sharepoint.com/teams/International/RAM/_api/web/lists/GetBYTitle('CAM%20%20Agreement%20Documents')/items(845)",
  "errors": [

    "-1",
    "System.ArgumentException"
  ]
}

 

However the URL shows the name is correct:

https://***********.sharepoint.com/teams/International/RAM/CAM%20%20Agreement%20Documents/Forms

 

There are indeed two spaces in the name after 'CAM' but before 'Agreement'

I've tried

'CAM%20 Agreement%20Documents'

'CAM%20%20Agreement%20Documents'

'CAM  Agreement Documents'

 

While there are two spaces library name in the URL, there is only one in the web address specificed in the document library settings: 

Web Address:Description:

https://*******.sharepoint.com/teams/International/RAM/CAM Agreement Documents/Forms/Alll Docs.aspx

 

So I've tried:

CAM Agreement Documents

CAM%20Agreement%20Documents

 

in all cases I get the same error message saying the 'list' cannot be found

 

Does REST require something special with spaces?  I've read about using '+' instead, but i'm not sure

 

thank you for your time

brian

 

 

 

 

Hi @Anonymous

 

Let's step away from Flow for a bit and focus on the SharePoint REST API part. To understand SharePoint REST better, I suggest you play around with it directly on the browser so you can learn it a lot faster. For example, to make sure I am accessing the correct REST API data points, I browse to my site and append the following to the site URL:

_api/web/lists/. This will give you all the lists in the site in XML format. And then to access the list, you would then use this URL: _api/web/lists/GetByTitle('List or Doc Library Name here'). This will give you all the information about that specific list. And if you want to see all the items in that list or library, you would use this URL: _api/web/lists/GetByTitle('List or Doc Library Name here')/items. As you become acquainted with this, everything will start to fall into place and then you will be able to use inside your Flow.

Please go over the link I sent in my previous reply. I normally keep that link and some others related to SharePoint REST API handy in the event I need to do something with it.

 

Regards,

Fausto Capellan, Jr

 

 

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!
Anonymous
Not applicable

Thank you so much Fausto for your patience and for your help

 

I now get it. I didn't realise I could use the browser, that certainly speeds things up.

 

In case any one else reads this, the  'List or Doc Library Name here' in   _api/web/lists/GetByTitle('List or Doc Library Name here') is the name of the document library on the list settings page and not what's shown in the URL.

 

Also, double spaces are handled without a problem (as in _api/web/lists/getbytitle('CAM%20-%20Document%20Library')/items).

 

Thank also Kagoodm for laying out exactly what you did to get it working (my problem was with the name)

 

 

I am trying to do this also but I am getting the below error

Error.JPGHttp.JPG

Hi @jkeckard007

Can you please spell out the entire error message since it's cutting off on the screenshot?

Thanks.

Fausto Capellan, Jr
Did I answer your question? Mark my post as a solution! Did my response help? Please give it a thumbs up!

Helpful resources

Announcements

Celebrating the May Super User of the Month: Laurens Martens

  @LaurensM  is an exceptional contributor to the Power Platform Community. Super Users like Laurens inspire others through their example, encouragement, and active participation. We are excited to celebrated Laurens as our Super User of the Month for May 2024.   Consistent Engagement:  He consistently engages with the community by answering forum questions, sharing insights, and providing solutions. Laurens dedication helps other users find answers and overcome challenges.   Community Expertise: As a Super User, Laurens plays a crucial role in maintaining a knowledge sharing environment. Always ensuring a positive experience for everyone.   Leadership: He shares valuable insights on community growth, engagement, and future trends. Their contributions help shape the Power Platform Community.   Congratulations, Laurens Martens, for your outstanding work! Keep inspiring others and making a difference in the community!   Keep up the fantastic work!        

Check out the Copilot Studio Cookbook today!

We are excited to announce our new Copilot Cookbook Gallery in the Copilot Studio Community. We can't wait for you to share your expertise and your experience!    Join us for an amazing opportunity where you'll be one of the first to contribute to the Copilot Cookbook—your ultimate guide to mastering Microsoft Copilot. Whether you're seeking inspiration or grappling with a challenge while crafting apps, you probably already know that Copilot Cookbook is your reliable assistant, offering a wealth of tips and tricks at your fingertips--and we want you to add your expertise. What can you "cook" up?   Click this link to get started: https://aka.ms/CS_Copilot_Cookbook_Gallery   Don't miss out on this exclusive opportunity to be one of the first in the Community to share your app creation journey with Copilot. We'll be announcing a Cookbook Challenge very soon and want to make sure you one of the first "cooks" in the kitchen.   Don't miss your moment--start submitting in the Copilot Cookbook Gallery today!     Thank you,  Engagement Team

Announcing Power Apps Copilot Cookbook Gallery

We are excited to share that the all-new Copilot Cookbook Gallery for Power Apps is now available in the Power Apps Community, full of tips and tricks on how to best use Microsoft Copilot as you develop and create in Power Apps. The new Copilot Cookbook is your go-to resource when you need inspiration--or when you're stuck--and aren't sure how to best partner with Copilot while creating apps.   Whether you're looking for the best prompts or just want to know about responsible AI use, visit Copilot Cookbook for regular updates you can rely on--while also serving up some of your greatest tips and tricks for the Community. Check Out the new Copilot Cookbook for Power Apps today: Copilot Cookbook - Power Platform Community.  We can't wait to see what you "cook" up!    

Welcome to the Power Automate Community

You are now a part of a fast-growing vibrant group of peers and industry experts who are here to network, share knowledge, and even have a little fun.   Now that you are a member, you can enjoy the following resources:   Welcome to the Community   News & Announcements: The is your place to get all the latest news around community events and announcements. This is where we share with the community what is going on and how to participate.  Be sure to subscribe to this board and not miss an announcement.   Get Help with Power Automate Forums: If you're looking for support with any part of Power Automate, our forums are the place to go. From General Power Automate forums to Using Connectors, Building Flows and Using Flows.  You will find thousands of technical professionals, and Super Users with years of experience who are ready and eager to answer your questions. You now have the ability to post, reply and give "kudos" on the Power Automate community forums. Make sure you conduct a quick search before creating a new post because your question may have already been asked and answered. Galleries: The galleries are full of content and can assist you with information on creating a flow in our Webinars and Video Gallery, and the ability to share the flows you have created in the Power Automate Cookbook.  Stay connected with the Community Connections & How-To Videos from the Microsoft Community Team. Check out the awesome content being shared there today.   Power Automate Community Blog: Over the years, more than 700 Power Automate Community Blog articles have been written and published by our thriving community. Our community members have learned some excellent tips and have keen insights on the future of process automation. In the Power Automate Community Blog, you can read the latest Power Automate-related posts from our community blog authors around the world. Let us know if you'd like to become an author and contribute your own writing — everything Power Automate-related is welcome.   Community Support: Check out and learn more about Using the Community for tips & tricks. Let us know in the Community Feedback  board if you have any questions or comments about your community experience. Again, we are so excited to welcome you to the Microsoft Power Automate community family. Whether you are brand new to the world of process automation or you are a seasoned Power Automate veteran - our goal is to shape the community to be your 'go to' for support, networking, education, inspiration and encouragement as we enjoy this adventure together.     Power Automate Community Team

Hear what's next for the Power Up Program

Hear from Principal Program Manager, Dimpi Gandhi, to discover the latest enhancements to the Microsoft #PowerUpProgram, including a new accelerated video-based curriculum crafted with the expertise of Microsoft MVPs, Rory Neary and Charlie Phipps-Bennett. If you’d like to hear what’s coming next, click the link below to sign up today! https://aka.ms/PowerUp  

Tuesday Tip | How to Report Spam in Our Community

It's time for another TUESDAY TIPS, your weekly connection with the most insightful tips and tricks that empower both newcomers and veterans in the Power Platform Community! Every Tuesday, we bring you a curated selection of the finest advice, distilled from the resources and tools in the Community. Whether you’re a seasoned member or just getting started, Tuesday Tips are the perfect compass guiding you across the dynamic landscape of the Power Platform Community.   As our community family expands each week, we revisit our essential tools, tips, and tricks to ensure you’re well-versed in the community’s pulse. Keep an eye on the News & Announcements for your weekly Tuesday Tips—you never know what you may learn!   Today's Tip: How to Report Spam in Our Community We strive to maintain a professional and helpful community, and part of that effort involves keeping our platform free of spam. If you encounter a post that you believe is spam, please follow these steps to report it: Locate the Post: Find the post in question within the community.Kebab Menu: Click on the "Kebab" menu | 3 Dots, on the top right of the post.Report Inappropriate Content: Select "Report Inappropriate Content" from the menu.Submit Report: Fill out any necessary details on the form and submit your report.   Our community team will review the report and take appropriate action to ensure our community remains a valuable resource for everyone.   Thank you for helping us keep the community clean and useful!

Users online (5,287)