Multichannels on YouTube with YouTube Analytics API

Viewed 134

I have a youtube account with 5 channels. With the YouTube Analytics API can I get data from the primary youtube channel. But the other channels I get always error message

forbidden

Also I am the owner from these all channels.

Here my sourcecode:

$client = new Google_Client();
$client->setAuthConfig('client_secrets.json');
$client->setScopes( array( 
  'https://www.googleapis.com/auth/youtube.force-ssl', 
  'https://www.googleapis.com/auth/youtubepartner-channel-audit', 
  'https://www.googleapis.com/auth/youtube', 
  'https://www.googleapis.com/auth/youtube.readonly', 
  'https://www.googleapis.com/auth/yt-analytics.readonly', 
  'https://www.googleapis.com/auth/yt-analytics-monetary.readonly',
  'https://www.googleapis.com/auth/youtubepartner')
);

$client->setAccessType("offline");

$json_str = file_get_contents("access_token.json");
$json = json_decode($json_str, true);

if (isset($json['access_token']) && $json['access_token']) {
  $client->setAccessToken($json_str);
  $youtube = new Google_Service_YouTubeAnalytics($client);
  $report = $youtube->reports->query('channel==UC0xxxxxxxxxxx', '2017-04-01', '2017-04-30', 'views');
  echo json_encode($report);
} else {
  $redirect_uri = 'https://xxxxxxxxxx/oauth2callback.php';
  header('Location: ' . filter_var($redirect_uri, FILTER_SANITIZE_URL));
}

If i have in the query-Command channel==MINE or the YouTube Channel-ID (UC0xxxxxxx) is work very well. But the other Channel-ID from the same youtube account I get this error:

PHP Fatal error:  Uncaught exception 'Google_Service_Exception' with message '{
"error": {
  "errors": [
    {
      "domain": "global",
      "reason": "forbidden",
      "message": "Forbidden"
    }
  ],
  "code": 403,
  "message": "Forbidden"
 }
}

How I can fix it?

0 Answers
Related