Google Calendar: Delete Event

Google カレンダー: 予定削除

This item deletes an event on Google Calendar.

Auto Step icon
Basic Configs
Step Name
Note
Configs for this Auto Step
conf_User
C1: User connects to Google Calendar (must be App Administrator) *
conf_CalendarId
C2: Calendar ID (Primary Calendar if blank)
conf_EventId
C3: Event ID *

Notes

  • Users in C1 need to have a configured connection with Google Calendar in [Account Settings] > [Google Connectivity]
    • Google Workspace Connectivity ([System Settings] > [Google Connectivity]) must be enabled on the workflow platform ([System Administrator Authorization] required)
  • Refer to the following page for Calendar ID. [Calendar Settings] > [Calendar Address]
  • Event ID can’t be found in the Calendar Page. You should use one from a task such as Start: Google Calendar: Event Started

Capture

See also

Script (click to open)
  • An XML file that contains the code below is available to download
    • google-calendar-event-delete.xml (C) Questetra, Inc. (MIT License)
    • If you are using Professional, you can modify the contents of this file and use it as your own add-on auto step

main();
function main() {
    //// == 工程コンフィグの参照 / Config Retrieving ==
    const quser = configs.getObject("conf_User");
    if (quser === null) {
        throw `User not found.`;
    }
    let calendarId = configs.get("conf_CalendarId");
    if (calendarId === "" || calendarId === null) {
        calendarId = "primary";
    }
    const eventId = engine.findData(configs.getObject("conf_EventId"));
    if (eventId === "" || eventId === null) {
        throw "Event ID isn't set.";
    }

    //// == 演算 / Calculating ==
    if (calendarId.search(/^[\w\-_.!*'@]+$/) === -1) {
        throw "Invalid Calendar ID.";
    }
    deleteEvent(quser, calendarId, eventId);
}
/**
 * Google カレンダーの予定を削除する
 * @param {QuserView} quser ユーザー
 * @param {String} calendarId カレンダーID
 * @param {String} eventId 予定ID
 */
function deleteEvent(quser, calendarId, eventId) {
    const uri = `https://www.googleapis.com/calendar/v3/calendars/${calendarId}/events/${eventId}`;

    const response = httpClient.begin()
        .googleOAuth2(quser, "Calendar")
        .delete(uri);

    const status = response.getStatusCode();
    const responseStr = response.getResponseAsString();
    engine.log(`Event ID: ${eventId}`);

    if (status >= 300) {
        engine.log(responseStr);
        throw `Failed to delete. status:${status}`;
    }

    engine.log("Succeeded to delete.");
}
%d bloggers like this: