今日からGoogleカレンダーで使えるGASのコード一覧

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る
icon_for_CalendarApp

CalendarAppの概要

CalendarAppとは、Google Apps Scriptでカレンダーの操作を行う際に利用するコードのことですが、CalendarAppに用意されているメソッドでは、次のような操作がプログラム上で実行できます。

  • 既存予定から情報取得
  • 新規カレンダーの作成
  • 既存予定の修正
  • 既存予定の削除

特に指定をしなければ、実行者のデフォルトカレンダーに対して操作を行いますが、追加したカレンダーに対しても同じようにプログラムから読み書きができます。

クラス名一覧

CalendarApp Calendar CalendarEvent CalendarEventSeries
EventGuest GuestStatus EventRecurrence RecurrenceRule

※クリックすると対象場所にジャンプします

列挙型一覧

 Color  EventColor
 GuestStatus  Visibility

※クリックすると対象場所にジャンプします

クラス別メソッド名一覧

Class CalendarApp

 メソッド名  返り値  簡単な説明
 createAllDayEvent  CalendarEvent  終日予定を作成
 createAllDayEventSeries  CalendarEventSeries  定期開催の終日予定を作成
 createCalendar  Calendar  新しくカレンダーを作成
 createEvent  CalendarEvent  新しく予定を作成
 createEventFromDescription  CalendarEvent  文章から判断して新しい予定を作成
 createEventSeries  CalendarEventSeries  定期開催される予定を作成
 getAllCalendars  Calendar[]  表示できるすべてのカレンダーを配列で取得
 getAllOwnedCalendars  Calendar[]  自分がオーナーのすべてのカレンダーを配列で取得
 getCalendarById  Calendar  一意のIDにより特定のカレンダーの取得
 getCalendarsByName  Calendar[]  指定したタイトルにマッチするすべての予定を配列で取得
 getColor  String  カレンダーの設定色を取得
 getDefaultCalendar  Calendar  デフォルトカレンダーを取得
 getDescription  String  カレンダーの説明内容を取得
 getEventById  CalendarEvent  IDにマッチする予定を取得
 getEventSeriesById  CalendarEventSeries  IDにマッチする定期開催予定を取得
 getEvents  CalendarEvent[]  条件の日時にマッチするすべての予定を配列で取得
 getEventsForDay  CalendarEvent[]  指定日のすべての予定を配列で取得
 getId  String  カレンダーのIDを取得
 getName  String  カレンダー名を取得
 getOwnedCalendarById  Calendar  自分がオーナーのカレンダーを一意のIDで取得
 getOwnedCalendarsByName  Calendar[]  指定したカレンダー名にマッチするすべてのカレンダーを配列で取得
 getTimeZone  String  カレンダーのタイムゾーンを取得
 isHidden  Boolean  UI上でカレンダーの表示/非表示を真偽値で取得
 isMyPrimaryCalendar  Boolean  カレンダーがデフォルトに設定されているかどうか真偽値で取得
 isOwnedByMe  Boolean  カレンダーのオーナーが自分かどうか真偽値で取得
 isSelected  Boolean  UI上で予定の表示/非表示を真偽値で取得
 newRecurrence  EventRecurrence  定期開催用のルールを作成
 setColor  Calendar  カレンダーの色を設定
 setDescription  Calendar  カレンダーの説明内容を設定
 setHidden  Calendar  UI上でカレンダー表示/非表示に設定
 setName  Calendar  カレンダー名を設定
 setSelected  Calendar  UI上で予定の表示/非表示を設定
 setTimeZone  Calendar  カレンダーのタイムゾーンを設定
 subscribeToCalendar  Calendar  新しいカレンダーを自分のカレンダーに追加

Class Calendar

