How to rename files in SharePoint with Power Automate

the issue
Although SharePoint and Power Automate are heavily interwoven, there is no “rename file” action in Power Automate - if the file lives in a SharePoint library. Out of the box that is only possible for files living in OneDrive.
I recently saw a cry for help on twitter and decided to share here how my solution looks like.
In order to change a filename, we will need to use SharePoint REST API, which is accessible to us in Power Automate via the Send an HTTP request to SharePoint action.
the Power Automate flow
-
To make things easy, we start with a For selected file trigger. (In a real-world scenario, you’d typically rename a file after something else has happened.)
-
We then Get file properties (not needed as we already have the
ID
from the For selected file trigger, but if you run this after another action you will need the file properties to get theID
so that you can rename the right file). -
We now need to use the Send an HTTP request to SharePoint action:
- Site Adress: choose from Dropdown
- Method:
Get
- Uri:
_api/lists/getbytitle('<DisplayName of your Library goes here>')
This will re turn the
ListItemEntityTypeFullName
property, which we will need for the next step. -
As a last step, use another Send an HTTP request to SharePoint action:
- Site Adress: choose from Dropdown
- Method:
Post
- Uri:
_api/lists/GetByTitle('<DisplayName of your Library goes here>')/Items(@{outputs('Get_file_properties')?['body/ID']})
- Headers:
- Content-type:
application/json
- IF-MATCH:
*
- X-HTTP-METHOD:
PATCH
- Content-type:
- Body:
{'__metadata':
{'type':'@{outputs('Send_an_HTTP_request_to_SharePoint_to_get_type')?['body']?['d']?['ListItemEntityTypeFullName']}'},
'FileLeafRef':'<your new filename goes here>'}
For the type, we are selecting the
ListItemEntityTypeFullName
property from the output of the previous action. You could also use Parse JSON action to obtain that value.
Conclusion
Once again, the Send an HTTP request to SharePoint action in Power Automate is a lifesaver for everything that doesn’t work with the built-in actions. Also, no additional license than your Microsoft 365 license is required to use it.
Resources
To learn more about SharePoint REST, use these resources:
Feedback & what’s next?
I’d love to know what are your renaming-scenarios and also what you use the Send an HTTP request to SharePoint action for! Let me know on twitter. If you found this blog post useful, please also subscribe to my newsletter - news coming about every 2 months, I promise to not spam you!
Published on:
Learn moreRelated posts
Part-5:Calling Power Automate with Microsoft Copilot
🚀 How to Use Power Automate Flows in Microsoft Copilot Studio | Hands-On Guide 🎥 In this episode of my Microsoft Copilot Studio series,...
Track Time and Cost Savings with Power Automate’s New “Savings” (Preview) Feature
While creating a Power Automate flow, I discovered an exciting new feature called the “Savings” (Preview) feature in Power Automate. When I tr...
Announcing major DLP enhancements for Power Automate and Copilot Studio
DLP (Data Loss Prevention) for Power Automate enables administrators to manage data access from both cloud and desktop Power Automate flows, a...
Power Automate: Running PowerShell Scripts
Many things can be done in Power Automate or using Microsoft Graph, but not everything. For certain things, Microsoft requires us to use Power...
Microsoft Power Automate – Testing framework for desktop flows
We are announcing a testing framework for desktop flows in Microsoft Power Automate for desktop. This feature will reach general availability ...
Run Power Automate From Command Button
Requirement Modern business applications demand automation, whether it is a heavy data driven model drive app or light weight canvas app. Micr...
Favorite your Actions and Connectors for quick retrieval in Cloud Flows (Power Automate)
With this new update in Power Automate, it’s now easier for us to find and use the actions and connectors we need. We can also quickly access ...