我已经创建了一个用于YouTube Content ID API的服务帐户,我正在设置您的服务帐户下的步骤进行操作:
步骤似乎有些过时,但是我设法创建了一个服务帐户,并且已经有了电子邮件地址。我不知道是否需要分配角色,所以我没有。
我访问了Content ID用户页面,并邀请了服务帐户用户:
https://developers.google.com/youtube/partner/guides/oauth2_for_service_accounts
问题是我收到错误the request could not be completed
,但刷新页面时,似乎已成功添加了用户。
好吧,当我使用此服务帐户提出请求时,我得到了禁止的错误。例如,以下错误是我尝试获取索赔清单时出现的。
{
"error": {
"errors": [
{
"domain": "global",
"reason": "forbidden",
"message": "Forbidden"
}
],
"code": 403,
"message": "Forbidden"
}
}
但是某些请求有效,例如列出/插入标签,列出内容所有者。
所有权限均已分配给用户,因此我不确定出现错误的原因是什么。
这是PHP代码:
$OAUTH2_KEY_FILE = 'key.json';
$client = new \Google_Client();
$client->setAuthConfig($OAUTH2_KEY_FILE);
$client->setScopes([\Google_Service_YouTubePartner::YOUTUBEPARTNER]);
$youtubePartner = new \Google_Service_YouTubePartner($client);
dd($youtubePartner->claims->listClaims([
'onBehalfOfContentOwner' => 'XXX'
]));