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

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Get HTTP and Parse JSO...
Power Automate
Unanswered

Get HTTP and Parse JSON - how to work with outputs

(1) ShareShare
ReportReport
Posted on by Microsoft Employee

Hello forum,

I tried for a few day to solve this one, but still can't get to correct solution. I have a flow which makes a HTTP call to a web service.

vbvbvb_0-1720018067424.png

This call returns usual HTTP response JSON with few hundreds of objects, where I am interested in all objects in "value" and want to fetch them as dynamics valued to add them one by one into a database:

 

 

{
 "statusCode": 200,
 "headers": {
 "Cache-Control": "xxx",
 "Vary": "xxx",
 "Set-Cookie": xxx,
 "....." 
 },
 "body": {
 "@odata.context": "yyy",
 "@odata.count": yyy,
 "....",
 "value": [
 {
 "@odata.etag": "zzz",
 "statecode": zzz,
 "....."
 }
 ]
 }
}

 

 

 When I try to use Parse JSON and insert schema from output, it parses each object as dynamic value to pass into next action to add into database, but when I run the flow, it fails with error saying '@body('Parse_JSON')?['body']?['value']' is of type 'Null'. The result must be a valid array.

 

vbvbvb_1-1720018436171.png

 

If I use @{body('HTTP_Call')?['value']} instead, to get neater clean JSON with only list of values, I can't get it to work with schema -  flow always complains that expected object got got array:

 

 

{
 "body": [
 {
 "@odata.etag": "zzz1",
 "statecode": zzz1,
 "..."
 },
 {
 "@odata.etag": "zzz2",
 "statecode": zzz2,
 "..."
 },
 {
 "@odata.etag": "zzz3",
 "statecode": zzz3,
 "..."
 }
 ]
} 
 

 

 

 

What is correct parsing steps here to work with HTTP GET output to add items via dynamic values into next action to pass into database?

Categories:
I have the same question (0)
  • Pstork1 Profile Picture
    69,490 Most Valuable Professional on at

    The input for the ParseJson should be 

    body('HTTP_Call')?['value']

    But then you need to run that once and generate the schema just from the Value array, not the full HTTP output.  That will give you access to the individual values in the array.

  • vbbvbb Profile Picture
    Microsoft Employee on at

    I tried that and schema, which is generated is type - object, not type array:

    vbvbvb_0-1720038888356.png

     

    If I run it as is, I get error: 

    vbvbvb_1-1720038141651.png

    If I change first type to array, it doesn't fail but stop showing dynamic values below and can't make loop with Apply to each:

    vbvbvb_1-1720039014034.png

    I suspect since it's indeed is array (multiple values), it requires different approach to the loop - like using Select or filter array, but how to overcome lack of dynamic values? using something like item(xxx) with index?

  • vbbvbb Profile Picture
    Microsoft Employee on at

    I think I got it - i used body('Parse_JSON') as loop input , and then one more Parse JSON for "current item" with object schema for each final item to get out individual dynamic values.

  • Pstork1 Profile Picture
    69,490 Most Valuable Professional on at

    That will work, but you shouldn't need to do the parse JSON inside the loop if you use the correct input and schema in the parse JSON before the loop.

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

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the April Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Automate

#1
Vish WR Profile Picture

Vish WR 464

#2
Haque Profile Picture

Haque 416

#3
David_MA Profile Picture

David_MA 323 Super User 2026 Season 1

Last 30 days Overall leaderboard