メソッド名  返り値  簡単な説明
 createAllDayEvent  CalendarEvent  終日予定を作成
 createAllDayEventSeries  CalendarEventSeries  定期開催の終日予定を作成
 createEvent  CalendarEvent 新しく予定を作成
 createEventFromDescription  CalendarEvent  文章から判断して新しい予定を作成
 createEventSeries  CalendarEventSeries  定期開催される予定を作成
 deleteCalendar  Void  カレンダーを完全に削除
 getColor  String  カレンダーの設定色を取得
 getDescription  String  カレンダーの説明内容を取得
 getEventById  CalendarEvent  IDにマッチする予定を取得
 getEventSeriesById  CalendarEventSeries  IDにマッチする定期開催予定を取得
 getEvents  CalendarEvent[]  条件の日時にマッチするすべての予定を配列で取得
 getEventsForDay  CalendarEvent[]  指定日のすべての予定を配列で取得
 getId  String  カレンダーのIDを取得
 getName  String  カレンダー名を取得
 getTimeZone  String  カレンダーのタイムゾーンを取得
 isHidden  Boolean  ユーザーのUI上で非表示になっているかどうか真偽値で取得
 isPrimaryCalendar  Boolean  カレンダーがデフォルトに設定されているかどうか真偽値で取得
 isOwnedByMe  Boolean  カレンダーのオーナーが自分かどうか真偽値で取得
 isSelected  Boolean  ユーザーのUI上で表示されているか真偽値で取得
 setColor  Calendar  カレンダーの色を設定
 setDescription  Calendar  カレンダーの説明内容を設定
 setHidden  Calendar  ユーザーのUI上で非表示に設定
 setName  Calendar  カレンダー名を設定
 setSelected  Calendar  ユーザーのUI上で非表示を解除
 setTimeZone  Calendar  カレンダーのタイムゾーンを設定
 unsubscribeFromCalendar  Void  カレンダーの共有を解除

Class CalendarEvent

 メソッド名  返り値  簡単な説明
 addEmailReminder  CalendarEvent  メールリマインダーを設定
 addGuest  CalendarEvent  予定にゲストを追加
 addPopupReminder  CalendarEvent  ポップアップリマインダーを設定
 addSmsReminder  CalendarEvent  SMSリマインダーを設定
 anyoneCanAddSelf  Boolean  自分を予定に参加させることができるかどうかを真偽値で確認
 deleteEvent  Void  予定を削除
 deleteTag  CalendarEvent  予定からタグを削除
 getAllDayEndDate  Date  終日予定が終了する日を取得
 getAllDayStartDate  Date  終日予定が開始する日を取得
 getAllTagKeys  String[]  予定のタグに設定したキーを配列で取得
 getColor  String  予定の設定色を取得
 getCreators  String[]  予定のすべての作成者を配列で取得
 getDateCreated  Date  予定の作成日を取得
 getDescription  String  予定の説明内容を取得
 getEmailReminders  Integer[]  予定のメールリマインダーの分数を配列で取得
 getEndTime  Date  予定の終了時間を取得
 getEventSeries  CalendarEventSeries  予定に関連する定期開催予定を取得
 getGuestByEmail  EventGuest  Eメールアドレスを指定して予定のゲストを取得
 getGuestList  EventGuest[]  予定のオーナーを除くすべてのゲストを配列で取得
 getId  String  予定のIDを取得
 getLastUpdated  Date  予定の最終更新日時を取得
 getLocation  String  予定の場所を取得
 getMyStatus  GuestStatus  対象予定に対する自分の関係性を取得
 getOriginalCalendarId  String  予定が属するカレンダーのIDを取得
 getPopupReminders  Integer[]  予定のすべてのポップアップリマインダーの分数を配列で取得
 getSmsReminders  Integer[]  予定のすべてのSMSリマインダーの分数を配列で取得
 getStartTime  Date  予定の開始時間を取得
 getTag  String  予定のタグの値を取得
 getTitle  String  予定のタイトルを取得
 getVisibility  Visibility  予定の公開設定を取得
