web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Need example of using ...
Power Automate
Answered

Need example of using Send HTTP Request to Sharepoint to update a single Person column with (1) single person's value in a LIBRARY.

(0) ShareShare
ReportReport
Posted on by 292

I have a Sharepoint Library with a Person column "Process Owner".   ONE person only.

I have an Instant Workflow on that library that collects Process Owner Name at runtime.

 

How can I use the HTTP / POST  (or PATCH) to accomplish this?

 

 

I've tried various forms of PATCH, POST...  based on other sites/articles.  Nothing works.   For example

MelissaReed_1-1613110318948.png

results in this error: A type named 'SP.Data.VBPM_x0020_Process_x0020_DraftsListItem' could not be resolved by the model. When a model is available, each type name must resolve to a valid type.

 

MelissaReed_2-1613110936561.png

didn't throw an error.  It appeared to complete successfully, but did not actually update anything. 

The parameter entered gets plugged into HTTP call to "getByEmail" and returns a numeric value  which I store in ProcessOwnerID, used as the value above.

Thanks in advance for any guidance.

(I cannot use Update Library Properties action because of the MS limit on # lookups )

Categories:
I have the same question (0)
  • Expiscornovus Profile Picture
    33,195 Most Valuable Professional on at

    Hi @MelissaReed,

     

    Below is an example which should work. In my example I am using a POST request and the SharePoint User Id of the current site like described in this link:

    https://sharepoint.stackexchange.com/questions/174979/update-person-or-group-field-using-rest-api-in-document-library

     

    Btw, I am also using a LibraryItem type because I assume you are using a Document Library and not a List?

     

     

    {
     "__metadata": {
     "type": "SP.Data.VBPM_x0020_Draft_x0020_Process_x0020_LibraryItem"
     },
     "ProcessOwnerId": 12 
     }

     

     

    userid_updatelibraryitem.png

  • Verified answer
    annajhaveri Profile Picture
    8,531 Most Valuable Professional on at

    @MelissaReed  in addition to inputs from @Expiscornovus  you can change the header odata=nometadata, to make the payload simple, example below

     

    annajhaveri_0-1613127959201.png

     

     

  • Expiscornovus Profile Picture
    33,195 Most Valuable Professional on at

    Thanks @annajhaveri. I keep forgetting that with nometadata it's even easier 🙂

  • MelissaReed Profile Picture
    292 on at

    Thanks @annajhaveri and @Expiscornovus  for speedy replies. 

    YES, @Expiscornovus -- it is a Library I'm working with.  Good catch on that detail I overlooked including!

    I like "simpler" so I tried @annajhaveri "nometadata" first but couldn't get it to work.

    MelissaReed_0-1613135155832.png

    Tried it with/without quotes, both blew errors --  "A 'PrimitiveValue' node with non-null value was found...." 

    What am I missing here?  @annajhaveri your example does not mention "librarylist" but maybe the answer lies within the detail of the pink "body()" variable I can't see the details of on your screenshot.   

     

     

  • annajhaveri Profile Picture
    8,531 Most Valuable Professional on at

    @MelissaReed in the body parameter provide the column name as "Process_x0020_OwnerId"

  • MelissaReed Profile Picture
    292 on at

    @annajhaveri DUH -- thanks for the catch on the missing "Id" .   It WORKED.

    And note to the wise, it is case-sensitive -- you must use "Id" and not "ID".

    For others' reference, here is the HTTP call that successfully updated my two Person fields on my library:

    MelissaReed_3-1613141873778.png

     

    I wanted to show how column names with spaces are represented in this context (most examples don't show it and it's never made sense to me whether to use %20, _x0020_, put the literal name in quotes or drop the spaces and smash them together.  

     

    I struggled with this for HOURS and probably came within a quotemark of hitting on the right syntax, but am so grateful to both of you @Expiscornovus  and @annajhaveri for your help.   I will tag @annajhaveri with the solution since it was her nometadata option I'm going with.  But @Expiscornovus  it was an earlier HTTP post you were helping someone out with that put me on this track to begin with.    Thank you both!  

     

     

     

     

     

     

  • annajhaveri Profile Picture
    8,531 Most Valuable Professional on at

    @MelissaReed  thank you. One more tip, Process_x0020_OwnerId is the internal name of the column. In order to get internal name of any column, in google chrome browser, open the SharePoint list, go to list settings and click on the column, then look at the browser URL, you will see URL ending with Field=<somevalue>, that will be the internal name of the column, e.g. if it is Field=Title in the browser url, then Title is the internal name of the column. I hope that makes sense.

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Forum hierarchy changes are complete!

In our never-ending quest to improve we are simplifying the forum hierarchy…

Ajay Kumar Gannamaneni – Community Spotlight

We are honored to recognize Ajay Kumar Gannamaneni as our Community Spotlight for December…

Leaderboard > Power Automate

#1
Michael E. Gernaey Profile Picture

Michael E. Gernaey 501 Super User 2025 Season 2

#2
Tomac Profile Picture

Tomac 323 Moderator

#3
abm abm Profile Picture

abm abm 237 Most Valuable Professional

Last 30 days Overall leaderboard