Google Apps ScriptでYouTube APIのエラー「You do not have permission to call youtube.videos.list」の解決方法

クラウドサービス

Google Apps Script (GAS) で YouTube API を利用して動画の投稿日を取得する際に発生する「You do not have permission to call youtube.videos.list」エラーに対する解決方法を解説します。この記事では、エラーメッセージの原因とその対処方法を順を追って説明します。

エラー「You do not have permission to call youtube.videos.list」の原因

このエラーメッセージは、Google Apps Script で YouTube Data API を使用する際、必要な認証スコープ(OAuth スコープ)が正しく設定されていない場合に発生します。YouTube Data API を利用するには、適切なアクセス権限が必要です。具体的には、動画情報を取得するためには「https://www.googleapis.com/auth/youtube.readonly」などの認証スコープが必要となります。

解決方法:認証スコープを設定する

問題を解決するには、まずスクリプトプロジェクトの認証スコープを確認し、必要なスコープを追加する必要があります。下記の手順で設定を行います。

  • Google Apps Script エディタを開きます。
  • 「リソース」メニューから「Google Cloud Platform プロジェクト」を選択します。
  • 「APIとサービス」セクションで、YouTube Data API v3を有効にします。
  • プロジェクトに適切なOAuthスコープ(例:https://www.googleapis.com/auth/youtube.readonly)を追加します。
  • appsscript.json に設定されたスコープが正しいことを確認します。

解決方法:認証プロセスの確認

認証スコープが追加された後、GAS スクリプトを再実行する際に、再度認証プロセスを完了させる必要があります。スクリプトの実行時に認証のポップアップが表示されるので、それに従い許可を与えてください。これにより、APIへのアクセスが正常に動作します。

また、認証に失敗した場合や変更が反映されない場合は、スクリプトエディタの「リソース」→「Google Cloud Platform プロジェクト」の設定を再確認してみてください。

まとめ

「You do not have permission to call youtube.videos.list」のエラーは、YouTube Data API を利用するための適切な認証スコープが設定されていない場合に発生します。解決方法として、認証スコープを正しく設定し、認証プロセスを再度実行することが必要です。これにより、APIにアクセスできるようになり、動画の情報を正しく取得できるようになります。

コメント

タイトルとURLをコピーしました