Issue with extracting Typeform responses using Query JSON in Glide’s Webhook Workflow

Hello guys,

I am using Glide’s new Webhook Trigger feature to receive data from a Typeform form submission.

The workflow sends the entire JSON payload from Typeform to Glide, and I want to extract specific responses (e.g., “First Name”) from the payload using the Query JSON action.

I expect this query to return only the value of the “First Name” field (e.g., “Roger”) but the query does not return any value.

Any help ?

Thank you !

I don’t understand the random characters you are using for your query. It should be structured using JSONata to extract certain data out of the JSON object.

What does your JSON structure look like?

It’s the ID from the Typeform payload, it supposed to extract the first name out of my form

{
          "text": "Georges",
          "type": "text",
          "field": {
            "id": "NIl2t3UGn2Cr",
            "ref": "6452d618-0bae-4cbe-b202-e1994188f7a8",
            "type": "short_text"
          }

So in that case Georges is the first name you are trying to extract?

Yessir

Try this.

$[field.id="NIl2t3UGn2Cr"].text

There’s no errors but unfortunately it returned no value,

I also tried those format :

form_response.answers[?(@.field.id=="NIl2t3UGn2Cr")].text
`form_response.answers?(@.field.id=="NIl2t3UGn2Cr").text`
`$.form_response.answers?(@.field.id=="NIl2t3UGn2Cr").text`

Do you know if Glide does support advanced filtering ?

I tested based on what you provided directly in a table using a Query JSON column and it worked. If it’s not working, it may be because I’m missing part of your JSON structure, or it’s something with what the loop is actually looping.

I don’t have access to the new workflows, so I can’t really test any of that. The best I can do is test directly in the table.

If there is more to your JSON structure beyond the snippet you showed, it would be helpful to see that to understand the hierarchy of the data.

To be honest, I through your json snippet at ChatGPT and asked it how to extract the name.

If you tried and it worked, the issue definitely comes from the structure of that particular JSON.

Regarding the structure, the snippet is just repeating itself through the whole JSON body, but for different form responses ; and the Loop is running the step 100 times to not miss anything :

I also asked DeepSeek R1 to help me on that matter and it almost gave me the same answer.

I may try again tomorrow and if it doesn’t work, I may use Make to create an automation to extract the value.

Thanks for your time Jeff!

I’ll take a look later. Sounds like it’s an array, which I wasn’t accounting for. As for how that works in a workflow loop, I’m not sure. Someone else may have to chime in there.


^ my JSON field (which refers to the webhook response body).

I use this approach to get a single row and then update a column for that row.

Not exactly the same, but might be a piece of the puzzle.

2 Likes

I just worked with Typeform recently. I’m pretty sure the combinations we have here doesn’t cover the whole payload.

1 Like

Please try this, I’m writing this after a test on my own payload a few days ago.

$filter($.form_response.answers, function($v, $i, $a) { 
    $v.field.id = "NIl2t3UGn2Cr" 
}).text
4 Likes

Hi,

It’s 11AM where I am and it’s the perfect way to start the day.

Thank you @ThinhDinh, it’s working, I’m so relieved.

1 Like

If you want to get another field, make sure you change the “text” part to something else that fits with said element. Glad to help!

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.