退職済みユーザーが登録したGoogleカレンダーを削除する方法
*注意事項
2022.06.23 現在
退職済みユーザーに対して実行すると404エラーが返ってくるという情報を頂きました。APIの仕様が変更になったかもしれません。
Googleカレンダーを利用している企業さんなら直面する可能性のある問題。
「退職済み(削除したユーザー)が登録したGoogleカレンダーの扱い」
同じ苦労をする方をなるべく減らすためにnoteに記載しておきます。
非常に丁寧にサポートいただきましたGoogle Workspace Supportの方々に感謝致します。
*単発と、繰り返しの予定では扱いが若干異なります
繰り返しの予定については後述します
対応方法
手順は3つ。
(前提)特権管理者の権限が必要となります
(1)「トラブルシューティング情報」から必要な情報を取得
・「トラブルシューティング情報」が取得できるパラメータを付与します
・「eventdeb=1」のついたURLでカレンダーを開く
・URL:https://calendar.google.com/calendar/render?eventdeb=1
・対象スケジュールの「オプション」から「トラブルシューティング情報」を取得
・情報(長い文字列)から対象「calendarId」と「eventId」を取得
・ [organizer=xxxx]が後述の「calendarId」
・「eid=xxxx」が 後述の「eventId」
(2)対象カレンダー情報が取得できるか確認(念の為)
・「Calendar API Events:get」を利用
・https://developers.google.com/calendar/api/v3/reference/events/get
・画面右側の「Try this API」の「calendarId」「eventId」を入力
・手順(1)で取得した情報を利用
・「calendarId」は「organizer=xxxx」
・だいたいはメールアドレスです
・「eventId」は「eid=xxxx」
・数字と英字小文字の文字列
・「Try this API」へ上記情報を入力し「EXECUTE」を押す
・API実行の許可を求めるダイアログが出るのでそのまま進めます
・実行結果に「200番台」のステータスが表示されます
・取得できた情報が対象となるカレンダー情報か確認し手順(3)へ
(3)対象のカレンダーを削除
・「Calendar API Events: delete」を利用
・手順(2)で対象のカレンダー情報が確認できていれば、同じ情報を利用してdeleteのAPIを利用します
・https://developers.google.com/calendar/api/v3/reference/events/delete
・手順(2)同様に「calendarId」「eventId」を入力して実行
・対象のスケジュールが削除されているはずです
以上で対象のカレンダー、スケジュールが削除できているかと思います。
不都合があれば、気軽にご相談ください。
繰り返しの予定を削除する場合
今回ご紹介した方法で「繰り返しで登録されている予定」を削除する場合は、「eventId」の扱いが少し異なります。
下記が「トラブルシューティング情報」を表示したところです。
「eventId」として利用する「eid」ですが、繰り返しの予定の場合は
「数字と英字小文字の文字列」が「_(アンダーバー)」でつながっています。
アンダーバー以降の文字列まで利用すると、繰り返し予定の「1つずつの予定」を指定できます。
全体を扱う場合は「アンダーバーより左側の文字列」を利用して操作してください。
退職済みユーザーのGoogleカレンダー削除について
▼ユーザーの退職等でGoogleWorkspaceのアカウントを削除する場合
・ユーザーのアカウントを停止または削除すると、予定を管理する主催者がいなくなります。
・主催者がいなくても予定は他のユーザーのカレンダーに表示され、その時間に関連付けられたリソースは誰も予約できなくなります。
引用:https://support.google.com/a/answer/7399420?hl=ja
GoogleWorkspaceでは、ユーザーを削除する前にスケジュールのオーナー変更やカレンダーの譲渡を行わないといけません。
ユーザーが完全に削除された後、譲渡しなかったカレンダーは主催者が不在のカレンダーとして残り続け、扱いに苦労する事となります。
上記の場合、管理画面から変更する事は困難となり、今回ご紹介している「トラブルシューティング」情報から必要情報を取得し、API経由で操作する事となります。
削除だけではなく、オーナーの譲渡やカレンダー内容の編集も実行できるようです。(自分は未検証)
▼自分が直面した課題
削除済みユーザーが登録した「予定A」が残っていた。
「予定A」は古い会議なので削除したいが、削除できない状態。
登録されている全員に個別に削除してもらう方法もあるが、「グループA」は100名以上存在し、削除してもらうのは非現実的であった。
また、「社員C」が「グループA」に登録されると、「予定A」も自動で登録されるため、今後の混乱を避けるために「予定A」は削除したかった。
今回ご紹介した方法でなんとか削除できたのですが、皆さんもこのような事象に直面してないでしょうか。
今回の件は、「知ってるか」「知らないか」だけのTipsのようなものなので、こういったノウハウが同じ情報システム関係者へ広く広がれば良いなと思っております。
もし、今回の記事について間違いや、不明点などご指摘事項がありましたら、ツイッターの「なーねこ」宛にDM頂ければ幸いです。
お知らせ
この用なノウハウの共有、各社に数名ずつしか存在しない「情報システム」「コーポレートエンジニア」の交流場所を運営しております。
よかったら覗いてみてください。