cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
rmarquez
Helper II
Helper II

Upload Sharepoint document to Dataverse File field using Power Automate Flow

Hi,

 

I need to create a Flow that reads a Sharepoint List, identifies whether there is an attachment in a record, and upload the attachment(s) to a File field in Dataverse.  I created a Dataverse table for the attachments and am using the File field to hold the attachment.

 

When I run the flow, I get an error message "Action 'Upload_file_or_image_content' failed".  The flow is setup as follows:

 

Get Items (Sharepoint)

Initialize Variable - used to hold ID from the Sharepoint record

Set variable - set to ID from Sharepoint record

Get attachments (Sharepoint) - using ID for Id field

Get attachment content (Sharepoint) - using ID for Id field and Id for File Identifier field

Upload file or image content (CDS) - using variable for ID from above for Item ID, Attachment File for Column name, Attachment Content (Sharepoint) for Content field, DisplayName (Sharepoint) for Content name field

 

When I look at the output from the Upload file or image content step, I see:

 

"A supported MIME type could not be found that matches the content type of the response. None of the supported type(s) 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false, application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=true, application/json;odata.metadata=minimal;odata.streaming=true, application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=false, application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=true, application/json;odata.metadata=minimal;odata.streaming=false, application/json;odata.metadata=minimal;IEEE754Compatible=false, application/json;odata.metadata=minimal;IEEE754Compatible=true, application/json;odata.metadata=minimal, application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=false, application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=true, application/json;odata.metadata=full;odata.streaming=true, application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=false, application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatib...' matches the content type 'application/octet-stream'."}}}

 

Any ideas or questions?

 

Thanks

 

 

 

 

 

17 REPLIES 17
Mira_Ghaly
Dual Super User
Dual Super User

@rmarquez

Can you please share screenshot of how you are saving the file in data verse?

 

If this post helps you with your problem, please mark your as Accepted solution.If you like my response, please give it a Thumbs Up.

Blog: here

Hi Mira,

 

Thanks for responding.  See the image below.  I should note that I recently added in the Get file content step.  Prior to adding that step, I used Attachment content from the Get attachment content step.  Neither of the values from either step work.

 

rmarquez_0-1613597535551.png

 

Thanks

Hi Mira,

 

Please use this screenshot instead.  I didn't catch the top of the Flow in my first screenshot.

 

rmarquez_0-1613598809953.png

 

Hi Mira,

 

One more thing.  I created a Flow that reads an Outlook Inbox and uploads attachments into the same table I am trying to load the attachment from Sharepoint.  The Flow using Outlook as a source actually works.  I noticed that this flow uses content bytes in the Content field of the Upload file or image content step.  The code for the Outlook Attachment Content looks like:

 

 "fileImageFieldName""crd93_attachmentfile",
            "item""@items('Apply_to_each_2')?['contentBytes']",
 
The Sharepoint File Content field is not using content bytes.  Think that may be the issue?  If so, how do I get content bytes from Sharepoint attachments?
 
Thanks

@rmarquez 

You need to pass the content as below:

1. In a compose data operation step construct the content in the below JSON format:

{
"$content-type": "image/png",

"$content":base64string

}

 

Make sure you pass the correct mime type above in content type

Then pass the outputs of this compose data operation to the Upload Image or file as below:

 
 

Mira_Ghaly_2-1613601279526.png

 

If this post helps you with your problem, please mark your as Accepted solution.If you like my response, please give it a Thumbs Up.

Blog: here

Hi Mira,

 

I won't know what the file type is.  Since I'm not versant in JSON, do you know if there is a way to handle any file type with JSON?  Or, must I know the file type before going into the Compose step?  If so, does the method for determining the file type require JSON, or is there another way to do that?

 

Thanks

Hi Mira,

 

I think I figured out how to dynamically determine the content type.  However, I'm getting the error message below on the Parse JSON step.

 

BadRequest. The property 'content' must be of type JSON in the 'ParseJson' action inputs, but was of type 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'.

 

No matter what I choose for Content field of Parse JSON, I get that error message.  From Get attachment content (Sharepoint), I've tried:

 

Attachment Content

Item

body

 

I even tried File Content from a Get file content step.  Any suggestions?

 

Thanks

rmarquez
Helper II
Helper II

