初めに
下記のように、自分のGoogleカレンダーに登録するURLを発行してくれる機能があるサイトあるかと思う。
Connpassとか...。
最近、参加者が定まってないイベントをあらかじめ共有しておき、そこから各人のカレンダーに登録してもらえたら便利だなと思っていた。
実現方法
下記のように指定のパラメータを付与したGETリクエストで実現ができ、現在(2023/07/08時点)でも使用が可能であることがわかった。
APIを使わずにGoogleカレンダーに予定を作成する
毎回URLを手動で作るのは面倒なので、WEBアプリで作成できるようにした。
アプリ
使い方
- 入力項目を埋めていく
- Generate Link! を押下する
- クリップボードにURLが自動で貼られるのでSlackなどで共有する
- ブラウザで上記URLを貼るとGoogle Calenderのイベント登録画面が開き入力した内容が自動で反映される

ソースコードは下記の通りである。
event-link-generator-for-google-calender
Raycastにも機能追加する
同様の機能をGoogleカレンダーの拡張機能
として実装し、PRを出している。
→同じようにURLが生成され登録する画面に遷移される。
技術スタック
Deno(Fresh) | バックエンド
Preactjs | フロントエンド
Tailwind CSS
Deno Deploy | デプロイ環境(サーバレス)
終わりに
だいぶ楽にイベント登録URLを作成しシェアできるようになった。
Raycastの方の拡張機能が承認・マージされたらそっちをたくさん使いそう。
※なお共有するURLは、(Gooleログインしている状態の)ブラウザで開いてもらう必要がある。
(PCはアプリから開いてもうまくいくかも)
以上。