cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
johnny_prescott
Regular Visitor

How to set SharePoint Lookup Column with direct JSON object

Hi,

 

I'm building a flow for SharePoint. Just to set the idea straight from the start, I'm rarely using direct auto-detected data from list or outputs from the objects. I'm using HTTP request and then using the input as variable for the library url and name. That way, the object are asking for the id and the item (in JSON) to perform the update. I prefer this method as It allows me to build less complex flows that are way more dynamics.

 

My question in this specific case... I have been building objects to update all kind of column types in SharePoint without any issues but yesterday was the first time I encountered a Lookup Column and I just can't find what's the right format to use.

 

Most documentation says to use the id to set it but I can't make it work.

 

I have tried a lot of different formats:

 

Error: "Could not parse lookup value"

 

{
"LookupColumnName": 
    {
        "Value": 68
    }
}
{
"LookupColumnName": 
    {
        "Id": 68
    }
}
{
"LookupColumnName": 68
}
{
"LookupColumnName": {
    "@odata.type":"#Microsoft.Azure.Connectors.SharePoint.SPListExpandedReference",
    "Id":24,
    "Value":"Process Owner |  Recruitment"
    }
}

 

 

Error: it just doesn't find the column in question

 

{
    "LookupColumnName/Id": 68
}
{
    "LookupColumnName#Id": 68
}

 

 

I just want to know what format we should be using in this case. The auto-filled version of the object send something like:

 

{
[...other properties]
"item/LookupColumnName/Id": 68
}

 

 

However, I know for a fact that it's not what I should use since I am sending the "item" object myself, I don't need to specify it. I have tried "/" and "#" because I ran out of imagination and this isn't documented anywhere.

 

Thanks for the help.

1 ACCEPTED SOLUTION

Accepted Solutions
johnny_prescott
Regular Visitor

I have found the issue with your help and the actual problem is far more stupid than anticipated.

 

Here's the working code:

firefox_w7Na5v54A0.png

 

The only thing that changed is that the id field is case sensitive... Everytime I looked at the output from any of the action, it told me that the "Id" field was writted with a capital I then a lowecase d (Id). When you look at the table itself, it's always "ID" but I believe the JSON from power automate would the right one (with reasons...) but it isn't.

 

If I use "ID", it works. If I use "Id", it doesn't.

 

I can't believe I spent all this time on something so trivial but eh, at least it's clear and we've documented a litle bit an how-to us JSON to set sharepoint field. Not all is lost.

 

Thanks for your help.

View solution in original post

9 REPLIES 9
ekarim2020
Resident Rockstar
Resident Rockstar

May be the following examples will help:

ekarim2020_1-1632085877580.png

ekarim2020_2-1632085900635.png

ekarim2020_3-1632085926484.png

Ellis

 

Hey.

 

I'm not sure what's the difference here. I'm talking specifically about SharePoint and lookup column giving me error message when I send it in either of those formats.

 

Here's part of the code I use to do that:

firefox_I2D9Ali3KA.png

 

Everything runs alright. Building the object isn't the issue but rather the format that needs to be used with Sharepoint Lookup Columns.

 

Thanks

ekarim2020
Resident Rockstar
Resident Rockstar

When I update a Lookup column, I can specify the Id number.

ekarim2020_7-1632093815190.png

Team or Centre column is a Lookup type field. I can set the value to be "Sustainable Finance" by specifying Id 12 in an Update action

2021-09-20_00-14-53.jpg

 

ekarim2020_3-1632093416976.png

 

ekarim2020_8-1632094093008.png

Extract of the Output

2021-09-20_00-18-36.jpg

 

Setting the Id value (integer) seems to be sufficient to update the Lookup Column.

Another method you could use to update the field is via a HTTP request with the following body content:

ekarim2020_11-1632095810926.png

 

Hope this helps.
Ellis

 

Thanks Ellis. This last bit seems to have a very similar format to when I push information to the body using simply "update file properties". (While url and library name are set through variable. If the account has access to the library and you just use "custom", it will display as usual. Variable isn't detected like that. :))

firefox_daPx5AHg4I.png

 

When it comes to Lookup column, it just doesn't seem to work by just sending a number to it with that method so I'm guessing I'm supposed to send it under a certain format.

 

I'm starting to think maybe it's my configuration for the column. I'm not displaying the ID in the config. Could you check yours to confirm?

firefox_E7scXohIhM.png

 

If you'd be able to try using update file properties like I shown above, I'd appreciate it as well.

 

I'll check if I can do it using http as well. Never tried that way.

 

thanks.

ekarim2020
Resident Rockstar
Resident Rockstar

I'll try to have a look at the above .

See the following too: Update a multi select choice field in a SharePoint list with Power Automate

"....I was contacted about how to update multiple choice fields in SharePoint. In the past I even used HTTP requests to sort this out, but actually the better solution is to use the Create item or update item action that is available as part of the SharePoint connector."

 

 

Ellis

ekarim2020
Resident Rockstar
Resident Rockstar

Here is my demo document library. It contains a lookup column called Clients and allows multiple values. In the example below, two clients (USER2 and USER3) have been added to the Clients column for the file Contract Types.xlsx:

ekarim2020_4-1632161734604.png

The settings for the Clients lookup column are:

ekarim2020_3-1632161624847.png

This is the lookup list that the Client column uses:

ekarim2020_1-1632161489550.png

I will change the Clients column for ID 16 Contracts Types.xlsx. I will add clients USER 99 and USER111 to the clients column:

ekarim2020_4-1632161734604.png

This is the lookup table:

2021-09-20_19-23-05.jpg

Here is the flow:

ekarim2020_6-1632162089462.png

Here is the update file properties action which uses the list item Id to set the client:

ekarim2020_7-1632162144477.png

 

2021-09-20_19-22-02.jpg

And here is the output.

ekarim2020_5-1632161983416.png

Ellis

Thank you Ellis,

 

This actually answer very well my question. If it actually works for you, then there is something in my configuration that doesn't work. I tried this exact format and it didn't work either.

 

I believe it might be due to the fact that I'm displaying other columns as well and not just the one set in the config. Under the "Add a column to show each of these additional fields"

johnny_prescott
Regular Visitor

I have found the issue with your help and the actual problem is far more stupid than anticipated.

 

Here's the working code:

firefox_w7Na5v54A0.png

 

The only thing that changed is that the id field is case sensitive... Everytime I looked at the output from any of the action, it told me that the "Id" field was writted with a capital I then a lowecase d (Id). When you look at the table itself, it's always "ID" but I believe the JSON from power automate would the right one (with reasons...) but it isn't.

 

If I use "ID", it works. If I use "Id", it doesn't.

 

I can't believe I spent all this time on something so trivial but eh, at least it's clear and we've documented a litle bit an how-to us JSON to set sharepoint field. Not all is lost.

 

Thanks for your help.

View solution in original post

ekarim2020
Resident Rockstar
Resident Rockstar

I'm also displaying additional fields from the lookup table:

ekarim2020_1-1632169020847.png

 

ekarim2020_0-1632168961479.png

 

2021-09-20_21-15-19.jpg

If you can try and test with a simple list and flow you will be able to work out what is wrong.

The Update file properties mode for updating the Clients field is in Array mode:

ekarim2020_3-1632169275153.png

When I switch to "detail inputs for array items" note what happens to the content:

ekarim2020_4-1632169348820.png

Hope this helps.

Ellis

Helpful resources

Announcements
MPA_User Group Leader_768x460.jpg

Manage your user group events

Check out the News & Announcements to learn more.

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Top Solution Authors
Users online (1,534)