Youtube分析API返回Google_服务_异常错误
我想从Youtube频道检索过去的分析。我已经在谷歌开发者控制台中启用了Youtube分析API。我拥有这个频道,但我不是内容所有者。他们向我提供了内容所有者ID,并允许我访问Youtube CMS,他们说我现在应该可以使用Youtube分析API了。我正在使用带有codeigniter的Youtube分析API返回Google_服务_异常错误,youtube,youtube-api,youtube-analytics-api,Youtube,Youtube Api,Youtube Analytics Api,我想从Youtube频道检索过去的分析。我已经在谷歌开发者控制台中启用了Youtube分析API。我拥有这个频道,但我不是内容所有者。他们向我提供了内容所有者ID,并允许我访问Youtube CMS,他们说我现在应该可以使用Youtube分析API了。我正在使用带有codeigniter的GoogleAPI php客户端 我在尝试检索数据时遇到此错误 Type: Google_Service_Exception Message: { "error": { "cod
GoogleAPI php客户端
我在尝试检索数据时遇到此错误
Type: Google_Service_Exception
Message: { "error": { "code": 400, "message": "Required", "errors": [ { "message": "Required", "domain": "global", "reason": "required" } ] } }
我读到这意味着我缺少一个必需的参数
我的代码
$CLIENT_ID = "xxx";
$CLIENT_SECRET = "xxx";
require_once APPPATH . 'third_party/Google/src/Google/Client.php';
require_once APPPATH . 'third_party/Google/vendor/google/apiclient-services/src/Google/Service/YouTube.php';
require_once APPPATH . 'third_party/Google/vendor/google/apiclient-services/src/Google/Service/YouTubeAnalytics.php';
$access_token = $this->getToken();
$client = new Google_Client();
$client->setClientId($CLIENT_ID);
$client->setClientSecret($CLIENT_SECRET);
$client->setScopes(array('https://www.googleapis.com/auth/youtube.readonly', 'https://www.googleapis.com/auth/yt-analytics.readonly'));
$channel_id = "xxx";
$youtube = new Google_Service_YouTube($client);
$client->setAccessToken($access_token);
$analytics = new Google_Service_YouTubeAnalytics($client);
// $client is your Google_Client object
$id = 'channel=='.$channel_id;
$start_date = '2020-08-01';
$end_date = '2020-08-27';
$optparams = array(
'dimensions' => '7DayTotals',
'sort' => 'day',
);
$metrics = array(
'views',
'estimatedMinutesWatched',
'averageViewDuration',
'comments',
'favoritesAdded',
'favoritesRemoved',
'likes',
'dislikes',
'shares',
'subscribersGained',
'subscribersLost'
);
$api_response = $metrics;
foreach ($metrics as $metric)
{
$api = $analytics->reports->query($id, $start_date, $end_date, $metric, $optparams);
if (isset($api['rows'])) $api_response[$metric] = $api['rows'][0][0];
}
}
我缺少什么参数