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
IDfrom the For selected file trigger, but if you run this after another action you will need the file properties to get theIDso 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
ListItemEntityTypeFullNameproperty, 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
ListItemEntityTypeFullNameproperty 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
Power Automate: convertFromUtc function
Converts a UTC timestamp into a target time zone. Returns a string with no offset or Z marker.
Handle Large Files in Power Automate with Chunking
Move files past the 100 MB limit by splitting them into chunks, and know when to switch to Graph.
How To Get A Docusign Signature In Power Automate
Power Automate and Docusign are the perfect pair for collecting signatures on documents. You can ... The post How To Get A Docusign Signature ...
Step by Step | Power Automate Skills Plugin – Build Cloud Flows from Copilot CLI
The Power Automate skills plugin brings cloud flow authoring into Claude Code and GitHub Copilot CLI. It ships a self-contained FlowAgent MCP ...
SharePoint button web part: Add custom Copilot in SharePoint prompts or start Power Automate flows
The SharePoint Button web part will support launching custom Copilot prompts or Power Automate flows, enhancing productivity and automation. A...
Power Automate: Add to Time Action
Shifts a timestamp by a whole number of time units. Negative values subtract; the result is text.
The Best Way to Learn Power Apps, Power Automate & Microsoft Copilot in 2026
Looking for the best live training to master the Microsoft Power Platform? PowerApps911's live, Microsoft MVP-led courses are designed to help...
Power Automate: convertToUtc function
Converts a timestamp from a source time zone to UTC using Windows time zone names.
Batch Operations and Throttling Mitigation in Power Automate
Bundle hundreds of SharePoint writes into a single $batch request to stop hitting throttling limits.