2017-08-24 21 views
10

まず、この質問は重複しているように聞こえるかもしれませんが、私が既に見た回答から、私は許可がないのでこの回答が正しく合わないと思います。PHP - OAuth - YouTube APIの後にチャンネルIDを取得する

私は自分のGoogleアカウントを承認した後、YouTubeチャンネルIDを見つけようとしています。私が使用しています

スコープは以下のとおりです。

https://www.googleapis.com/auth/yt-analytics.readonly 
https://www.googleapis.com/auth/userinfo.profile 

回答の多いチャネルIDを取得するためのV3チャンネルのAPIへのアクセスを参照してください。

$channelData = file_get_contents("https://www.googleapis.com/youtube/v3/channels?part=id&mine=true&access_token=".$token['access']); 
$channelData = json_decode($channelData, true); 

問題は私が使用しているスコープでこれにアクセスできないことです。 SOに関する他の質問はすべてこのエンドポイントを中心に展開されています。

How to get Channel ID (YouTube API v2)?

Youtube API Retrieving Channel ID after authentication

How to Get Channel id or url after Google Oauth PHP

私は最小限にスコープを維持したいのでご注意ください。アナリティクスAPIだけではこれが簡単にできないのはなぜですか?承認したばかりのユーザーのチャンネルIDを見つけるには別のYouTubeスコープを使用する必要がありますか?私が求めている

質問は

私はちょうど私の現在のスコープで許可されたユーザのチャネルIDを取得することができます任意の方法はありますか?チャンネルIDを取得するために使用できる最小量の許可スコープは何ですか?

答えて

0

[EDIT]

は申し訳ありませんが、以前私がauditDetails一部を逃しました。 YouTube APIのスコープは、YouTube API scopes

となります。https://www.googleapis.com/auth/youtubeが必要です。私はこのことについてはわからない:https://www.googleapis.com/auth/youtube.force-ssl "force ssl"の部分以外の説明がないため。

+0

お返事ありがとうございます。私はauditDetailsの部分を取得しようとしていません。好ましくは、スニペットまたはID。また、(私が間違っているかもしれない)しかし、私はスコープがMCN/CMS保有者に限られていると信じています。私はいくつかのテストを行い、戻ってくる! :) – ConorReidd

+0

@ConorReidd更新をご確認ください。 – instead

1

youtube.readonlyスコープを追加する必要があります。socialiteなどのプラグインは、このスコープがハードコードされている必要があります。チャンネルsnippetは、channelsの方法(docspart=snippet)で取得できます。

読み取り専用スコープは、リストに含めるほど軽いです。 userinfo.profileおよびyt-analytics.readonlyはチャンネルリストにアクセスできません。このスコープは、チャネルIDを取得するために必要な唯一のスコープです。

関連する問題