A webhook pipedream problem

Hi Gliders,
I hope there is someone here who can help me.
I am using Glide App and I have the free plan.
In my Glide app, I have created a custom action button.
In the app, people can choose if they want to receive email notifications.
If so, then they can fill in their email address.
In the custom action, I have an if-else condition.
If they don’t want the notification, it goes one way.
If they want to receive an email notification, it will trigger a pipedream webhook.
In pipedream, I have created the trigger and generated the URL for the webhook.
In the app, I am calling the webhook, and there I have placed the URL from the pipedream trigger.
Now, I also had to give values.
So I first selected the Not_Email (notification email column in Google Sheets) with the value Not_Email.
In the pipedream workflow, I am using the Not_Email, so an email can be sent to that email address. For values, it will show then Not_Email Not_Email.
In the send email step in pipedream, I have selected the value. In there it is showing me the current email address.
If I do a test in pipedream, it is working.
In my app, if I change the user’s email address and press the custom action button, in pipedream I get an error.
TypeError
Cannot read property ‘value’ of undefined

If I change the email address back again, it is working without any error.
The thing is, any random user could press that custom action button, and then the email will be sent to their own email address.
But the way it is now, it will not work.
I also tested it by changing the second Not_Email to Name (the user name)
In the details of the pipedream workflow, I can see that an email would be sent to the user’s name. And of course, this doesn’t work. So I can see that the values are passing through.
As long as I stick to the same email address, it works. As soon as there is a different email address, it doesn’t work.

I hope it is a little bit clear about what I want to do, and what is going wrong.
And hopefully, some one can help me.
Many thanks in advance for all your help, time, effort, and tips.
:slight_smile:

That error is telling you that the value sent via the webhook was empty (undefined).

My suggestion would be to use the Data Peek view to check the value in the column immediately before the Trigger Webhook action. That should give you a clue.

If you show a few screen shots - of the columns in the Glide Data Editor, and the action configuration - I might be able to help debug further.

1 Like

Hi @Darren_Murphy,
Thanks
As I mentioned, the strange thing is, that when I change the email address, in the same column and of the same user, I get this error.
If I look in the column, there really is a correct email address.
If I look at the details of the workflow in Pipedream, I see the original email address.
But not the one I had changed it to.
I will try to make some screenshots. I will maybe just erase some parts of the email address, to prevent spamming :wink:

Yes, well changing a users email address is not something you would do very often, and could cause erratic behaviour in the builder, especially if there are Row Owners in play.

But, a picture usually tells a thousand words, so that would be very helpful.

2 Likes

I also used a different user, that has a different email address, and I get the same error.
I have the screenshots, but I need to “edit” them a little, but they are coming.

@Darren_Murphy, here are the screenshots.
Maybe I also need to mention, there are two email columns in this sheet.
The first one is for the user’s email address for if they log in.
The second one is what the user can fill in, for which email address they want to receive the notifications on.
I will try to explain some of the screenshots.


The first row is the one that I am changing. The approved column will be checked once the user is “approved”. The email in the first row is working.
.
2022-12-07_13-56-32
This is what I see when I edit the Not_Email column
.

The “Approve User” button is the one that has the custom action.
.

This is the general setting of that button.
.

This is the custom action of that “Approve” button. The “Set Column Values” will set the “Approved” column item as checked.
.
2022-12-07_13-59-11
These are the details of the “Trigger Webhook” action. The values are maybe the ones where I have my doubts about. This is where I want to pass through the email address where the email notification needs to be sent to.
.

This is what I see in Pipedream when the workflow is successful. In the lower part, you can see the email address. This is the same as in the Not_Email column in Glide.
.

Here you see that I have changed the email address in the top row.
.

This is when it had gone wrong in Pipedream.
You can see that the email address in the lower part is still the first email address and not the email address I had changed it to.

If in the app I use the second user, I get the same error, because the email address is not the first original email address.

I am still learning how to work with Glide, but I was able to make maybe two other apps, so I know some things, but not everything.
For Pipedream, I am still new.
So far, I had used one more workflow, but that was a simple one. That will check if a new row was added, and then sent an email. That one is working fine.
But for this action, I need to use the webhook, because there is no new row added to the sheet.

I hope everything makes a little bit of sense.
Again, many thanks for your time and effort.

I haven’t read your entire post yet, but the first thing that jumps out at me is that your “Not_Email” column is User Specific. If this is your User Profiles table, then it isn’t necessary to make that User Specific, and could quite easily explain what’s happening. Because when you make that user specific, every user will see a different value in the same row.

1 Like

Okay.
I had a vague idea about this, but as far as I know, I cannot uncheck it anymore.
Do you know if it is possible to remove this column and then create it again and don’t check it?

Yes, that’s the only way.

Try that first, and I’ll have a closer look at the rest of your previous post in the meantime.

1 Like

I removed that column and created a new one, with the same name.
In the custom action, trigger webhook, I had to set the values again.
The first email address is working.
The second user, with a different email address, is giving the same error again.

Okay, my guess is that when you switch users, you are attached to a different row in your users table, and your “Not_Email” column in that row is empty. You can check this by navigating to the approval screen, and then use the Data Peek option at the bottom left of the builder:

This will show you the data in the row the screen is currently attached to:

1 Like

Right here. You established the variable name as the email address. If that variable name changes, then it will break the webhook. That should be a static name, such as ‘Email’

3 Likes

Well spotted :+1:

2 Likes

@Jeff_Hager,
Do you mean like this?
2022-12-07_15-13-35

I did not use any of the column names. I selected “Custom” and just typed “Email”
Now I assume, I also need to change/check my trigger and next step in Pipedream?

1 Like

Yes, that looks correct now. Pipedream is expecting a static variable/parameter name so it knows what you just sent to it.

And yes, I believe you will need to reconfigure the webhook however that needs to be done.

I changed the needed things in Pipedream.
But now I get the error on both users and both email addresses.
The test of Pipedream is okay.
But when I test from the app, I get the error.

I also have tried switching both values around, but no luck.
In pipedream, I see the value, but it looks like he thinks that the email address is a Name of a value.
I am thinking of just deleting the whole workflow in Pipedream and create a new flow.
And in the custom action, also create the new trigger.
It looks like the webhook is passing on the wrong thing.
But I cannot figure out what or where it is going wrong.

Problem is solved :slight_smile:

Somewhere, somehow, in one of the documentation of Glide or Pipedream, something is not really clear.
I removed the action in the custom action editor.
Removed the workflow in Pipedream.
Create a new webhook trigger.
Placed the URL in the custom action and gave the correct name and column
The trigger test was okay.
Then I constructed the Send Email in Pipedream
Did a test, and it was working.
I tried two different users with two different email addresses and it works :slight_smile:
Thanks to @Darren_Murphy and @Jeff_Hager for their time and effort.

3 Likes

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