Iterator can’t iterate over HTTP response object (data returned as object, not array)

:bullseye: What is your goal?

I am building a scenario in Make where I:

  1. Send an HTTP GET request to a (dynamic) website API
  2. Receive a list of real estate listings
  3. Iterate over each listing to upsert them into Airtable (one record per listing)

The goal is to loop through each property and process them individually.

:thinking: What is the problem & what have you tried?

The HTTP request returns all listings inside one bundle, but the listings are nested under a field called Data which is an object, not an array.

Example structure (simplified):
{
“Data”: {
“3480000184”: { “caseNumber”: 3480000184, “address”: “…”, “zipCode”: 3480 },
“3480000193”: { “caseNumber”: 3480000193, “address”: “…”, “zipCode”: 3480 }
}
}

Because Data is an object with dynamic keys (case numbers), Make does not show square brackets and the Iterator does not recognize it as iterable.

What I have tried:
Mapping Data directly into the Iterator → not recognized

Using:
values(Data)

Using:
map(Data; value)

Ensuring the Iterator input is in mapping mode

Running the scenario multiple times to inspect bundles

No matter what I try, the scenario still outputs only one bundle instead of one bundle per listing.

:clipboard: Error messages or input/output bundles

There are no error messages.

What I see in the output:
The HTTP module outputs 1 bundle

Inside the bundle:
Data contains multiple nested objects (keyed by case number)
When passing Data into an Iterator, it does not split into multiple bundles

I expected the Iterator to output:
1 bundle per property

But instead, I always get:
1 single bundle

:camera_with_flash: Screenshots (scenario flow, module settings, errors)

Welcome to the Make community!

To do this, you can use the built-in function:

Then, you can use map to get the values of each array item.

  • map(complex array; key)

Here’s an example of how you can use these functions together:

{{ map(toArray(1.data); "value") }}

:high_voltage: Make Input Markup: Copy-paste the above into the field, including start/end curly brackets for it to import as intended :warning:

These functions may have also been covered in the Make Academy tutorials — refer to the Make Academy Course Overview to learn more.

@samliew
P.S.: investing some effort into the tutorials in the Make Academy will save you lots of time and frustration using Make!