Google Calendar API V3(Java)を使用して、
Googleカレンダーを作成・更新・削除する方法
についてご紹介します。
Googleカレンダーの左下にあるマイカレンダー、他のカレンダーの情報が設定できます。
APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Google Calendar API(V3)] JavaでCalendar APIを使う
を参照ください。
No | 目次 | |
---|---|---|
1 | カレンダーを作成 | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 | |
2 | カレンダーを上書き | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 | |
3 | カレンダーを更新 | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 | |
4 | カレンダーを削除 | |
1 | スコープ | |
2 | 実行 | |
3 | レスポンスの内容 |
1. カレンダーを作成
Googleカレンダーを作成します。
作成したカレンダーは「マイカレンダー」に追加されます。
1.1. スコープ
このAPIを実行するには、以下のスコープを指定してください。
CalendarScopes.CALENDAR
⧉[Google Calendar API(V3)] JavaでCalendar APIを使う(2.2 Driveインスタンスを取得)
でスコープを指定してください。
1.2. 実行
public static void main(String[] args) throws Exception{
Calendar calendar = getCalendar();
Calendar.Calendars calendars = calendar.calendars();
com.google.api.services.calendar.model.Calendar content = new com.google.api.services.calendar.model.Calendar();
content.setSummary("カレンダーのタイトル");
Calendar.Calendars.Insert insert = calendars.insert(content);
com.google.api.services.calendar.model.Calendar res = insert.execute();
System.out.println(res);
}
1.2.1. HTTPリクエスト
POST: https://www.googleapis.com/calendar/v3/calendars
が実行されます。
1.2.2. クエリパラメータ
クエリパラメータはありません。
1.2.3. リクエストボディ
Calendar(com.google.api.services.calendar.model)のsetメソッドにより、リクエストボディを追加できます。
メソッド | 引数 | 説明 |
---|---|---|
setSummary | String | 【必須】カレンダーのタイトル |
1.3. レスポンスの内容
Calendar
(com.google.api.services.calendar.model)
メソッド | 戻り値 | 説明 |
---|---|---|
getId | String | カレンダーID |
getEtag | String | Eタグ |
getKind | String | リソースの種類 固定文字列:"calendar#calendar" |
getConferenceProperties | ConferenceProperties | 会議タイプ |
getDescription | String | 説明 |
getLocation | String | カレンダーの地域 |
getSummary | String | 名前 |
getTimeZone | String | タイムゾーン |
ConferenceProperties
メソッド | 戻り値 | 説明 |
---|---|---|
getAllowedConferenceSolutionTypes | List<String> | サポートされている会議タイプ "hangoutsMeet"(http://meet.google.com)のみ "eventHangout"、"eventNamedHangout"はサポートが終了しているので取得のみ(設定不可) |
2. カレンダーを上書き
Googleカレンダーの指定したカレンダーを上書きします。
3. カレンダーを更新と違うところは、
指定した存在するカレンダーを新しいカレンダーに置き換えます。
カレンダーIDは、
1. カレンダーを作成(Calendar)のgetId()で取得した値を使います。
2.1. スコープ
このAPIを実行するには、以下のスコープを指定してください。
CalendarScopes.CALENDAR
⧉[Google Calendar API(V3)] JavaでCalendar APIを使う(2.2 Driveインスタンスを取得)
でスコープを指定してください。
2.2. 実行
public static void main(String[] args) throws Exception{
Calendar calendar = getCalendar();
Calendar.Calendars calendars = calendar.calendars();
com.google.api.services.calendar.model.Calendar content = new com.google.api.services.calendar.model.Calendar();
content.setSummary("カレンダーのタイトル");
Calendar.Calendars.Update update = calendars.update("カレンダーID",content);
com.google.api.services.calendar.model.Calendar res = update.execute();
System.out.println(res);
}
2.2.1. HTTPリクエスト
PUT: https://www.googleapis.com/calendar/v3/calendars/{カレンダーID}
が実行されます。
2.2.2. クエリパラメータ
クエリパラメータはありません。
2.2.3. リクエストボディ
Calendar(com.google.api.services.calendar.model)のsetメソッドにより、リクエストボディを追加できます。
メソッド | 引数 | 説明 |
---|---|---|
setSummary | String | 【必須】カレンダーのタイトル |
setDescription | String | カレンダーの説明 |
setLocation | String | カレンダーの地域 |
setTimeZone | String | タイムゾーン |
2.3. レスポンスの内容
Calendar
1.3. レスポンスの内容(Calendar)と同じです。
3. カレンダーを更新
Googleカレンダーの指定したカレンダーを更新します。
2. カレンダーを上書きと違うところは、
指定した存在するカレンダーを更新します。
カレンダーIDは、
1. カレンダーを作成(Calendar)のgetId()で取得した値を使います。
3.1. スコープ
このAPIを実行するには、以下のスコープを指定してください。
CalendarScopes.CALENDAR
⧉[Google Calendar API(V3)] JavaでCalendar APIを使う(2.2 Driveインスタンスを取得)
でスコープを指定してください。
3.2. 実行
public static void main(String[] args) throws Exception{
Calendar calendar = getCalendar();
Calendar.Acl acl = calendar.acl();
AclRule content = new AclRule();
content.setRole("reader");
Calendar.Acl.Patch patch = acl.patch("カレンダーID","ACLルールID",content);
AclRule res = patch.execute();
System.out.println(res);
}
3.2.1. HTTPリクエスト
PATCH: https://www.googleapis.com/calendar/v3/calendars/{カレンダーID}
が実行されます。
3.2.2. クエリパラメータ
クエリパラメータはありません。
3.2.3. リクエストボディ
Calendar(com.google.api.services.calendar.model)のsetメソッドにより、リクエストボディを追加できます。
メソッド | 引数 | 説明 |
---|---|---|
setSummary | String | カレンダーのタイトル |
setDescription | String | カレンダーの説明 |
setLocation | String | カレンダーの地域 |
setTimeZone | String | タイムゾーン |
3.3. レスポンスの内容
Calendar
1.3. レスポンスの内容(Calendar)と同じです。
4. カレンダーを削除
Googleカレンダーの指定したカレンダーを削除します。
カレンダーIDは、
1. カレンダーを作成(Calendar)のgetId()で取得した値を使います。
4.1. スコープ
このAPIを実行するには、以下のスコープを指定してください。
CalendarScopes.CALENDAR
⧉[Google Calendar API(V3)] JavaでCalendar APIを使う(2.2 Driveインスタンスを取得)
でスコープを指定してください。
4.2. 実行
public static void main(String[] args) throws Exception{
Calendar calendar = getCalendar();
Calendar.Calendars calendars = calendar.calendars();
Calendar.Calendars.Delete clear = calendars.delete("カレンダーID");
clear.execute();
}
4.2.1. HTTPリクエスト
DELETE: https://www.googleapis.com/calendar/v3/calendars/{カレンダーID}
が実行されます。
4.2.2. クエリパラメータ
クエリパラメータはありません。
4.2.3. リクエストボディ
リクエスボディはありません。
4.3. レスポンスの内容
レスポンスはありません。
削除に失敗した場合、例外が発生します。
おしまい。。