cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
DougL
Level: Powered On

How to Extract an Array from a JSON Object to Use in a Apply To Each

I have a Swagger Defined REST Web Service that returns something in the format of the following:

 

{
    "Id": "86790819-21b1-4881-9af2-86297f586021",
    "Status": "OK",
    "ProviderName": "MyApp",
    "DateTimeUTC": "/Date(1508339098344)/",
    "Invoices": [
        {
            "Type": "ACCPAY",
            "InvoiceID": "20ff01b8-c2d8-49bb-8abf-a9486c9ea665",
            "InvoiceNumber": "RPT644-1",
            "Reference": "",
        },
        {
            "Type": "ACCPAY",
            "InvoiceID": "20aaa1b8-c2a8-49ab-8abf-a9a86caeaaa6a",
            "InvoiceNumber": "RPT644-2",
            "Reference": "",
        }
    ]
}

I want to cycle through all of the Invoices and grab the InvoiceId to then use in a later flow call, but I can't figure out the proper way to reference the properties of a JSON.

 

Since this structure is all defined in Swagger, I thought it would be as easy as doing an Apply To Each on the Invoices; but that is not identified as a parameter since its an object that has a property that has an array.

 

Based on my searches, it sounds like I should be able to use Compose somehow, but I'm not sure how to reference the property.

 

e.g. In concept, I feel like I should be able to put the following as the source of a Apply To Each:

 

json(body('getInvoices')).Invoices
 
But that gets a syntax error. There has to be something similar, but I can't seem to find a place where all of this is documented and even the old threads on here seem to show an earlier version of Microsoft Flow with stuff like Value{} which I don't see anywhere.

 

 

 

 

 

1 ACCEPTED SOLUTION

Accepted Solutions
DougL
Level: Powered On

Re: How to Extract an Array from a JSON Object to Use in a Apply To Each

As soon as I posted this, I found more actions I hadn't seen before.

 

1) Search for "Compose" within Actions.

2) Choose "Parse JSON"

    - I gave an example payload for parsing.

3) Choose Apply To Each and use the Array as Input

 

 

Wallah, I'm good to go.

View solution in original post

2 REPLIES 2
DougL
Level: Powered On

Re: How to Extract an Array from a JSON Object to Use in a Apply To Each

As soon as I posted this, I found more actions I hadn't seen before.

 

1) Search for "Compose" within Actions.

2) Choose "Parse JSON"

    - I gave an example payload for parsing.

3) Choose Apply To Each and use the Array as Input

 

 

Wallah, I'm good to go.

View solution in original post

Highlighted
IronFelix
Level: Powered On

Re: How to Extract an Array from a JSON Object to Use in a Apply To Each

Hi @DougL  for point 3 3) Choose Apply To Each and use the Array as Input, what is the array you compose?

I have the same problem.

Kind regard

Helpful resources

Announcements
firstImage

New Ranks and Rank Icons in April

Read the announcement for more information!

firstImage

Better Together Contest Finalists Announced!

Congrats to the finalists of our ‘Better Together’-themed T-shirt design contest! Click for the top entries.

firstImage

New & Improved Power Automate Community Cookbook

We've updated and improved the layout and uploading format of the Power Automate Cookbook!

thirdimage

Power Automate Community User Group Member Badge

Fill out a quick form to claim your user group badge now!

sixthImage

Community Summit North America

The top training and networking event across the globe for Microsoft Business Applications

Top Solution Authors
Top Kudoed Authors
Users online (8,475)