Tuesday, 16 February 2021

Bulk create Google Calendar events with optional Google Meet

The following Google Apps Script tool is designed to bulk create Google Calendar events with optional video conferencing (ie Google Meet). The tool is run entirely from a Google Sheet and the details of each event is added per row, from which the tool plugs in to Google Calendar and bulk creates the events for you. The outcome is the standard Calendar event item that can then be edited just like any other.

Google Sheet columns allow for event details to be added.
Google Sheet columns allow for event details to be added.

Features of the tool

  • Performs an initial check that you have access to the provided Calendar to create events on.
  • Allows for events to be created on another Calendar that you have suitable access to (not just your own).
  • Uses toast popups to inform you of the progress as each creates each event per row.
  • Fast and efficient for creating a large number of events in one go.
  • Will not duplicate events if re-run, so you can continue to append further if you wish.
  • Provides a direct link to the created event from within the Google Sheet for easy access.
  • Performs a check of any missing 'required' information and informs the user via a popup so they can resolve this.
  • Includes 'Log' sheet to help output any error messages.
  • Has a 'Reset' option in the menu bar to remove all entered data and start from scratch.
  • Replicates 90%+ of the settings you can adjust when directly creating an event in Google Calendar.

 

How to use the tool

I've created a video (with captions) that helps to demonstrate using the tool:


File Download

Download the Bulk create Google Calendar events with optional Google Meet sheet here. Please use 'File' > 'Make a copy' for your own version.


The Code

Here is a link to the Bulk create Google Calendar events with optional Google Meet code blog post.

12 comments:

  1. Hi, so cool, i am going to try this tool to add the teachers subject to a Google cal, will this cause some issues if i am trying to add like 2000 events

    Thanks
    Anto
    IT Director
    Overseas School of Colombo

    ReplyDelete
    Replies
    1. Hi Anto

      Thank you.

      You need to be aware of Google's Quota limitations yes: https://developers.google.com/apps-script/guides/services/quotas

      You may hit the 6 minute total runtime limit (though our Education licence allows for 30 minutes so you may be ok here depending on your setup). Otherwise it appears you can create a minimum of 5,000 events per day.

      Kind regards
      Phil

      Delete
  2. Hi Phil,

    Thank you so much for creating this content and sharing it with us.

    I was wondering if there was a way to add to this process to turn off 'Quick Access' option off when the sheet creates the google calendar events? As 'Quick Access' under the google meet settings in the google calendar event is always turned on when created.

    ReplyDelete
    Replies
    1. Hi

      Thank you for your comment.

      That's a really good question and one I've been searching about online as a result. It seems that at this current time Google is enforcing this option as 'on' by default. They've also not provided any feature/setting in their Calendar API to be able to access it and turn it 'off'. So I'm afraid my hands are tied until Google become more flexible about the setting.

      Kind regards
      Phil

      Delete
  3. Hello Phil ..
    Really great work on "Bulk create Google Calendar events with optional Google Meet" .. I need help on script I am working ..The apps script collect last 2 months events... using calendar.events .. is there a way to get meet recording url from event in apps script?

    ReplyDelete
    Replies
    1. Hi

      Thank you for the nice feedback.

      Hhhmmm that's not something I've done and nothing is jumping out at me from the Apps Script support pages either. I have done a little something on getting Event details in this post: https://www.pbainbridge.co.uk/2019/07/search-google-calendar-for-event-details.html

      But looking at the Developer website I'm not seeing anything for getting the recording URL. I've looked here at what is returned from an event: https://developers.google.com/calendar/v3/reference/events#resource and here for the Calendar App: https://developers.google.com/apps-script/reference/calendar/calendar-event

      Kind regards
      Phil

      Delete
    2. Thank you Phil for different link, there were very useful info but not much info about getting google meet recording info.

      I am able to create script which collect data about event but missing recording info. If you get chance and get more understanding about this, appreciate if you can check and prepare some sample script which can get even and google meet recording info for past google events.

      Delete
    3. Hi

      As mentioned it isn't an option from Google I'm afraid.

      Kind regards
      Phil

      Delete
    4. Very cool script!

      I was able to integrate it no problem, however when it inputs the time I selected instead of 8am it put the meeting at midnight, is the script based on a certain time zone?

      Delete
    5. Hi

      Thank you!

      No it should use the TimeZone from wherever it is being run from - what TimeZone are you in?

      Kind regards
      Phil

      Delete
  4. Phil,

    How can I use this tool to create All day events?

    ReplyDelete
    Replies
    1. Hi

      I'm sorry but this tool is not set up for that.

      In terms of Apps Script you would need to look at the 'createAllDayEvent' method: https://developers.google.com/apps-script/reference/calendar/calendar#createAllDayEvent(String,Date,Date,Object)

      Kind regards
      Phil

      Delete