Filter array for specific values

My Webhook sends {{ startTrigger.data.quote.line_items[]}} as an array of objects (like 73 objects).
I am trying to filter from within the objects. what I'm looking for is specific quantities for certain values withing the array for example where {{ startTrigger.data.quote.line_items[40].item_name}} = "gutter" then give me the {{ startTrigger.data.quote.line_items[40].item_quantity}} so I'm wanting to search the array for an .item_name matching "gutter" then get the .item_quantity for gutter. also looking for other specific items as well like .item_name matching to ("ice and water guard" - needing quantity, "down spout" - again needing the down spout quantity) etc.

I have looked through the support tickets and documentation and have been trying to play with loops and filters but really am not getting anywhere. if there is a way to return the quantities matching to specific names from certain objects it would really help me get through this project.

I guess project scope may help - this webhook sends back like a 280 page json file for a booked project. I want to add the project to an upcoming work list. i have the client name, address etc mapped to columns in a retool database and would like to also be able to enter in the gutter quantity, down spout quantity etc. however depending on how the estimate is built the gutter could be {{ startTrigger.data.quote.line_items[40].item_name}} with a quantity {{ startTrigger.data.quote.line_items[40].item_quantity}} or it could be spot 80 in the array of objects rather then position 40 so i really need to be able to search or filter the objects by item_name in order to map the desired quantites to the correct items.

Hey @Nate_Sikkenga!

It looks like you've been playing around with Query JSON with SQL queries. Have you tried something like the following already?

select item_quantity from {{ startTrigger.data.quote.line_items }} where item_name = 'gutter'

You can also extend it to search for multiple values with something like

select item_quantity from {{ startTrigger.data.quote.line_items }} where item_name = any({{ ['gutter', 'door'] }})

Curious to know what you see from either of those options!

here is what i got to work in a loop:

d = startTrigger.data.quote.line_items
var outArr = []
d.forEach((a) => {outArr.push({id:a.item_name,
Quantity: a.item_qty_net
})})

return outArr

with the lower window having
return value

it looks like your example would work great if there were one mention of the word gutter however in this case each revision of the proposal (quote) in the system generates mentions of the specified item so outputting into another table helps me to map each item to the corresponding quantities. now I just have to figure out how to filter down to the correct item quantities for the accepted bid revision in the response and the API creator is looing into it as currently the 4 separate mentions in the response for "Weather Guard Roof vents" have no distinguishing properties to verify the accepted contracted quantities. it is an issue on the application side where there should be different values for "Accepted_By" or "revision_Number" etc to distinguish the active. I really appreciate your response and believe it will come in handy for others searching the help articles.