How to send email to a list of user using Zapier in Glide?

Hello,

I would like to send an email to a list of users.
They are displayed as a list in the Data.
I wanted to use Zapier to fill the Value 1 with the list of the email addresses. But the list, I created in Glide via the Data menu, is not displayed in the values I can select in my Zap.

Any idea of what I can do?

Thanks in advance for your help!

You could just do it with a Google Script and bypass Zapier.

Is it an array of multiple columns? You canā€™t use an array of multiple values to fill a single value. You would probably have to create a template column or an arrayformula in the sheet to load all emails separated by commaā€™s into a single cell.

I would like to figure out how to set up a zap to email multiple users as well.

E.g. Glide is able to calculate the distance of users via their current location to a specified coordinates of a place, e.g. a flea market. I would like to allow the organizer to send an email to users whose last location is within 3 kilometers of the flea market. Any idea how do I go about setting that up with Glide and Zapier?

This is calculated on the userā€™s device, so organizers will never have access to that data.

You canā€™t save usersā€™ ā€œlast locationā€ unless you use a location component and hard-code it somewhere in your data, letā€™s say a column in your Users table. Of course, it wonā€™t be updated by time and must require user interaction.

If you still want the hard-code way, you can theoretically create a distance column from the usersā€™ hard-coded locations, then pitch that against a fixed location based on the signed-in organizer. Only one location can be used, though.

Then from that data, you can filter out the emails that match your condition, join them using a joined list column, and send that data to Zapier for further processing.

1 Like

Thanks very much for your reply @ThinhDinh, really appreciate it.

Yep I understand that the userā€™s location wonā€™t be updated real-time unless they open up the app and use it. We could write in the email that we are keeping them posted given that their last location was detected to be near this flea market.

Iā€™ve seen your other post on joint list but I donā€™t quite understand how to do it in my context, i.e.

  1. pulling the last location of users,
  2. filtering it and
  3. pulling their email addresses into a single column and trigger a zap to this list of reciepients

Could you kindly explain how to do this?

For step 1, I believe Iā€™ll have to create a column and create a ā€˜use my locationā€™ button to get their current coordinates? At present I have loaded the flea market coordinates so itā€™ll show the distance from the user when they open the app.

ā€“

Iā€™m thinking if another solution might work - assuming that there are different events in an area and flea market is one of them, the users could then follow ā€˜favoriteā€™ this event and we will have a list of followers, weā€™ll then zap an email to this list of users, as opposed to the last location we have on them.

But how do we get the list of users who favorite this particular event "flea market; into a joint list or cell column?

Yes, you have to require their interaction to get that data. However, to be honest itā€™s not very practical, users might never update their location again (they have to switch the location switch on and off to update it, I believe).

You have to write the ā€œfavoriteā€ data to a new table, since the native favorite is a user-specific column and you canā€™t access different usersā€™ data that way.

If you have them as separate rows with an event ID, you can do a relation and join list to take the emails back.

Since an exact location of the user may not be needed, I suppose you could get away with using the distance column, and through a user action, the user profile row could be updated with the business that was closest (had the smallest distance) at the time that action was performed. That way you wouldnā€™t need a location component.

Yeah, this would be a better approach, maybe populates a list of business IDs to the user profiles sheet, and get that action to as many places as possible within the app.

Then, in the businesses table, create a relation to a split text column of the list above, a joined list column would get a list of emails to send to Zapier.

1 Like

Thanks Jeff and Thinh.

I tried to create the array columns but bumped into an issue. Essentially I created a ā€˜favorite sheetā€™ so that a new row will be created whenever a user fav or unfavorite the place or event (e.g. ABC flea market).

I would then do 2 lookup for the email in the [places] sheet - one for the list of ā€˜fav emailsā€™ and another for ā€˜unfav emailsā€™, and then use the [ Array - remove elements] to get the final list of followers email addresses.

However if a user were to favorite a place, unfavorite it, and favorite again (perhaps sometime in the future), the [Array - remove elements] unfortunately doesnā€™t capture the email again because the email is previously captured in the ā€˜unfav emailsā€™ column.

So essentially what I want is if the same email appears more times in the ā€˜fav emailsā€™ vs the ā€˜unfav emailsā€™, then the final data would indicate that this user is following this place.

Apologies if this issue has been covered somewhere else but I canā€™t seem to find the solution in any thread.

If there is a better way to achieve my intended outcome, Iā€™m all ears as well! :slight_smile:

I think you just stick to this extra table.

Create a relation from the Places table to the Favorites table, and return all the emails through a joined list column.

For favoriting/unfavorting:

Favoriting: Add a row to the Favorites sheet, containing the signed-in userā€™s email and the Places ID.

Unfavoriting:

  • Add a template column in the Places table containing the email of the signed-in user and the Places ID. Letā€™s say it would look like: a@gmail.com - ID.

  • Add a template column in the Favorites table with the same structure as above.

  • Create a relation using the pair of columns above, from the Places table to the Favorites table.

  • When people click an ā€œUnfavoriteā€ button, you delete the row using the relation. That way, you can just always refer to the list of emails I mentioned at the top to pass to Zapier, no need to care about adding/removing elements from arrays.

2 Likes

When people click an ā€œUnfavoriteā€ button, you delete the row using the relation. That way, you can just always refer to the list of emails I mentioned at the top to pass to Zapier, no need to care about adding/removing elements from arrays.

I donā€™t quite understand this step fully, could you kindly explain this further?

Essentially I have 2 sheets - one for [places], and the other is [favorite] sheet. I also have a tab for people to search for places, and then favorite them.

I followed the step till the last part on deleting the row, because the tab is being linked to the [places] tab so I would be deleting the row containing the place details, latlng etc.

For the Fav button, I could easily reference a sheet (i.e. [fav sheet]) and have it create a row, but to delete a row thereā€™s no option to reference a sheet, which means it would be deleting the row in the [places] sheet which is not ideal.

If you have created this relation, you can use it in a ā€œdelete rowā€ action.

Not sure why it didnā€™t show up previously but I just tried again and saw the option to delete the relation item, thanks so much @ThinhDinh !

1 Like