google calendar apiをspatie / laravel-google-calendarパッケージで利用方法
予定の管理に使用している方も多いかもしれないGoogle calendar!!
今回はlaravelでGoogle calendar apiを利用する方法を書いていきます。
spatie/laravel-google-calendarというパッケージを利用します。
すごく便利なパッケージなのに環境構築方法が大変だったのでlaravelでGoolge calendar apiを利用したい方の助けになれば幸いです。
環境
laravel 8.x
前提条件
Google アカウントを持っている
laravelプロジェクトは作成済み
主な流れ
- google cloud platformにログインしてGoogle calendar apiを有効化、サービスアカウントを作る
- google calendarの設定
- laravelでspatie/laravel-google-calendarをインストールして設定する
google cloud platformの設定
1.google cloud platformにログインする
- お持ちのgoogle アカウントが必要です。
2.ナビゲーションメニューを開く。(左上の3本線をクリックする)
- ナビゲーションメニュー内の「apiとサービス」という項目からライブラリをクリック
3.goolge calendar api を選択して有効化をクリック
4.サービスアカウントを作成する
- 左側にある認証情報をクリック。上部にある認証情報の作成をクリックしてサービスアカウントを選択する
- サービスアカウント名を付ける。サービスアカウントが自動的に生成される。サービスアカウントの説明は省略可
- このサービス アカウントにプロジェクトへのアクセスを許可する のは省略可
- ユーザーにこのサービス アカウントへのアクセスを許可は省略可
5.サービスアカウントのキーを作成する
- 作成されたサービスアカウントを選択
- キーという項目を選択
- 鍵の追加を選択し新しい鍵を作成
- Jsonが選択されている事を確認して作成
- フィル名をservice-account-credentials.jsonに変更
サービスアカウントで作成されたメールアドレスはgoogle calendarで必要になります。
以上でgoogle cloud platform側の設定
google calendarの設定
1.google calendarを開いて設定メニューを開く
2.カレンダー追加から新しいカレンダー作成を選択
3.名前、説明欄を記入して作成
4.特定のユーザーとの共有の項目でユーザを追加を選択してgoogle cloud platformで作成したメールアドレスを入れて必要な権限を選択
5.下部にあるカレンダーの統合の項目からカレンダーIDを確認する
以上でgoogle calendar側の設定
laravel側の設定
https://github.com/spatie/laravel-google-calendarの記載通り作成する。
英語ですがクロムの翻訳機能を使えば理解できます。
気を付けなければいけないのはフォルダーの名前や配置場所です!!
必ず指定の方法でやってください。
以上
デフォルトのgoogle calendar apiは記述量も多いですが、こちらのパッケージを利用できればコードが簡潔でやりたい事がすぐにできてとても便利でした!
作成日:2021-04-28
更新日:2021-04-28