cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
MediafieldsWeb
New Member

Content-Range header missing error in HTTP request but it isn't

Hi, 

I'm attempting to create a flow that uses Universal Print, i get to the point of getting the document upload url, i then do a put HTTP request within power automate with the Content-Range and Content-Type headers set. However it gives an error back saying that the Content-Range header is missing, even though you can see it in the request headers. I have tried this exact same thing with postman and it works fine so it's not a problem with the HTTP request generally but something with power automate. I've attached an image of the error. 

powerautomateerror.png

 

19 REPLIES 19
abm
Super User
Super User

Hi @MediafieldsWeb 

 

This post could help

 

admin on rest - Content-Range missing header - Stack Overflow

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials

No doesn't really help. I know exactly what the content range is meant to look like. I've done the same HTTP request on Postman and it works fine. I've inputted it the same way and in the output showing the request in the flow test it is formatted correctly but power automate must not me sending it right. 

Hi @MediafieldsWeb 

 

When you run the Postman run the fiddler on side by side. Have a look in the header/body request. Postman might be binding something default to get it correctly. 



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
MediafieldsWeb
New Member

For an update on this, i've still not been able to get it to work. However i did point the request to a dummy server i set up, and i can see that for some reason Power Automate HTTP request sends all the headers except the "Content-Range" header, which it misses out. Don't know if this is a bug , but still need some help with this. 

Hi @MediafieldsWeb 

 

So you have set the header Content-Range in your HTTP request from PowerAutomate?



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials

Yes it's set in the request, and it shows in the error as being in the headers which you can see in the screenshot but the server doesn't seem to recieve it. 

Hi @MediafieldsWeb 

 

Not sure I could help you in this further. Hopefully someone from the community could response to it.

 

Thanks



Did I answer your question? Mark my post as a solution!

If you liked my response, please consider giving it a thumbs up


Proud to be a Flownaut!

Learn more from my blog
Power Automate Video Tutorials
Bas12
Regular Visitor

Hi @MediafieldsWeb ,

I’m facing the same problem; I’ve inserted a header in a HTTP request in Power Automate, but it seems to get lost on the way because the flow results in a “header is missing” error. I’ve done the exact same request using VBA, the same header is being received and it works. I’m very curious about if you were able to fix the problem?

 

For those who want to help; here is more information about the failed request.

 

Bas12_0-1638609362919.png

(“kopteksten” is Dutch voor “headers”)

 

The unedited input for the flow in Power Automate is:

    "uri": https://api.bag.acceptatie.kadaster.nl/lvbag/individuelebevragingen/v2/adressenuitgebreid?postcode=2...,

    "method": "GET",

    "headers": {

        "X-Api-Key": "xxxxxxxxxxx",

        "Accept-Crs": "epsg:28992"

 

The error in the output from the flow in Power Automate is:

  "status": 412,

  "title": "Gewenste coördinatenstelsel voor geometrie moet worden opgegeven.",

  "type": "https://tools.ietf.org/html/rfc7232#section-4.2",

  "detail": "Precondition failed.",

  "instance": "https://api.bag.acceptatie.kadaster.nl/lvbag/individuelebevragingen/v2/adressenuitgebreid?postcode=2...",

  "code": "acceptCrsMissing"

 

This is puzzling because the header ‘Accept-Crs’ was added in the request.

 

When I use requestcatcher.com I can see that only the ‘Accept-Crs’ header isn’t being send by Power Automate. Could there be some kind of validation of standard accepted ‘accept’ and ‘content’ headers? And is it possible to bypass this mechanism?

VictorIvanidze
Community Champion
Community Champion

Hello @Bas12,

 

try to use another action: "Send an HTTP request"  from "Office 365 Groups" connector.

--------------------------------------------------------------------------------------
Contact me if you are interested in custom Power Automate development.

Hello @VictorIvanidze,

 

Thanks a lot for your advice! I've tried it right away. Unfortunately I get the following error/response:

 

URI path is not a valid Graph endpoint, path is neither absolute nor relative or resource is not one of the supported (me, users, groups, sites, search, planner, teams, chats)

 

It seems that the suggested alternative connector can only be used in combination with Office365 products?

VictorIvanidze
Community Champion
Community Champion

What URL did you use?

--------------------------------------------------------------------------------------
Contact me if you are interested in custom Power Automate development.
Bas12
Regular Visitor

Hello @VictorIvanidze , 

 

I used the following input:

{
    "host": {
        "connectionReferenceName""shared_office365groups",
        "operationId""HttpRequest"
    },
    "parameters": {
        "Method""GET",
        "CustomHeader1""Accept-Crs: epsg:28992",
        "CustomHeader2""X-Api-Key: XXXXXXXX"
    }
}
Bas12_0-1638621962574.png

 

This is the output:
{
  "error": {
    "code"400,
    "message""URI path is not a valid Graph endpoint, path is neither absolute nor relative or resource is not one of the supported (me, users, groups, sites, search, planner, teams, chats): https://api.bag.acceptatie.kadaster.nl/lvbag/individuelebevragingen/v2/adressenuitgebreid?postcode=2...",
    "source""europe-002.azure-apim.net",
    "path""choose[9]\\when[1]",
    "policyId""",
    "clientRequestId""71a6662a-3823-40a7-9c84-010e0b81035d"
  }
}
Did I use the connector correct?
VictorIvanidze
Community Champion
Community Champion

Please forgive me, I gave you a wrong suggestion. "Send an HTTP request" action can work only with Microsoft Graph REST API .

--------------------------------------------------------------------------------------
Contact me if you are interested in custom Power Automate development.

Of course @VictorIvanidze, I appreciate all suggestions which can contribute to solving the problem.

ccg_apl
Frequent Visitor

Did you ever get a resolution for this? I'm facing this problem now, too.

Bas12
Regular Visitor

@ccg_apl: unfortunately I didn't find a solution yet 

Expiscornovus
Super User
Super User

Hi @Bas12 ,

 

As far as I am aware some HTTP headers are omitted in the HTTP action. Content-Range is one of them. You might want to check if the ones you are using are listed in te same doc.

 

So, it would simply be removed from your request. And that might explain why you are getting a message that it is missing.

 

https://docs.microsoft.com/en-us/azure/connectors/connectors-native-http#omitted-http-headers



Happy to help out! 🙂

Interested in more #PowerAutomate #SharePointOnline or #PowerVirtualAgents content?
Visit my blog, Subscribe to my YouTube channel or Follow me on Twitter


Thanks, I found that article shortly after I posted. What's so incredibly frustrating is that Power Automate strips this header out, yet Universal Print requires the header in step 3 (uploading content). So invoking Universal Print from Power Automate does not seem possible.

 

What I'm attempting now is writing my own web service and custom connector and passing it the binary from Power Automate. Of course, binary isn't an option when creating a custom connector through the UI, but it *is* an option if you use the Swagger editor. Another topic in this forum pointed me to this:

https://github.com/microsoft/PowerPlatformConnectors/blob/8e8702daa846d3d35755971282947347dba2931d/c...

 

I'm now stuck on authentication issues. I can invoke my web service through the custom connector, but it doesn't propagate the user's identity, so either a) it doesn't authenticate to my web service properly, or b) it authenticates as a service, not as the specific user, but the graph API for creating a print job doesn't support application permissions.

 

I'm hoping to work through that today. If/when I get it figured out, I'll post an update.

Well, I gave up and decided to use PrintNode instead. It took about 30 minutes to set up and it's working great.

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 (4,466)