Search code examples
javascriptgoogle-apps-scriptgoogle-calendar-api

Deleting Events with Google Calendar API


Reference: https://developers.google.com/calendar/v3/reference/events/delete

Errors: Missing name after . operator. (line 131, file "Code")

function deleteEvent() {

  for (var i = 1; i < datalastRow; i++) {

    var calendarId = sheet.getRange('E2').getValue();

    var delete_eventid = sheet.getRange(i + 1, 3).getValue()

      var params = {
        calendarId: calendarId,
        eventId: delete_eventid,
      };

      calendar.events.delete(params, function(err) {
        if (err) {
          console.log('The API returned an error: ' + err);
          return;
        }
        console.log('Event deleted.');
      });

  }

}

Basically the line calendar.events.delete(params, function(err)) { is throwing an error when I attempt to save the code, I am unsure why this is happening as I can run calendar.events.insert and create events just fine, but it appears to not like calendar.events.delete.

Edit: I removed the extra ")" as referenced in the first answer


Solution

  • If you use Google Apps Script, how about this? You can delete events by deleteEvent(). deleteEvent() returns void. So I used try-catch for this.

    function deleteEvent() {
      var calendarId = sheet.getRange('E2').getValue();
      for (var i = 1; i < datalastRow; i++) {
        var delete_eventid = sheet.getRange(i + 1, 3).getValue();
        try {
          CalendarApp.getCalendarById(calendarId).getEventById(delete_eventid).deleteEvent();
        } catch(e) {
          console.error("Error deleting event " + delete_eventid + " from calendar " + calendarId + ". Error: " + e);
        }
      }
    }