YouTube API 服务 - 最低功能要求

注意:新的遵守 YouTube 开发者政策指南提供了指导和示例,可帮助您确保 API 客户端遵守 YouTube API 服务条款政策 (API TOS) 的特定部分。本指南提供了关于 YouTube 如何执行《API 服务条款》某些方面的见解,但不会替换任何现有文档。

本文档针对实现或提供了使用 YouTube API 服务特定功能的 API 客户端(以下简称“API 客户端”)定义了最低功能要求。

这些要求和准则可确保 API 客户端提供一致的用户体验,从而保护 YouTube 用户、内容所有者和广告客户的利益。这些规则是 YouTube API 服务条款中不可或缺的一部分,在开发和实现任何 API 客户端时都必须遵守。

您应了解本文档中的要求,以便我们确保将现有 YouTube 功能提供更好的用户体验。它们也会随着 YouTube 新功能及经过更新的功能的变化而变化。有时,您可能需要通过更新 API 客户端来满足新的要求。服务条款修订历史记录会记录所有更改,因此请经常查看该文档,或订阅其 RSS Feed,以确保您可以快速了解可能影响 API 客户端的更改。

除了本文档中的要求外,我们强烈建议您遵循 YouTube API 服务政策中所述的最佳做法,并在 YouTube API 服务的文档中的其他部分讨论这些最佳做法。即使并非严格要求,这些做法仍可以帮助您的 API 客户端更快地从错误中恢复,并优化其使用配额的 YouTube API 服务的配额使用。与此同时,这些做法有助于确保 YouTube 生态系统的健康,最重要的是,为您的 API 客户端和 YouTube 应用的用户提供最佳体验。

YouTube 嵌入式播放器和视频播放

本节中的要求专门针对嵌入式 YouTube 播放器。YouTube API 服务政策还包含一些与播放 YouTube 视听内容的 API 客户端相关的政策。

嵌入式 YouTube 播放器尺寸

嵌入式播放器必须具有一个尺寸至少为200x200像素的视口。如果播放器显示控件,那么它必须足够大,可以在无需将视口缩小到最小尺寸以下的情况下完整显示控件。我们建议 16:9 播放器的宽至少为 480 像素、高至少为 270 像素。

自动播放和脚本化播放

本部分将介绍自动播放。它适用于使用 autoplay 播放器参数或通过 YouTube IFrame Player API 服务、YouTube Android Player API 服务或其他 YouTube API 服务以编程方式启动自动播放的 YouTube 嵌入式播放器。

  • 自动播放视频的嵌入式播放器会在网页加载后立即开始播放,或在嵌入式播放器完全可见后立即开始播放。不过,API 客户端不得在播放器可见并且有超过一半的播放器显示在页面或屏幕上之前启动自动播放。

  • 网页或屏幕不得包含多个会自动同时播放内容的 YouTube 播放器。

  • 可启动播放的任何 YouTube 缩略图的宽度必须至少为 120 像素,高度至少为 70 像素。

YouTube 播放器属性

