使用Youtube Data API获取内容所有者数据

时间:2015-03-31 18:44:38

标签: youtube-api

我们在Youtube中设置了几个内容所有者(我将其称为A,B,C,D)。所有这些都已经与Google帐户相关联(我称之为GA1)。我们有一个自定义应用程序,需要能够使用Youtube Data API v3检索内容所有者的视频和分析数据。 (API的v2将于4月20日开始执行。)

我遇到的问题是,显然没有办法做到这一点。使用服务帐户(以及Google的PHP库与Youtube API交谈),我最终拨打了这样的电话:

$optParams = array(
  'forContentOwner' => true,
  'onBehalfOfContentOwner' => '[A]',
  'order' => 'date',
  'maxResults' => 20,
  'type' => 'video',
);

$serviceYT->search->listSearch('snippet', $optParams);

最终会抛出403 Forbidden异常。 (上面的" [A]"将替换为实际的内容所有者名称。)我可以成功完成许多其他呼叫,例如列出频道或视频,甚至其他类型的搜索,但是我添加了" forContentOwner"和" onBehalfOfContentOwner"参数,我得到403禁止(没有关于禁止它的原因的附加信息)。

在Youtube API文档(https://developers.google.com/youtube/v3/guides/authentication)中,我找到了这一行:

  

服务帐户流支持不访问用户信息的服务器到服务器交互。但是,YouTube Data API不支持此流程。由于无法将服务帐户与YouTube帐户相关联,因此尝试使用此流程授权请求会产生NoLinkedYouTubeAccount错误。

但是,当我使用我在开发者控制台中创建的服务帐户(对于链接到内容所有者的帐户GA1)授权(OAuth 2.0)时,它授权就好了,我从来没有看到任何&# 34; NoLinkedYouTubeAccount"错误。有谁知道我做错了什么?或者通过服务帐户访问内容所有者数据根本不可能?我应该使用另一个OAuth 2.0流程吗?需要调用API的代码通过cron作业触发;它根本不是互动的。

0 个答案:

没有答案