guestsCanInviteOthers  Boolean  ゲストの他のユーザー招待権限有無を真偽値で取得
 guestsCanModify  Boolean   ゲストの予定編集権限有無を真偽値で取得
 guestsCanSeeGuests  Boolean  ゲストのゲストリスト表示権限有無を真偽値で取得
 isAllDayEvent  Boolean  予定が終日予定かどうかを真偽値で取得
 isOwnedByMe  Boolean  予定のオーナーが自分かどうかを真偽値で取得
 isRecurringEvent  Boolean  予定が定期開催予定かどうかを真偽値で取得
 removeAllReminders  CalendarEvent  予定のすべてのリマインダーを削除
 removeGuest  CalendarEvent  予定のゲストを削除
 resetRemindersToDefault  CalendarEvent  予定のリマインダーをデフォルトにリセット
 setAllDayDate  CalendarEvent  終日予定の日付を設定
 setAlDayDates  CalendarEvent  2日以上の終日予定の日付を設定
 setAnyoneCanAddSelf  CalendarEvent  予定の参加権限を設定
 setColor  CalendarEvent  予定の色を設定
 setDescription  CalendarEvent  予定の説明内容を設定
 setGuestsCanInviteOthers  CalendarEvent  ゲストの招待権限を設定
 setGuestsCanModify  CalendarEvent  ゲストの編集権限設定
 setGuestsCanSeeGuests  CalendarEvent  ゲストの他のゲスト閲覧権限を設定
 setLocation  CalendarEvent  予定の場所を設定
 setMyStatus  CalendarEvent  予定の参加状況を設定
 setTag  CalendarEvent  予定にタグを設定
 setTime  CalendarEvent  予定の開始終了日時を設定
 setTitle  CalendarEvent  予定のタイトルを設定
 setVisibility  CalendarEvent  予定の公開設定を設定

Class CalendarEventSeries

 メソッド名  返り値  簡単な説明
 addEmailReminder  CalendarEventSeries  メールリマインダーを設定
 addGuest  CalendarEventSeries  予定にゲストを追加
 addPopupReminder  CalendarEventSeries  ポップアップリマインダーを設定
 addSmsReminder  CalendarEventSeries  SMSリマインダーを設定
 anyoneCanAddSelf  Boolean  自分を予定に参加させることができるかどうかを真偽値で確認
 deleteEventSeries  Void  定期開催予定を削除
 deleteTag  CalendarEventSeries  予定からタグを削除
 getAllTagKeys  String[]  予定のタグに設定したキーを配列で取得
 getColor  String  予定の設定色を取得
 getCreators  String[]  予定のすべての作成者を配列で取得
 getDateCreated  Date  予定の作成日を取得
 getDescription  String  予定の説明内容を取得
 getEmailReminders  Integer[]  予定のメールリマインダーの分数を配列で取得
 getGuestByEmail  EventGuest  Eメールアドレスを指定して予定のゲストを取得
 getGuestList  EventGuest[]  予定のオーナーを除くすべてのゲストを配列で取得
 getId  String  予定のIDを取得
 getLastUpdated  Date  予定の最終更新日時を取得
 getLocation  String  予定の場所を取得
 getMyStatus  GuestStatus  予定に対する参加有無を取得
 getOriginalCalendarId  String  予定が最初に作成されたカレンダーIDを取得
 getPopupReminders  Integer[]  予定のすべてのポップアップリマインダーの分数を配列で取得
 getSmsReminders  Integer[]  予定のすべてのSMSリマインダーの分数を配列で取得
 getTag  String  予定のタグの値を取得
 getTitle  String  予定のタイトルを取得
 getVisibility  Visibility  予定の公開設定を取得
 guestCanInviteOthers  Boolean  ゲストの他のユーザー招待権限有無を真偽値で取得
 guestCanModify  Boolean  ゲストの予定編集権限有無を真偽値で取得
 guestCanSeeGuests  Boolean  ゲストのゲストリスト表示権限有無を真偽値で取得
 isOwnedByMe  Boolean  予定のオーナーが自分かどうかを真偽値で取得
 removeAllReminders  CalendarEventSeries  予定のすべてのリマインダーを削除
 removeGuest  CalendarEventSeries  予定のゲストを削除
 resetRemindersToDefault  CalendarEventSeries  予定のリマインダーをデフォルトにリセット
 setAnyoneCanAddSelf  CalendarEventSeries  予定の参加権限を設定
 setColor  CalendarEventSeries  予定の色を設定
 setDescription  CalendarEventSeries  予定の説明内容を設定
 setGuestsCanInviteOthers  CalendarEventSeries   ゲストの招待権限を設定
 setGuestsCanModify  CalendarEventSeries  ゲストの編集権限設定
 setGuestsCanSeeGuests  CalendarEventSeries  ゲストの他のゲスト閲覧権限を設定
 setLocation  CalendarEventSeries  予定の場所を設定
 setMyStutas  CalendarEventSeries  予定の参加状況を設定
 setRecurrence  CalendarEventSeries  予定に繰り返しルールを設定
 setTag  CalendarEventSeries  予定にタグを設定
 setTitle  CalendarEventSeries  予定のタイトルを設定
 setVisibility  CalendarEventSeries  予定の公開設定を設定