Hi,

 

It seems I lost assistance.  I'm still not able to get the right file type to use in the Content field of Upload file or image.  Tried using Compose step as Mira suggested but wasn't successful.  Can anyone assist?

 

Thanks

rmarquez
Helper II
Helper II

Hi,

 

More info:

 

The output from Get attachment and Get file content shows:

 

{
  "$content-type""application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
  "$content""long string of characters"
}

 

When I use the Compose step as Mira recommended, I get duplicates of the $content-type and $content fields, and the output isn't valid in the Upload file or image step.

 

Thanks

Mira_Ghaly
Dual Super User
Dual Super User

@rmarquez

Can u please share the compose data operation from ur history run as well as how u pass it to the CDS. 

 

If this post helps you with your problem, please mark your as Accepted solution.If you like my response, please give it a Thumbs Up.

Blog: here

Hi Mira,

 

Thanks for jumping back in to help.  See the images below.

 

rmarquez_0-1614087235713.png

Module above after run:

rmarquez_1-1614087331734.png

 

rmarquez_2-1614087359099.png

Module above after run:

rmarquez_3-1614087424424.png

 

Thanks

 

 

Mira_Ghaly
Dual Super User
Dual Super User

@rmarquez

Cann u move the upload file or image directly after the compose data operation.. I am not sure why it is inside another apply to each loop.

 

If this post helps you with your problem, please mark your as Accepted solution.If you like my response, please give it a Thumbs Up.

Blog: here

Hi Mira,

 

I moved Upload file or image directly under Compose data, but I'm still getting the error that basically says it can't recognize the mime type:

 

"body":{"error":{"code":"0x0","message":"A supported MIME type could not be found that matches the content type of the response. None of the supported type(s) 'application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false, application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=true, application/json;odata.metadata=minimal;odata.streaming=true, application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=false, application/json;odata.metadata=minimal;odata.streaming=false;IEEE754Compatible=true, application/json;odata.metadata=minimal;odata.streaming=false, application/json;odata.metadata=minimal;IEEE754Compatible=false, application/json;odata.metadata=minimal;IEEE754Compatible=true, application/json;odata.metadata=minimal, application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=false, application/json;odata.metadata=full;odata.streaming=true;IEEE754Compatible=true, application/json;odata.metadata=full;odata.streaming=true, application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatible=false, application/json;odata.metadata=full;odata.streaming=false;IEEE754Compatib...' matches the content type 'application/octet-stream'."}}}

 

Do you think the problem is with the the content type?: 

"$content-type""application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
 
Thanks

Hi Mira,

 

I think I made progress on eliminating the duplicate content-type and content items.  See the image below for the configuration.

 

rmarquez_5-1614283157769.png

 

This is the input and output from above:

 

rmarquez_6-1614283206225.png

 

Below is how it comes into Upload file or image content.  It's still not working and the error message is still tied to it not recognizing the mime type.

 

rmarquez_7-1614283232821.png

 

Any suggestions?

 

Thanks

 

Mira_Ghaly
Dual Super User
Dual Super User

@rmarquez 

What is the type of file you are trying to attach?

 

If this post helps you with your problem, please mark your as Accepted solution.If you like my response, please give it a Thumbs Up.

Blog: here

Hi Mira,

 

In the test case, it's an Excel spreadsheet.  In production, it can be any common file type e.g., PDF, text, image, Microsoft documents, etc.

 

Thansk

Anonymous
Not applicable

Any resolution?

 

I'm also running into this error. The content appears to be in the correct format.

Error Detail: A supported MIME type could not be found that matches the content type of the response. None of the supported type(s) 'Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaType, Microsoft.OData.ODataMediaTyp...' matches the content type 'application/octet-stream'.example.jpg

 





Helpful resources

Announcements
Microsoft 365 Conference – December 6-8, 2022

Microsoft 365 Conference – December 6-8, 2022

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Difinity Conference 2022

Difinity Conference 2022

Register today for two amazing days of learning, featuring intensive learning sessions across multiple tracks, led by engaging and dynamic experts.

European SharePoint Conference

European SharePoint Conference

The European SharePoint Conference returns live and in-person November 28-December 1 with 4 Microsoft Keynotes, 9 Tutorials, and 120 Sessions.

Users online (2,015)