Dec 09, 2021 01:22 PM
Hello! I found a few other posts on this topic, but none that contained a solution, so trying again. I have created an operational calendar in Airtable, which I would like to sync with my organization’s Google Calendar. As far as I have found, there are two ways to do this: by creating a calendar in GCal from the Airtable URL, or by using Zapier. I’ve tested both methods and they both work well initially. But neither one seems to handle updates well. With the URL method, there can be a lag of up to 24 hours to show updates. With Zapier, you can only create a new calendar event when the Airtable record is updated, rather than updating the existing calendar event.
Has anyone found a workaround or a better solution?
Dec 09, 2021 01:39 PM
Hi Anna! The complexity of the solution here would depend on whether or not you need to sync the events in both directions (GCal to Airtable & vice versa). Both can be accomplished, however. If Zapier has limitations when it comes to event triggers/actions, you can usually accomplish what you want using something like Integromat (steeper learning curve) or Pipedream (developer-centric). In both cases, you’ll likely want to store the Google Calendar event ID in Airtable to facilitate looking it up for subsequent updates, etc.
Dec 09, 2021 01:52 PM
Airtable’s Automations have triggers for creating/updating Google Calendar events from Airtable records and/or the other way around. Updating events through Automations should be much faster than using iCal links:
Dec 09, 2021 02:35 PM
“Airtable’s Automations have triggers for creating/updating Google Calendar events from Airtable records and/or the other way around. Updating events through Automations should be much faster than using iCal links:”
Thanks for the response, Kamille! I had seen the automations for creating/updating Airtable records from Google Calendar events, but I don’t see the opposite (creating/updating Google Calendar events from Airtable records). Does this exist? If so, any details you could share would be appreciated!
Dec 09, 2021 02:37 PM
Thanks for the response, Jonathan! I’m only trying to sync one-way from Airtable to GCal (I don’t need to sync back to Airtable from GCal, unless I do need to grab the GCal event ID as you suggested). I’ll have to check out Integromat and Pipedream.
Dec 09, 2021 02:42 PM
Yes. There are both Triggers and Actions for “Update event” and “Create event”. That means you can push edits from Google Calendar into airtable (Google trigger, Airtable action), and you can push edits in Airtable back to Google Calendar (Airtable trigger, Google action).
You will need multiple Automations to do this though (because you need different triggers).
Dec 09, 2021 02:54 PM
No problem. I would definitely investigate the Google Calendar triggers first as Kamille suggested as I completely forgot about that option to be honest. The last time I did something like this that wasn’t available, so that would definitely be the first thing to look into. I would only look at the other options if you run into any limitations with the built-in Airtable functionality.
Dec 09, 2021 04:38 PM
Mind blown. Thank you!
EDIT: Like the other two solutions, Automations works great for creating new events, but not so great for updates - as @Jonathan_Lutz suggested, I think the key is getting the Google Event ID back into Airtable when the event is created to use for future updates. From my research so far that’s not so easy to engineer (probably why Zapier doesn’t support it) - but I’m going to keep trying!
Dec 10, 2021 08:11 AM
I’d be surprised if Zapier doesn’t return the event ID of the newly created calendar event after calling the method, as that’s what the Google API returns. I know it’s possible to get this information in Integromat for sure. But as you noted, you definitely need the event ID from the response of the create event action in order to send it as a parameter into subsequent update actions.