Class EventGuest

 メソッド名  返り値  簡単な説明
 getAdditionalGuests  Integer  参加予定のゲストの人数を取得
 getEmail  String  ゲストのメールアドレスを取得
 getGuestStatus  GuestStatus  予定の参加不参加を取得
 getName  String  ゲストの名前を取得

Class EventRecurrence

 メソッド名  返り値  簡単な説明
 addDailyExclusion  RecurrenceRule  毎日開催予定に除外日を設定
 addDailyRule  RecurrenceRule  毎日繰り返すルールを設定
 addDate  EventRecurrence  特定の日付に繰り返すルールを設定
 addDateExclusion  EventRecurrence  繰り返し予定から特定の日付を除く
 addMonthlyExclusion  RecurrenceRule  月間ルールに除外日を設定
 addMonthlyRule  RecurrenceRule  毎月繰り返すルールを設定
 addWeeklyExclusion  RecurrenceRule  週間ルールに除外日を設定
 addWeeklyRule  RecurrenceRule  週間ルールを設定
 addYearlyExclusion  RecurrenceRule  年間ルールに除外日を設定
 addYearlyRule  RecurrenceRule  年間ルールを設定
 setTimeZone  EventRecurrence  繰り返し予定にタイムゾーンを設定

Class RecurrenceRule

 メソッド名  返り値  簡単な説明
 addDailyExclusion  RecurrenceRule  毎日開催予定に除外日を設定
 addDailyRule  RecurrenceRule  毎日繰り返すルールを設定
 addDate  EventRecurrence  特定の日付に繰り返すルールを設定
 addDateExclusion  EventRecurrence  繰り返し予定から特定の日付を除く
 addMonthlyExclusion  RecurrenceRule  月間ルールに除外日を設定
 addMonthlyRule  RecurrenceRule  毎月繰り返すルールを設定
 addWeeklyExclusion  RecurrenceRule  週間ルールに除外日を設定
 addWeeklyRule  RecurrenceRule  週間ルールを設定
 addYearlyExclusion  RecurrenceRule  年間ルールに除外日を設定
 addYearlyRule  RecurrenceRule  年間ルールを設定
 interval  RecurrenceRule  繰り返し予定の間隔を設定
 onlyInMonth  RecurrenceRule  指定月にのみ繰り返しルールを適用
 onlyInMonths  RecurrenceRule  複数の指定月にのみ繰り返しルールを適用
 onlyOnMonthDay  RecurrenceRule  指定日にのみ繰り返すルールを適用
 onlyOnMonthDays  RecurrenceRule  複数の指定日にのみ繰り返すルールを適用
 onlyOnWeek  RecurrenceRule  指定週に毎年繰り返すルールを適用
 onlyOnWeekday  RecurrenceRule  指定の曜日に毎週繰り返すルールを適用
 onlyOnWeekdays  RecurrenceRule  複数の指定の曜日にのみ毎週繰り返すルールを適用
 onlyOnWeeks  RecurrenceRule  複数の指定週に毎年繰り返すルールを適用
 onlyOnYearDay  RecurrenceRule  指定日に毎年繰り返すルールを適用
 onlyOnYearDays  RecurrenceRule  複数の指定日に毎年繰り返すルールを適用
 setTimeZone  EventRecurrence  繰り返しルールにタイムゾーンを設定
 times  RecurrenceRule  繰り返し回数を設定
 until  RecurrenceRule  指定日まで繰り返すルールを適用
 weekStartsOn  RecurrenceRule  1週間のスタート曜日を設定

