I'm trying to update a modern SharePoint Image column in a custom list from a Power Automate flow using the Send an HTTP request to SharePoint action. The goal is to upload or reference an image stored in a document library, and assign it to the list item’s Image column, so that it becomes visible in both SharePoint and Power Apps.
✅ Setup: List name: Custom list with an Image column named ImagePreviewThumbnail
Image column type: Created using “Add column > Image” (not hyperlink or text)
Image location: Stored in a document library
Power Automate flow: Uploads the image using Create file
Gets metadata using Get file metadata and Get file properties
Then tries to update the list item using HTTP request
JSON body I’m sending:
{
"__metadata": {
"type": "SP.Data.MyCustomListListItem"
},
"ImagePreviewThumbnail": {
"type": "thumbnail",
"fileName": "image.jpg",
"serverUrl": "https://[tenant].sharepoint.com",
"serverRelativeUrl": "/sites/[site-name]/Shared Documents/folder/image.jpg"
}
}
Problem: The HTTP request fails with this error:
Unexpected node 'StartObject' was found when reading from the JSON reader. A 'PrimitiveValue' node was expected.
This suggests SharePoint is expecting a primitive value (e.g., string), but I’m sending a structured object as documented for image fields.
Side notes:
- The image column is definitely a modern Image column
- Manually uploaded images (via SharePoint UI) are visible in Power Apps
- Images uploaded via Power Automate are not visible unless uploaded manually or attached
- I’ve tried including a uniqueId field (from Get file properties), but it’s not exposed in my environment
- Tried both PATCH with IF-MATCH and POST with X-HTTP-Method: MERGE
Question is:
- What is the correct way to populate a SharePoint Image column from Power Automate?
- Is the object format I’m sending correct?
- Is uniqueId required, and if so, how can it be reliably retrieved?
- Any altenative how to resolve this problem?
- After updating only the Image column, other fields like Title, Description, etc. become empty, how to avoid this ?
Thank you in advance for help and suggestions