YouTube 播放器的属性和参数(例如,YouTube 品牌在播放器中的呈现效果)在 YouTube API 文档和规范 (https://developers.google.com/youtube) 中进行了指定。如果 API 文档中未明确说明,请勿更改 YouTube 播放器。

叠加层和框架

不得在 YouTube 嵌入式播放器的任何部分(包括播放器控件)前面显示叠加层、框架或其他视觉元素。同样,您不得使用叠加层、框架或其他视觉元素遮挡嵌入式播放器的任何部分(包括播放器控件)。

鼠标悬停次数

您不得在 YouTube 播放器上使用鼠标悬停或触摸事件来代表用户发起任何操作,例如打开窗口或订阅频道。

上传视频

如果 API 客户端允许用户将内容上传到多个平台,则用户应当能够选择和取消选择要将视频上传到的目标平台。

数据要求

让用户能够将视频上传到 YouTube 的 API 客户端必须允许用户设置以下列表中的值。未列出的任何属性都是可选的。

  名称 说明
资源属性
snippet.title 强制要求。视频的标题。如果值超过 100 个字符,YouTube 会返回错误。YouTube 支持除 <> 之外的所有有效的 UTF-8 字符。

snippet.description 强制要求。视频的说明。如果该值超过 5000 字节,YouTube 会返回错误。YouTube 支持除 <> 之外的所有有效的 UTF-8 字符。
status.privacyStatus 强制要求。视频的隐私设置。用户必须能够选择上传的视频是公开视频、私享视频还是不公开视频。
请求参数
onBehalfOfContentOwnerChannel 有条件地要求。如果请求的授权凭据用于标识内容所有者且设置了 onBehalfOfContentOwner 参数,那么 API 用户还必须能够指定作为视频的上传视频来源的 YouTube 频道。

显示评论

  名称 说明
资源属性
snippet.textDisplay 强制要求。评论的内容。API 客户端必须 (a) 显示评论或评论回复的全文,或 (b) 截断文本,并提供一种方式,以便观看者能够轻松地从截断的版本访问完整文本。

此要求适用于所有评论和评论回复,无论评论与哪种资源(视频、频道等)相关联。

请注意,commentThread 资源的 snippet.topLevelComment 资源是 comment 资源,并且 comment 资源是 comment 资源。因此,此要求也适用于 snippet.topLevelComment.snippet.textDisplayreplies.comments[].snippet.textDisplay 属性。
snippet.title
(channel)
必需(建议)。频道的标题。
  • 如果注释与渠道相关,则 API 客户端必须显示该渠道的名称。
  • 如果评论与视频相关,则 API 客户端必须显示上传视频的频道的名称。
snippet.title
(video)
有条件性(建议)。视频的标题。如果评论与视频相关,则此值必须显示。
snippet.moderationStatus 有条件地要求。如果 API 请求中的 moderationStatus 参数值为 heldForReviewlikelySpam,则显示屏必须使用属性值、类似语言(例如“此评论等待审核”)、标题(例如“待审核”)或其他明确的语言来明确标识该状态。commentThreads.list 方法支持根据审核状态检索评论。

添加注释

  名称 说明
资源属性
snippet.title
(channel)
强制要求。频道的标题。
  • 如果用户想添加对渠道的评论,API 客户端必须显示渠道的名称。
  • 如果用户对视频发表评论,API 客户端必须显示上传视频的频道的名称。
snippet.title
(video)
强制要求。如果用户添加评论,则 API 客户端必须显示该视频的标题。
其他要求
Comment author's channel name 强制要求。API 客户端必须明确指出评论将归入的 YouTube 用户帐号。如果该请求的授权凭据用于标识内容所有者,并且设置了 onBehalfOfContentOwner 参数,则该 API 用户还必须能够指定评论的 YouTube 频道。

添加评论回复

  名称 说明
资源属性
snippet.textDisplay 强制要求。评论的内容。API 客户端必须根据本文档的显示评论部分中定义的规则,显示用户回复的评论文本。
snippet.title
(channel)
强制要求。频道的标题。
  • 如果用户要回复关于频道的评论,API 客户端必须显示频道名称。
  • 如果用户要回复关于视频的评论,API 客户端必须显示上传视频的频道的名称。
snippet.title
(video)
强制要求。如果用户要回复关于视频的评论,API 客户端必须显示视频的标题。
其他要求
Comment author's channel name 强制要求。API 客户端必须明确指出评论回复将归因于的 YouTube 用户帐号。如果该请求的授权凭据用于标识内容所有者,并且设置了 onBehalfOfContentOwner 参数,则该 API 用户还必须能够指定评论回复将归因于的 YouTube 频道。

修改或删除评论回复

  名称 说明
资源属性
snippet.textDisplay 强制要求。评论的内容。API 客户端必须根据本文档的显示评论部分中定义的规则,显示用户正在修改或删除的评论的文本。
snippet.title
(channel)
强制要求。频道的标题。
  • 如果用户正在编辑或删除某个频道的评论,API 客户端必须显示该频道的名称。
  • 如果用户修改或删除视频的评论,API 客户端必须显示上传视频的频道的名称。
snippet.title
(video)
强制要求。如果用户修改或删除视频的评论,API 客户端必须显示视频的标题。
其他要求
Comment author's channel name 强制要求。API 客户端必须明确指出评论所属的 YouTube 用户帐号。

将用户加入实时聊天黑名单(或从黑名单中移除)

  名称 说明
资源属性
snippet.title
(channel)
强制要求。要禁止或取消关联的 YouTube 频道的名称。此外,频道名称还必须与频道相关联,或者还必须显示频道网址。
其他要求
评论者的频道名称 强制要求。API 客户端必须明确标识出用于添加或移除禁令的 YouTube 用户帐号。