列挙型名一覧

Enums Color

 プロパティ  タイプ  色サンプル
 BLUE  Enum  ◆ Blue (#2952A3)
 BROWN  Enum   Brown (#8D6F47)
 CHARCOAL  Enum   Charcoal (#4E5D6C)
 CHESTNUT  Enum   Chestnut (#865A5A)
 GRAY  Enum   Gray (#5A6986)
 GREEN  Enum   Green (#0D7813)
 INDIGO  Enum   Indigo (#5229A3)
 LIME  Enum   Lime (#528800)
 MUSTARD  Enum   Mustard (#88880E)
 OLIVE  Enum   Olive (#6E6E41)
 ORANGE  Enum   Orange (#BE6D00)
 PINK  Enum   Pink (#B1365F)
 PLUM  Enum   Plum (#705770)
 PURPLE  Enum   Purple (#7A367A)
 RED  Enum   Red (#A32929)
 RED_ORANGE  Enum   Red-Orange (#B1440E)
 SEA_BLUE  Enum   Sea-Blue (#29527A)
 SLATE  Enum   Slate (#4A716C)
 TEAL  Enum   Teal (#28754E)
 TURQOISE  Enum   Turqoise (#1B887A)
 YELLOW  Enum   Yellow (#AB8B00)

Enums EventColor

 プロパティ  タイプ  色サンプル
 PALE_BLUE  Enum   Pale Blue (“1”)
 PALE_GREEN  Enum   Pale Green (“2”)
 MAUVE  Enum   Mauve (“3”)
 PALE_RED  Enum   Pale Red (“4”)
 YELLOW  Enum   Yellow (“5”)
 ORANGE  Enum   Orange (“6”)
 CYAN  Enum   Cyan (“7”)
 GRAY  Enum   Gray (“8”)
 BLUE  Enum   Blue (“9”)
 GREEN  Enum   Green (“10”)
 RED  Enum   Red (“11”)

Enums GuestStatus

 プロパティ  タイプ  説明
 INVITED  Enum  招待済
 MAYBE  Enum  未定
 NO  Enum  不参加
 OWNER  Enum  オーナー
 YES  Enum  参加

Enums Visibility

 プロパティ  タイプ  説明
 CONFIDENTIAL  Enum  自分のみ閲覧可(互換性を保つための値)
 DEFAULT  Enum  カレンダーの表示設定に依存
 PRIVATE  Enum  自分のみ閲覧可
 PUBLIC  Enum  誰でも閲覧可

SNSでもご購読できます。

コメント

  1. ドライモン より:

    スペルミスです。

    removeAllReminders()
    が正しいです。

    1. admin より:

      ご指摘ありがとうございます。
      ご指摘いただいたとおりスペルミスがありましたので修正しました。

  2. gasはじめました より:

    PythonでGoogle Calendarを使ったWebアプリをチーム向けに作ろうとしたのですが、APIの登録などサービスにする際、デベロッパーでないチームメンバーに難しすぎたためGASを始めました。
    Google App Scriptを始めたばかりですが、あまりまとめてくれているサイトが無かったのでとても助かりました。
    コメントを残すのは、初めてですが、このサイトに感動したため書いてしまいました笑。
    これからも参考にさせていただきます。

    1. admin より:

      コメントありがとうございます!
      始めたばかりは色々わからないこともあると思いますが、継続することが力になりますのでモチベーションをうまく保って頑張ってください!

      ホントはもっとコンテンツを充実させたいのですが多忙にかまけて更新をおろそかにしてます。
      もし使い方のわからないコードがあれば質問してもらえば優先的に記事書きますのでぜひコメント下さい!

      よろしくお願いします。

コメントを残す

*