問題タブ [youtube-analytics-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
youtube-api - YouTube API - Google 管理者アカウントを使用して、複数の YouTube チャンネル (ブランド アカウント) にアクセスします
YouTube Analytics と Reporting API を使用して動画から情報を抽出する必要があります。
Google アカウントで YouTube にログインすると、複数の YouTube ブランド アカウントにアクセスできます。
API をテストするために「試してみる」を使用すると、チャネルのデータを取得できるのは、このチャネルが属するブランド アカウントに切り替えた場合のみです。それ以外の場合は、403 - 許可されていないエラーが発生します。
ログインに使用している Google アカウントを使用してデータを抽出する方法はありますか? 開発者コンソールで認証情報を作成すると、それらはブランド アカウントではなく Google アカウントに関連付けられるためです。
私の Google アカウントには、ブランド アカウントの管理者の役割があります。
リクエストで使用するonBehalfOfContentOwnerフィールドを検索しましたが、この ID を取得する方法がわかりません。また、ブランド アカウントについて話しているため、これが私の状況に当てはまるかどうかもわかりません。間違っていたら私。
youtube - Youtube API - 一定期間、特定のチャンネルでトレンド ビデオを取得する
今日、私はYoutube分析APIに要件があります。特定のチャンネルでトレンド/人気の動画を取得したい場合、チャンネルのAPIキーがあります。チャンネルで人気の動画を取得するための API 呼び出しはありますか?
javascript - ユーザーではなくブランドとして認証された場合の Youtube アナリティクスのオフライン アクセス リクエスト
Apps Script が Youtube の API でオフライン許可を求め続ける
Google Apps Script では、YouTube Reporting API へのアクセスが禁止されています
これらは非常によく似た質問ですが、私は所有者としてログインしています。スクリプトは所有者のドライブにあります。
私の問題
GAS (Google Apps Script) を使用して、コンテンツ所有者から YouTube アナリティクス レポートにアクセスしようとしています。ブランド アカウント (ビデオ コンテンツなどのデータを保持する) とユーザー アカウントの 2 つのアカウントがあります。どちらも同じ資格情報 (email と pwd) を使用します。ユーザーとして承認すると、403(禁止) が返されます。ブランドとして承認する際、何度もオフライン アクセスを承認するように求められ、要求を行うことができません。
私が試したこと...
- OAUTH Playground トークンを使用して Node から実行すると、機能します。しかし、私はGASに固執する必要があります。
- google-script-oauth2 の使用: 資格情報をハードコードする (Node ソリューションと同様) が、更新トークンを設定できませんでした。401 (無効な資格情報) を受け取りました - ベアラー トークンの有効期限が切れていると思います
- YouTube と YouTube 分析 API の認証情報の設定と有効化
- 古い認証情報を破棄し、新しいプロジェクトを GAS にアタッチする
- プライバシー設定で認証を削除し、再認証する
- 安全でないスクリプトを使用するオプションを切り替えて、手順 3 を繰り返す
- ids パラメータの contentOwner と channel パラメータの切り替え
- 注: 2 つの OAUTH2 資格情報アプリ スクリプトがあり、Web クライアントは両方とも Web アプリケーションとして設定されています。
ガスコード
最終的な考え
ブランドとユーザーの間には断絶があり、ブランドには OAUTH 2 トークンへの同じアクセス権が与えられていないと思います。したがって、リフレッシュ トークンは生成されません。そのため、リクエストは私が承認されたチャネル所有者であることを確認しますが、OAUTH フローを終了できません。
これが本当なら、なぜですか、どうすれば修正できますか? そうでない場合、エラーの原因は何だと思いますか?
スクリプトがブランド アカウントではなくユーザー アカウントにあることに気付きました。それは検証に影響しますか?
また、実際のチャネルでは、ユーザーはプライマリ所有者としてリストされます。