Google Calendar Help & Support
What Google Calendar Triggers and Actions Are Supported?
- Event Cancelled - Triggers when an event is cancelled or deleted.
- New Event - Triggers when an event is created.
- New Calendar - Triggers when a calendar is created.
- New Event Matching Search - Triggers when an event is created that matches a search.
- Event Ended - Triggers when an event ends.
- Event Start - Triggers a specified time before an event starts.
- New or Updated Event - Triggers when an event is created or updated (except when it's cancelled).
- Delete Event - Deletes an event.
- Add Attendee/s to Event - Invites one or more person to an existing event.
- Create Calendar - Creates a new calendar.
- Create Detailed Event - Create an event by defining each field.
- Quick Add Event - Create an event from a piece of text. Google parses the text for date, time, and description info.
- Update Event - Updates an event. Only filled fields are updated.
- Find Event - Finds an event in your calendar.
How to Get Started with Google Calendar on Zapier
About Google Calendar's Integration#
- Admin/owner permissions - You need to have permissions to edit or add events to the calendar you wish to build Zaps on before being able to use the Google Calendar integration.
- Paid/versioned account - Google Calendar is free to use, so you don't have to be on a specific paid/versioned account with them to access it.
- Authentication method - OAuth
- Custom field support - Google Calendar does not have custom fields.
To get started with Google Calendar first click to add a Google Calendar account in your Zap.
You should then get a pop-up window from Google asking you to log-in to authorize the connection between that Gmail account and Zapier. If you are already logged in the pop up will show right away.
After logging in, you'll get sent back to your Zap where you now have your Google Calendar account connected!
Popular Things To Do With Google Calendar
Google Calendar Tips & Tricks
View which color swatches represent which color when creating an event within Google Calendar:
How to Pull Specific Events When Using the Event Start Trigger#
Creating and testing a Zap that uses the "Event Start" trigger can be tricky. When testing this trigger out, you usually get a set default data which sometimes is not what you need in setting up the Zap.
Maybe you're trying to add a Filter to the Zap but the test data isn't helping. Or maybe you need to get Named Variables from the Description of the Google Calendar event, but are unable to map the Action template since the Zap is not getting the specific calendar event description.
Whatever is the case, below are steps on how you can help the system find a specific event for testing:
- Create an event in your Google Calendar. Make sure that it's within the "Time before" settings you have. So if your time before settings is 15 minutes before and it's currently 7:20pm then Create an event at 7:30 pm. Make sure to also include data in the description if you need data from this field.
- Add the title of the Event on the "Search Term" portion of the "Event Start" Trigger.
- Test the Google Calendar event trigger. It should be able to get the recently created event instead of the default "Test Event"
- Before turning On the Zap. Delete the event created in #1 and delete/edit the search term used in #2
Use Google Calendar's New Event Start Trigger to Create a Long Delay#
There may be situations where you would need to delay an Action from being performed but the timeframe is beyond the 1 month limit of Zapier's Delay app. In cases like this, you can use Google Calendar as a workaround.
The idea here being Google Calendar will act as an intermediary app for scheduling. Since you can create a calendar event anytime in the future (beyond 1 month) using Google Calendar, we're going to leverage this and use the Google Calendar Event Start Trigger to set the date when an action is to be performed.
To Create this workflow, 2 Zaps would be needed. Below shows how to structure those Zaps
- Trigger: Set the Trigger App where the data would come from
- Action: Google Calendar Create Detailed event
- Trigger: Google Calendar New Event Start
- Action: Set the Action App where you want the data to be sent
To give a more concrete example, let's say you have a Form wherein a person is asked for their desired appointment schedule date. You want to send that person an automated Email reminding of that scheduled appointment one day before the desired date.
In this scenario, you'll need to create 2 Zaps to create the scheduling workflow.
The first Zap would capture the date entered by the form respondent.
And it would save that date as an event in Google Calendar.
The second Zap would then be setup to trigger 1 day before an event starts
This would then send out the email notification to the user 1 day before their appointment schedule date.
Common Problems with Google Calendar
Why Is The Summary/Description Missing?#
If the calendar doesn't belong to you and hasn't been shared with you, Google will not provide the Summary or Description fields. The solution is simple, have the owner share the calendar with you (even if it is public)!
Why Aren't Repeated Events Triggering?#
Repeated events in Google Calendar aren't supported with the "New Event" trigger in Zapier. A repeated event would cause an infinite amount of Tasks to occur since repeated events last forever. However, repeated events can be used with the "Event Starts" trigger.
My Events Are being created for the wrong date and time!#
There are a few known reasons why events might be created for the wrong time by a Zap, listed below.
Are you creating an all-day event?#
All-day events in Google Calendar end at midnight on the last day, so they're exclusive of the end date. For example, an event created via Zapier for August 10 - August 15 will appear to span August 10 - August 14 in the calendar UI, because the event will end at 12:00:00 on August 15.
To fix this, you can either update your trigger data so that it lasts for an extra day, or you can modify the end date in your Zap directly by adjusting the date/time to include
+1d. This will cause the event to last for an extra day.
Are your timezone settings correct?#
Make sure to check the time zone setting of both the trigger and action service and Zapier. Fixing this should allow events to happen at the correct time.
- You can change your Timezone settings for your Zapier account here.
- You can read how to check your Google Calendar timezone settings here.
- You'll need to refer to the help docs or support team of your connected app to check the timezone on that app! You may also want to check that app's help pages on Zapier to see if there are any known limitations or restrictions for date/time fields.
Is the event being created on the wrong date, specifically with the month and day switched?#
Regardless of your settings in Google Calendar directly, their API only accepts dates in MM/DD/YYYY format. So, if you try to pass April 7, 2018 as 07/04/2018, Google Calendar will interpret that as July 4, 2018. You'll need to pass your data in MM/DD/YYYY format for Google Calendar to add the event to the correct date(s). If your trigger is sending the data in DD/MM format, you can use a Formatter step to reformat the date.
Are you using the "Quick Add Event" action?#
If you're using the "Quick Add Event" action instead of the "Create Detailed Event" action, there are some specific guidelines you'll want to follow to make sure that Google Calendar can interpret the date and time correctly. You can see those guidelines here.
Is your detailed event showing up for now?#
The "Create Detailed Event" action requires a valid start and end date. Events created with an invalid start or end date will be created for the time your Zap runs.
None of these describes my problem!#
The "New Event Matching Search" trigger is firing too often or on old events!#
Have you recently updated older events?#
When requesting events from Google Calendar, Zapier looks at the last updated date and only gets the events updated in the last 3 days. This can cause problems if a number of old events on your calendar are updated (for example if a recurring event has been updated). For example, say you have an event called "Foo" from January 1, 2015 that matches your search:
- You turn the Zap on, and the Zap checksl for events matching the search that were updated in the last 72 hours. "Foo" is not found.
- Their Zap runs for awhile.
- The "Foo" event gets updated.
- The Zap runs again and –– oh no! –– it triggers on "Foo" because it hasn't seen that event before.
There's no real fix for this right now, but if you send the support team an email we can add you to a feature request to fix this. In the meantime, you can filter on the "Created at" date and check for events created after the Zap was turned on:
That way, old events won't trigger the Zap.
My Events Aren't Showing Up At All#
If you set the start date time and end date time to the exact same time it's possible that you might not see the event in Google Calendar when you are looking at the calendar in some views. If you click on agenda view in Google Calendar you will see the event show up. Google Calendar doesn't show events with a length on 0 minutes in some of their other views.
If you need your event to show up in other views in Google Calendar use the Zapier date/time modifiers to adjust the end date/time. We suggest adding 15 minutes to the end date/time.
Some events are missed by the Event Start Trigger#
If you're on the Free or Starter plan, we check for updates in your trigger apps every 15 minute. This means you'll need to set the Time Before to 16 minutes (or more). If you're on the Professional plan or above, we check for updates in your trigger apps every 5 minutes. This means you'll need to set the Time Before to 6 minutes (or more).
If you need to trigger your action closer to the actual start time of the event, you can workaround this by adding in a Delay Until action. For example, lets say you want to trigger the zap within 2 minutes of the event starting.
Your Event Start trigger will look like this:
And then your Delay Until action will look like this:
Then you can add the other actions you want to perform. Keep in mind that the Delay action will queue the task to run, so it may be off by a couple seconds here or there, but should be pretty close.
Events on a Calendar I Subscribe to do not Trigger (New Event Trigger Only)#
For the New Event trigger, Zapier has some logic to filter out old events. On calendars that you subscribe to, Google does not have an accurate creation date, so it applies a default date of Jan 1, 1900. This causes the events to be filtered out.
The recommended workaround is to use the Event Start trigger and set it to look several weeks ahead.
With this trigger, if you set the "Time Before" field to be 2 weeks, it will trigger on events that start 2 weeks from now. If you then schedule an event that is less than 2 weeks away, it will trigger on those events as well.
403 Forbidden when adding events#
This usually indicates you do not have permissions to edit or add events to the calendar you picked. To fix this, you'll need to login to the calendar owner's Google Calendar account, click on the settings gear icon, and the head to the "Settings" menu option.
On the next screen, head to the "Calendars" Tab.
Next, you'll need to head to the calendar you want to share permissions on and then click on "Shared: Edit Settings".
Once on the next screen, the last steps are to type in the email address of the person you'd like to share the calendar with, click on the drop-down under "Permission Settings", choose the "Make changes to events" option, and then click "Add Person.
Once you've done that, click "Save" at the bottom of the page. Now, if you refresh your Zap, you should be able to access the calendar without any errors.
I want to invite attendees to events via a zap#
You can do this by adding a comma delimited list of emails to the Attendees field in the New Detailed Event action.
Events on the Google generated Birthday Calendar trigger multiple times#
Unfortunately, Google changes the ID of events on their auto-generated calendar in a way that causes the same event to trigger multiple times. We don't recommend building zaps on Google generated calendars because of this.
I'm getting a (400) Bad Request and said "The specified time range is empty." error#
If you are sending a start and end time but getting this error, it could be because the start time you're sending is after the end time. Check the mapping of your zap to make sure you didn't mix up the fields!
My "Quick Add Event" action isn't behaving the way that I expect!#
In general, the "Quick Add Event" action is pretty finicky. In most cases, using the "Create Detailed Event" action where possible will be more reliable. You can also test the way that "Quick Add Event" interprets data using the API Explorer.
Here are some known quirks specific to the "Quick Add Event" action:
Events are showing up for the wrong date, time, and/or duration#
Google is finicky in recognizing dates/times when using Quick Add, and you'll have to include the information in a format that Google can recognize. Specifically,:
- Event details need to follow the order:
what, where, when. Events created with the details in a different order may not be parsed correctly.
- If you enter an event with no date, it will be added at the next available time in the future
- If you don't enter a start time, an all-day event will show up
- If you don't enter an end time, an hour-long event will show up
Attendees aren't receiving an invitation to my event!#
Unfortunately the Quick Add Event action doesn't allow you to invite users to an event, it'll just add it to their calendar. If you'd like to send the user an invitation that they can accept/reject, you'll want to use the Create Detailed Event action instead.
Event Updated is triggering multiple times on the same event#
If you have a recurring event and you update the series, the zap will trigger once per event. So if the event repeats 10 times, it will trigger 10 times. There isn't a way around this really, as each individual calendar entry that is part of a series is considered it's own event.
Find Event action isn't finding my event#
Google has a bug in their search code that doesn't return events if they have a
's in the description of the event. Since we rely on Google's search, the same thing will happen when trying to find an event via Zapier. To fix this, remove all
's from your event names and it should work correctly.
There's also a bug in the search code that prevents events with an underscore
_ in the event name or description from being found when the search term also contains an underscore. For example, if your event name is
example_event and your search term is
example_event no results will be returned.
How does the Event Start "Time Before" setting work?#
The Event Start trigger offers a Time Before setting from which you can trigger the Zap to fire.
This includes events that are created inside of that window. For example, if you have a Time Before of 3 days configured, should you create a new event 1 day from now, your Zap will trigger off of this new event the next time we poll Google Calendar for new data.
I want to book a room for my meeting#
You can book resources and rooms by adding them to events as attendees, using their email address. When they receive the invitation, they automatically accept or decline the event based on the availability and access right of the inviting user.
"New event from search" doesn't work for my recurring event#
Zapier’s “New Event” trigger doesn’t capture recurring or repeated events by design, since recurring events can occur infinitely into the future. However, you can use the “Event Start” trigger to have a Zap that fires on recurring events.
I'm receiving a "Object of type datetime is not JSON serializable" error#
This can sometimes occur due to the "Repeat Until" that has been set. Ensure that the Repeat Until date here is not before the End Time of the Event. You can test this by removing the value in "Repeat Until" to see if this prevents the error from popping up!
Need More Help? - Our support team is happy to help -- send us a message