OAuthのサンプルの動作確認までを解説した日本語の記事が少なかった(2020/06時点)ので、記事にしてみました。
[公式] Using OAuth 2.0
https://marketplace.zoom.us/docs/api-reference/using-zoom-apis#using-oauth
公式のOAuthサンプルアプリをクローン
https://github.com/zoom/zoom-oauth-sample-app
$ git clone https://github.com/zoom/zoom-oauth-sample-app.git
$ cd zoom-oauth-sample-app
ngrokの導入
ngrokとは
ローカルPC上で稼働しているネットワーク(TCP)サービスを外部公開できる便利なサービスらしいです。(例えば、ローカルPCのWebサーバを外部公開することができます)
- 以下のダウンロードサイトにて導入
https://ngrok.com/download -
ダウンロード後、以下のコマンドで起動
$ ./ngrok http 4000 -------- Session Status online Account Version Region Web Interface http://127.0.0.1:4040 Forwarding http://xxxxxxxxxxx.ngrok.io -> http://localhost:4000 Forwarding https://xxxxxxxxxxx.ngrok.io -> http://localhost:4000
Zoom OAuth Appを作成
https://marketplace.zoom.us/develop/create
-
「Create an OAuth app」画面で、以下の設定して、Createする
App Name: 任意 Choose your app type:User-maneged app を選択 Would you like to publish this app on Zoom App Marketplace?:オフ(グレーの状態)
- App Credentialsを設定する
ngrokのURLを設定する
Redirect URL for OAuth: http://xxxxxxxxxxx.ngrok.io
WhiteList URL: http://xxxxxxxxxxx.ngrok.io - Scopesを追加する
サンプルアプリでは、User情報を取得するので、以下の項目にチェックをつけておく。 「User > View your profile information」
サンプルアプリを設定
-
設定を書く.envファイルを作成。
$ touch .env $ vi .env clientID=[App CredentialsのClient ID] clientSecret=[App CredentialsのClient Secret] redirectURL=https://xxxxxxxxxxx.ngrok.io
-
起動
$ yarn start
-
認証画面が開くので認証許可すると、ターミナル上にログインした認証情報が表示される
access_token: refresh_token: API call { id: first_name: last_name: email: type: role_name: pmi: use_pmi: personal_meeting_url: timezone: verified: dept: created_at: last_login_time: last_client_version: pic_url: host_key: jid: group_ids: im_group_ids: account_id: language: phone_country: phone_number: status: }