How to run a REST API/Query for each item in an array and return all results together

Similar to https://docs.retool.com/docs/scripting-retool#section-triggering-a-query-for-each-item-in-an-array, this setup using Async JS promises will make the .data property of this query include ALL of the results of the triggered queries.

This setup in a “Run JS Code” type query will trigger another query for each item in an array, and after completed return all of the results together in the jsCodeQueryName.data value.

Where get_assignment is a REST Api query, taking an input of assignment_id, const promises returns a mapping function of each result of the API where we pass in ID as additionalScope.

image

You could then reference the results inside a calculated column of a table for example using {{jsQueryName.data[i]}} in the calculation to have each row display the result.

4 Likes