Aggregate 3 API Responses to One Array

Hey, so I’m sending 3 API requests,a nd I’d like to aggregate the 3 responses into one large array. The API returns a structure like Response->Data->results (the results contains the actual list of objects that I want to aggregate).

Let’s say each response in results has a list of 3 objects, so I want to iterate once over all 9 objects.

My problem is that for some reason the Aggergator still outputs 3 bundles, and then the iterator also goes over 3 bundles, each bundle of 3 objects. Is that how it’s supposed to happen? I’m assuming there’s a way to make one array of 9 objects:

PS The aggregator only allows me to choose Data and not results, maybe that’s part of the issue? The Data itself isn’t the array.

Hi @Crumbs , in order to assist you, you’ll have to share more details other than what’s on the screenshot..please share the screenshot of the result of the array aggregator, let’s see why you can only select Data and not the result.

Output of the HTTPS module (3 runs with an array of 3 each time):

Result of aggregator (same):

i can see you’re using the data as input in the array aggregator, try using the results(which is an array) as input instead of data

As I mentioned I don’t see that option:

Maybe it’s something to do with how I run the 3 API requests? It’s not one module that returns 3 bundles, but rather I use an iterator before, which runs the module 3 separate times, so we get 3 different operations with one bundle each… and if this is the issue, what can I do to aggregate the results?

Sorry for the late reply, dont know if you’ve solved this already @Crumbs , if you have 3 different output bundles from the HTTP Module itself then, you could pass the result directly into the iterator module, without needing to aggregate, except you need to use the data prior to the iterator module…try that lets see, once you have all 9 iterated over…then you can aggregate

Thanks. I think the main issue here that is not allowing me to aggregate is that the HTTPS module isn’t giving me 3 bundles as an output. It’s being executed 3 times, and each time it outputs 1 bundle. Is there some way to aggregate it this way? (3 executions, 1 bundle each)?

Heyy Crumbs,

Try this : in your Array aggregator (18)th module, change source module from (2)nd module to iterator module (17) and try again.

Let me know if it works or need more help!

Best,
Prem