“My Power Automate flow creates SharePoint items from MS Forms, but all are created under my account, is there a way to change the author to the user who submitted the form?”
Every action in Power Automate uses a connector of a specific user. By default it’s the user who created the flow (you), and all the actions are done using your account. When you send an email, it’s from your mailbox. If you create a SharePoint item, you’ll be forever the author. The same if you edit an item, you’ll be the editor for each flow change in the version history. Your name will appear everywhere.
But what if you don’t want the same name, let it be your name or some service account, in all the SharePoint items? How can you create items “on behalf” of a user?
You’ll need an HTTP request
It’s not possible to change the item author using the standard actions as there’s no ‘Created By’ field to update. But that doesn’t mean that you can’t change it – it’s just another item property after all. And as such you can update it with an HTTP request. In the same way as you’d change the editor, you can change also the author.
Method: POST
Uri:
_api/web/lists/GetByTitle('<ListName>')/items(<ItemID>)/validateUpdateListItem
Body:
{
"formValues":[
{
"FieldName": "Author",
"FieldValue": "[{'Key':'i:0#.f|membership|<author email>'}]"
}
],
"bNewDocumentUpdate": true
}
Note: all the <…> are placeholders, replace them including the < and >.
The request above will take the ‘Created By’ column with internal name ‘Author’, and update it to the specific user using his email address. It’ll do it without creating new item version due to the ‘bNewDocumentUpdate’ parameter.
And when you change the author, you should always change the editor too as they should be the same person for new items.

Summary
When you create SharePoint items in Power Automate flow, you can’t decide who’ll be the author during the creation, but you can change him later. Author is just another property that you can change with an HTTP request. Add the ‘Send an HTTP request to SharePoint’ action after the creation and update the author using his email address. Just don’t forget to update also the editor at the same time.
But before you use this solution, you should really consider if you really need the user information in the system columns. Maybe you could add custom columns instead and keep the “real” author information available.
Thank you for this tip it will be really useful
Great tip! Would it be possible to do the same with the Dataverse?
Hello Sam,
I don’t know if that’s doable in Dataverse, I don’t work with Dataverse that much.
Please also tip us how to print scroll-able Power app forms using flow?
Hello Berihun,
I have no idea how to do that, nor how is it related to changing the SharePoint item author… 🙂
Hi Tom,
Greetings from Poland! I got stuck with an error: 401 UNAUTHORIZED.
– my user is an owner of the site, where the list is placed
– i have good connection in flow (my user)
– i checked also 3 times, if I typed correct e-mail in this line:
“FieldValue”: “[{‘Key’:’i:0#.f|membership|karol@domain.com’}]”
Hello Karol,
I’d try to update some other field via an HTTP request, just to confirm that it’s not somehow blocked on your environment to do these updates.
Thank you for this! Will this work when I am trying to get the list item A from one sharepoint list to create a list item B in a separate sharepoint list with the author who created the item A?
Hello Holly,
yes, it will, create the item first and then update the author.
Great article.
I’m trying to use this to update the author of an item and the flow is not giving any errors but the author of the item is not being updated, any ideas where I might look?
Hello Dan,
I’d double check if you have the input in the right format, other that that I don’t think there’s any error message if the update fails.