注意:YouTube Data API 仅供 YouTube 内容合作伙伴使用,并非所有开发者或 YouTube 用户都可以访问。您需要拥有 YouTube 内容管理器账号才能访问。如果您拥有 YouTube Content Manager 账号,但未在 Google Cloud 控制台中看到 YouTube Data API 列为服务之一,请与您的指定合作伙伴经理或合作伙伴支持团队联系。
YouTube 权利管理系统中的每个对象都与一个内容所有者相关联。内容所有者是指拥有一系列资产权利的 YouTube 合作伙伴。当应用使用 YouTube Content ID API 时,必须获得内容所有者的授权,才能创建或操纵资产、政策和版权主张。当应用的已通过身份验证的用户有权访问内容所有者账号时,应用会收到该授权。如果已通过身份验证的用户没有内容所有者账号的访问权限,则对 Content ID API 的调用会失败。
检索内容所有者的 ID
如需检索内容所有者的 ID,请调用 YouTube Content ID API 的 contentOwners.list 方法。API 响应包含与授权请求的用户关联的 contentOwner 资源列表。在每个资源中,id 属性用于指定内容所有者的 ID。
如需查看以编程方式检索内容所有者 ID 的示例,请参阅上传和声明视频。
代表内容所有者调用 YouTube API
YouTube Content ID API
由于大多数用户只能访问一个内容所有者账号,因此 Content ID API 可以隐式确定用户所代表的内容所有者。因此,对于 Content ID API 调用,onBehalfOfContentOwner 参数是可选的。
不过,有些用户有权访问多个内容拥有者账号。对于这些用户,每个 API 请求都必须包含 onBehalfOfContentOwner 参数,以明确指定要使用的内容所有者账号。
YouTube Data API (v3)
许多 YouTube Data API 方法也支持 onBehalfOfContentOwner 参数。使用该参数的方法采用委托,允许应用对内容所有者管理的频道、这些受管理频道中的视频或其他 API 资源执行操作。
在 YouTube Data API 中使用委托时,始终需要 onBehalfOfContentOwner 参数。相应参数的值是用于唯一标识内容所有者的 ID。您可以通过调用 YouTube Content ID API 的 contentOwners.list 方法以编程方式检索 ID。
某些 API 调用还需要额外的委托参数。以下列表介绍了两个示例:
- 当用户以内容所有者的身份对频道执行操作时,
videos.insert()方法需要设置onBehalfOfContentOwner和onBehalfOfContentOwnerChannel参数。新视频会上传到onBehalfOfContentOwnerChannel参数值指定的频道。 search.list()方法需要设置onBehalfOfContentOwner和forContentOwner参数。在这种情况下,用户可以通过forContentOwner参数指示 API 仅返回onBehalfOfContentOwner参数指定的内容所有者拥有的资源。
每种特定方法的文档详细说明了该方法何时支持委托,以及除了 onBehalfOfContentOwner 之外,您是否还需要设置其他参数。
YouTube Analytics API
如需使用 YouTube Analytics API 检索内容所有者报告,请将 API 请求中的 ids 参数值设置为 contentOwner==OWNER_ID,其中 OWNER_ID 指定内容所有者的 ID。