Best answer

Create a reminder process with Google Sheets and Slack/email

  • 27 March 2023
  • 7 replies
  • 1213 views

Userlevel 1

Hi, we have a process involving many separate departments/colleagues which should be tracked. When a new row is created in a google sheet, I’d like Zapier to fire off a slack message or email to users in specific columns, and keep reminding them of this at a regular interval until a checkbox is marked in their column on the row.

Is there any way of achieving this?

 

icon

Best answer by SamB 28 March 2023, 12:37

View original

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

7 replies

Userlevel 7
Badge +11

Hey @amansingh. Thanks for joining the Community! 🙂

We had a similar question asked a little while back here:


I think you could use a similar approach to what’s suggested in that other topic. But you’d also want to have a Filter by Zapier action added to ensure that the Zap only continues to run if the checkbox values for those columns are FALSE (when ticked the checkbox value would come through as TRUE). But you’d also want to delete the recurring events so that they don’t continue to trigger the Zaps. If you’re not familiar with using filters I’d recommend checking out our Add conditions to Zaps with filters guide for more details.

Another thing you might want to consider is adding a column to denote whether they should receive a Slack DM or an email. I’m thinking that sort of workflow would look like this:
 

Zap 1 - Creates the recurring reminders

  • Trigger: New Spreadsheet Row (Google Sheets)
  • Action: Create Detailed Event (Google Calendar) set the Repeat Frequency as appropriate to make it a recurring event (for each recurring event a reminder will be sent). Add Row ID to the event description.

 

Zap 2 - Sends Slack reminder

  • Trigger: Event Start (Google Calendar)
    Action: Lookup Spreadsheet Row (Google Sheets) searches for the row based on the Row ID number contained in the event details.
  • Action: Only Continue if (Filter by Zapier) column in row Contains the word Slack and relevant checkbox column Contains the word FALSE.
  • Action: Send Direct Message (Slack) Sends user a DM on Slack (takes username details from the Lookup Spreadsheet Row action)

 

Zap 3 - Sends email reminder

  • Trigger: Event Start (Google Calendar)
  • Action: Lookup Spreadsheet Row (Google Sheets) searches for the row based on the Row ID number contained in the event details.
  • Action: Only Continue if (Filter by Zapier) column in row Contains the word Email and relevant checkbox column Contains the word FALSE.
  • Action: Send Outbound Email (Email by Zapier)


Alternatively, if you’re on a professional plan or higher you could create a single Zap handle the actions of Zap 2 and Zap 3 in two paths. More on how to use Paths here: Add branching logic to Zaps with paths

Does that help to get you started? Please do let us know how you get on with this!

Userlevel 1

Hi @SamB thank you for the super quick reply!

The notifications will be sent to individual colleagues (one per column in the sheet in the top row), and if their checkbox is selected then I want to stop the notification. Would filters be able to achieve that for >1 column?

Is the setup to create multiple zaps each with a filter for a specific column? Or can it be done in one zap with multiple filters, and the notifications iterate over each row depending on who has/hasn’t checked the box?

Userlevel 7
Badge +11

Thanks for getting back to me here, @amansingh

It’s possible to use filters to set up multiple sets of conditions, so you could check multiple columns, but if it needs to not send out a reminder to one specific user and still send reminders to the rest then that’s not going to work well. Especially if there’s not always the same number of user columns.

I think it would be better to have the different users added into each row rather than into different columns of the same row. That way each row to the spreadsheet and event would be associated with a single user. Could that work for you or would the users need to be in columns of the same row?

Userlevel 1

@SamB Sorry, I think I made it a bit confusing to understand. ‘User email’ simply references the task to be done. In this case, we’d need to delete this user’s information. Colleagues (in columns) would be responsible for this. There will be multiple colleagues involved in each task (row), and I would like to send notifications to colleagues about the task to be done. See the new screenshot below:

 

 

Userlevel 7
Badge +11

Ah I see, @amansingh!

Ok, so in that case you’d want to have Zaps set up for each of the colleagues. Then set the Filters for each to check whether there’s a check box in the column that relates to that specific colleague.   

Also, just realised that I suggested searching by the Row ID, but that’s not going to be possible since the Lookup Spreadsheet Row is going to ask for a specific column to search on. Sorry about that, I must have gotten mixed up with the Update Spreadsheet Row action there! Anyway, to get around that you’ll want to add a column to store a unique number for the row a Task ID for example:
ace0960092cb5228e58401d73ec42196.png

That Task ID would be the value you’d add to the events and use as the search value in the Lookup Spreadsheet Row actions. 

Then for the filters you’d just need to check whether there’s a checkbox in the column that’s specific to the colleague:
885c59fa87f6164d1ea36703f870c3f6.png
So if the Colleague 1 Zap runs for a recurring event related to task 1 (row 2 of the spreadsheet) it will halt. If it runs for events related to tasks 2, 3, 4 etc that don’t have the checkbox selected in the Colleague 1 column it will continue to send out reminders until it comes across one with the checkbox that’s ticked. 

So instead the Zaps would look like this:

Zap 1 - Creates the recurring reminders

  • Trigger: New Spreadsheet Row (Google Sheets)
  • Action: Create Detailed Event (Google Calendar) set the Repeat Frequency as appropriate to make it a recurring event (for each recurring event a reminder will be sent). Adds only the relevant Task ID to the event description field.
     

Zap 2 - Sends Slack reminder to Colleague 1

  • Trigger: Event Start (Google Calendar)
  • Action: Lookup Spreadsheet Row (Google Sheets) searches the Task ID for the row based on the ID number contained in the event Description field.
  • Action: Only Continue if (Filter by Zapier) the Colleague 1 column (Text) Contains the word FALSE.
  • Action: Send Direct Message (Slack) Sends user a DM on Slack or uses the Send Outbound Email (Email by Zapier) to sent them an email. Depends on which action you want to use for that colleague.

 

Zap 3 - Sends Slack reminder to Colleague 2

  • Trigger: Event Start (Google Calendar)
  • Action: Lookup Spreadsheet Row (Google Sheets) searches the Task ID for the row based on the ID number contained in the event Description field.
  • Action: Only Continue if (Filter by Zapier) the Colleague 2 column (Text) Contains the word FALSE.
  • Action: Send Direct Message (Slack) Sends user a DM on Slack or uses the Send Outbound Email (Email by Zapier) to sent them an email. As with Zap 2, it depends on which action you want to use for that specific colleague.


Having Zaps set up for each colleague will allow each Zap to trigger on the same event, check whether it needs to send a reminder to the colleague or not and then send out the reminder as necessary.

What you would definitely want to do is ensure that once the task row is has been fully completed by all colleagues, you’ll want to delete the upcoming recurring events in Google Calendar so that the Zap doesn’t keep triggering for events related to tasks that are fully complete. 

Let me know if you have any further questions or run into any issues in setting that up. Happy to help further!

Userlevel 1

Thanks @SamB this is great!!

Userlevel 7
Badge +11

You’re very welcome, @amansingh. Always happy to help! 😁