[Google Calendar API]とりあえずの使い方
Google Calendar API とは?
Googleのサイトより参照。
Google Calendar API は RESTful API で、明示的な HTTP 呼び出しまたは Google クライアント ライブラリを使用してアクセスできます。この API は、Google カレンダーのウェブ インターフェースで利用できる機能のほとんどを公開します。https://developers.google.com/calendar/api/guides/overview?hl=ja
まあその名の通り、GoogleカレンダーについてのあれこれができるAPI。
公式にクイックスタートのリファレンスがある言語は以下になる。
- JS/TS
- Go
- Google Apps Script(GAS)
- Java
- Node.js
- Python
今回はGoでGoogleカレンダーAPIを使いたいので、Goでやっていく。
Google Calendar APIは無料みたいなので、お財布にやさし!
APIをつかってみよ!
※ここはどの言語でも共通の手順です
基本クイックスタートにある手順通りにすればOK!
https://developers.google.com/calendar/api/quickstart/go?hl=ja
APIを有効化する
「次へ」をクリック
「APIアクセスの有効化」をクリック
OAuth 2.0 クライアント IDを作成
まずはOAuthに使用するアプリを作りましょう。
特に悩むことなく、アプリ名とアドレス入力し、作成します。
アプリの作成が完了すると、サイドバーの「クライアント」からクライアントを登録できるようになります。
ここから「クライアントの作成」に進みましょう!
「アプリケーションの種類」は適宜選択してください。今回はCLIを作るために使用するため、デスクトップアプリを選択します。
クライアントができました!
そうしたら、作成したクライアントIDの「名前」をクリックし、「クライアントシークレット」をダウンロードボタンからファイルダウンロードして保存しておきましょう。
ファイル名はcredentials.json
にしておいてください。
(この辺公式リファレンスすごくわかりにくく書いてあって不親切なので注意)
動作確認をしてみる
これは公式リファレンスに沿ってやればOKです、
投稿主の場合はGoで実装したので、Goでの動作確認を行いました。
https://developers.google.com/calendar/api/quickstart/go?hl=ja#prepare_the_workspace
通った!とおもったら、
Go to the following link in your browser then type the authorization code:
という文言が、、
内容のとおり認証するために対象のURLにアクセスしてみると、、
なぜだ!!審査プロセス??
ということでGCPのコンソールをいろいろみてみるとあった。
「対象」の画面をみるとデプロイされておらず「テスト中」になっていた。
なので、「アプリの公開」からデプロイして解決!
使ってみて
使いにくい点として、毎回ブラウザで認証画面にリダイレクトしなければならないという点があった。APIキーがあればアクセスできれば簡単なのだが、ちょっとめんどくさい。。
このAPIを使ってGoogleCalendorのCLIを作ります。
Discussion