Let's POWER Automate

From no-code to low-code

Menu
  • Expressions
  • Filters
  • General
  • Application specific solutions
    • Dataverse
    • Excel
    • Forms
    • Planner
    • Outlook
    • SharePoint
    • Teams
  • Triggers
  • Resources
  • ABOUT ME
  • Get help with your flow
Menu

How to change SharePoint item author (Created By) with Power Automate

Posted on February 23, 2022February 23, 2022 by Tom

“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.

Power Automate SharePoint change author

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.


Do you struggle with the various expressions, conditions, filters, or HTTP requests available in Power Automate?

I send one email per week with a summary of the new solutions, designed to help even non IT people to automate some of their repetitive tasks.

All subscribers have also access to resources like a SharePoint Filter Query cheat sheet or Date expressions cheat sheet.

Zero spam, unsubscribe anytime.

22 thoughts on “How to change SharePoint item author (Created By) with Power Automate”

  1. ruturaj says:
    February 28, 2022 at 7:38 am

    Thank you for this tip it will be really useful

    Reply
  2. Sam says:
    February 28, 2022 at 5:54 pm

    Great tip! Would it be possible to do the same with the Dataverse?

    Reply
    1. Tom says:
      March 5, 2022 at 7:15 pm

      Hello Sam,
      I don’t know if that’s doable in Dataverse, I don’t work with Dataverse that much.

      Reply
  3. Berihun Addis says:
    March 6, 2022 at 8:54 am

    Please also tip us how to print scroll-able Power app forms using flow?

    Reply
    1. Tom says:
      March 9, 2022 at 8:00 pm

      Hello Berihun,
      I have no idea how to do that, nor how is it related to changing the SharePoint item author… 🙂

      Reply
  4. Karol says:
    March 7, 2022 at 11:22 pm

    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’}]”

    Reply
    1. Tom says:
      March 13, 2022 at 6:13 pm

      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.

      Reply
  5. Holly says:
    April 7, 2022 at 6:01 pm

    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?

    Reply
    1. Tom says:
      April 13, 2022 at 2:34 pm

      Hello Holly,
      yes, it will, create the item first and then update the author.

      Reply
  6. Dan says:
    June 4, 2022 at 6:18 pm

    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?

    Reply
    1. Tom says:
      June 12, 2022 at 8:36 pm

      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.

      Reply
  7. kaizer says:
    August 15, 2022 at 5:29 pm

    Hi i tried this. In the approval email that gets sent out it still comes up as the created by the owner of the flow instead of the employee. Created by “Owner” instead of employee email. My list has spaces such as “new senders list” how would i write this in the URI? GetByTitle(‘new senders list’)/item? or with a %20 in the spaces? or no spaces. Thanks

    Reply
    1. Tom says:
      August 21, 2022 at 7:06 pm

      Hello kaizer,
      the list name should be exactly as it’s written, or you can use the list guid to be sure as described here: https://tomriha.com/use-the-correct-sharepoint-list-name-in-the-power-automate-http-request/.

      Reply
  8. Fab says:
    August 17, 2022 at 5:27 pm

    Can I set an anonymous system user like “SharePoint App” as author instead of a real M365 account?

    Reply
    1. Tom says:
      August 25, 2022 at 6:45 pm

      Hello Fab,
      the email address must exists in your tenant – user, shared mailbox, etc. You can’t put there anything, there’re limitations.

      Reply
  9. Stefano says:
    September 2, 2022 at 10:09 am

    Hello Tom,
    I got this error when I try to use your method:
    A potentially dangerous Request.Path value was detected from the client (<).
    What could be the problem?
    Thank you.

    Reply
    1. Tom says:
      September 4, 2022 at 7:49 pm

      Hello Stefano,
      I’ve never seen this error, did you remove all the < and > from the Uri when replacing the placeholders with dynamic contents?

      Reply
  10. Sravan says:
    September 15, 2022 at 12:02 pm

    Het Tom, nice article. I had a quick question. If we have turned on Version History on the SharePoint list, Updating the Author, will it change Author in the item version history too?

    Reply
    1. Tom says:
      September 18, 2022 at 7:20 pm

      Hello Sravan,
      yes, it will. Even though it’s shown in a different section in the version history it’s still just an item property.

      Reply
  11. John says:
    October 28, 2022 at 3:12 am

    I wish I could get this working with Site Pages Authors!
    Has anyone had any success with this?

    Reply
    1. Tom says:
      November 6, 2022 at 8:16 pm

      Hello John,
      I tried it on Site Pages with no success, I guess there might be some limitation regarding that library.

      Reply
  12. Nicholas Dohmen says:
    November 7, 2022 at 12:25 pm

    You made my day with this! A whole bunch of articles with references to Claims (IDs), etc. and all I was trying to do was update my SP item WITHOUT using Update Item, but while looking up manager! Worked like a charm and… THANK YOU!

    Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Do you know what to do, but not how to do it?

Get The Ultimate Power Automate expressions cheat sheet and translate your thoughts into flows with ease!


There's also the HTTP requests to SharePoint cheat sheet to help you overcome limitations of some standard actions!

Do you struggle with the various expressions, conditions, filters, or HTTP requests available in Power Automate?

I send one email per week with a summary of the new solutions, designed to help even non IT people to automate some of their repetitive tasks.

All subscribers have also access to resources like a SharePoint Filter Query cheat sheet or Date expressions cheat sheet.

Zero spam, unsubscribe anytime.

  • How to find Excel rows missing in SharePoint list (Power Automate)March 29, 2023
  • Check whether user exists in AAD with Power AutomateMarch 26, 2023
  • How to highlight whole SharePoint row based on calculated dateMarch 22, 2023
  • Why is your Power Automate flow running so slow?March 19, 2023
  • How to add multiple links to the Power Automate approval taskMarch 15, 2023

Power Automate blogs worth visiting

Damien Bird
Dennis (Expiscornovus)
Paul Murana

©2023 Let's POWER Automate | Theme by SuperbThemes