Automate all the things with Zapier

Michael Münzer
EGYM Software Development
5 min readJul 5, 2018

--

Last week we had our first version of the eGym labs. It is a company event where all the software developers gather in Munich for 2 days and participate in a Hackathon. People from different departments pitch problems which they believe can be solved with the help of technology. This was a lot about automating tedious repeating tasks no one really wants to do manually these days. After the pitch each developer could choose which problem he or she want to solve to improve the companies overall productivity.

Exciting times during the eGym lab days

So did I, me and Stephan Horsthemke picked a problem which another department is facing for internal meetings every week.

Can we automatically send a mail after a meeting is done containing meeting notes and a survey link for all the participants?

Meeting notes are traditionally written during the meeting and afterwards distributed via mail to all participants. This always requires a couple of clicks and might be forgotten in stressful situations. In this case people who are interested, but could not attend the meeting lack important information and decisions.

Initially me and Stephan Horsthemke wanted to build a microservice which is receiving push notifications for calendar events. Listening to a single calendar is possible because all relevant events share the same calendar. Our plan was to listen on the specified calendar of our colleague and filter those events we want to send mails for.

The leading questions we had from the start on were, about who is gonna responsible for maintaining this new service and what happens if it breaks? We wanted to build it as resilient as possible so that it never falls back to us.

Luckily we found a different solution which does not involve any engineering effort and can be used for many more use cases. We had a closer look into Zapier and IFTTT. Two automation tools which are able to combine apps with each other.

We were able to create most of the functionality of our self-written service in a matter of minutes. But later on we found out that only Zapier is able to get the attendees of an event. This is one reason why our final tool of choice was Zapier. Zapier also looks like a better fit for businesses, whereas IFTTT seems to be great and cheap, for individuals.

For the matter of simplicity I will just run through the setup we built with Zapier as IFTTT did not offer everything we needed.

Our plan was listening to the ending of a Google Calendar event. So our trigger had to be Google Calendar which we connected with the HR calendar. As a second step we decided to insert a delay to have the zap wait some minutes before it sends the mails in the third step.

Overview of the used apps & steps

The calendar event we added for testing contains the trigger keyword feedback-reminder and NamedVariables in the description.

A test event to verify our zap works

In Zapier we added our test calendar and the search term feedback-reminder during the setup. The search term guarantees mails are only triggered for events which contain it within the mail description. This allows for attaching even more triggers to a single event.

Zapier calendar configuration
Zapier delay configuration

In the Google Mail action settings we added Attendee Emails to the mail, which are extracted from the calendar event by Zapier. There were also some quirks. At first we were not able to get the event attendees with Zapier. It tests each step with some testing input of the trigger (the first step). One by one, it will be tested with this data. The initial test data of our calendar API, however, did not have any attendees. Despite that, it works when the zap is completed and the event end action is triggered.

Zapier GMail attendees selection

Within the body we added our two named variables Survey and Notes. They are fetched from already created events. You just have to create an event with all variables you need in your Google Calendar. Then going back to the first step (Event Ended), you are able to ‘Pull in Samples’.

This is an important learning of Zapier’s system, your tests and inputs will be processed one after another and the data you can use depends on your test data.

Zapier GMail content selection

Furthermore you can customise basically everything of your mail now. This example just puts the event name as subject and uses the declared links for the body of the mail. Feel free to customise the shit out of it!

The result is a well formatted mail to all the meeting participants which looks like this:

A successful mail which was sent without human interception

For everybody who stopped checking mails, it is even easier to send the reminder as a slack message. Customise the icon and the whole message, use a bot or your own identity, select the channel etc..

The setup just differs in the last step where we added the following configuration:

Zapier Slack content selection

The result is:

Automatically sent Slack message in our test channel

After experiencing how simple problems like that can be automated I believe everybody should go through their daily schedule and watch out for opportunities like this to become more productive. Furthermore Zapier is great not only for developers because everyone with some computer experience should be able to click their way through and create their own bot.

What we also learnt was that one should always watch out for simpler solutions and prevent the pain of maintaining services when its not necessary.

So go ahead and automate all the manual tasks you don’t want to do anymore!

If you found it helpful, please click 👏 to recommend this article to others.

--

--