将频道部分添加到经过身份验证的用户的频道。一个渠道最多可以创建 10 个书架。
配额影响:调用此方法的配额费用为 50 个单位。
常见使用场景
请求
HTTP 请求
POST https://www.googleapis.com/youtube/v3/channelSections
授权
此请求需要获得以下至少一个范围的授权(详细了解身份验证和授权)。
范围 |
---|
https://www.googleapis.com/auth/youtubepartner |
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
参数
下表列出了此查询支持的参数。列出的所有参数都是查询参数。
参数 | ||
---|---|---|
必需参数 | ||
part |
string part 参数在此操作中有两个目的。它标识了写入操作将设置的属性以及 API 响应将包含的属性。以下列表包含您可以在参数值中包含的 part 名称:
|
|
可选参数 | ||
onBehalfOfContentOwner |
string 此参数只能在正确的授权请求中使用。注意:此参数专供 YouTube 内容合作伙伴使用。 onBehalfOfContentOwner 参数表示请求的授权凭据用于标识代表参数值中指定的内容所有者执行操作的 YouTube CMS 用户。此参数适用于拥有和管理许多不同 YouTube 频道的 YouTube 内容合作伙伴。内容所有者只需进行一次身份验证,即可访问自己所有的视频和频道数据,而无需为每个频道提供身份验证凭据。用户身份验证所用的 CMS 帐号必须与指定的 YouTube 内容所有者相关联。 |
|
onBehalfOfContentOwnerChannel |
string 此参数只能在正确的授权请求中使用。注意:此参数仅适用于 YouTube 内容合作伙伴。 onBehalfOfContentOwnerChannel 参数用于指定要添加视频的频道的 YouTube 频道 ID。当请求为 onBehalfOfContentOwner 参数指定值时,必须提供此参数,并且该参数只能与该参数结合使用。此外,必须使用与 onBehalfOfContentOwner 参数指定的内容所有者相关联的 CMS 帐号对请求进行授权。最后,onBehalfOfContentOwnerChannel 参数值指定的频道必须与 onBehalfOfContentOwner 参数指定的内容所有者相关联。此参数适用于拥有和管理许多不同 YouTube 频道的 YouTube 内容合作伙伴。使用 Content ID,内容所有者只需进行一次身份验证,即可代表参数值中指定的频道执行操作,而无需为每个单独的频道提供身份验证凭据。 |
请求正文
在请求正文中提供 channelSection 资源。对于相应资源:
-
您必须为以下属性指定值:
snippet.type
-
您可以为以下属性设置值:
snippet.type
snippet.title
snippet.position
contentDetails.playlists[]
contentDetails.channels[]
响应
如果成功,此方法将在响应正文中返回 channelSection 资源。
错误
下表列出了该 API 为响应对此方法的调用可能返回的错误消息。如需了解详情,请参阅错误消息文档。
错误类型 | 错误详情 | 说明 |
---|---|---|
badRequest (400) |
notEditable |
无法创建此频道版块。 |
badRequest (400) |
typeRequired |
channelSection 资源必须指定 snippet.type 字段的值。 |
forbidden (403) |
channelSectionForbidden |
此请求未正确进行身份验证,或此渠道不支持该请求。 |
invalidValue (400) |
channelNotActive |
至少有一个指定的渠道无效。 |
invalidValue (400) |
channelsDuplicated |
由于指定了重复的渠道,因此请求失败。 |
invalidValue (400) |
channelsNeeded |
如果 snippet.type 属性的值为 multipleChannels ,则必须指定 contentDetails.channels[] 属性,并且必须至少指定一个渠道。 |
invalidValue (400) |
channelsNotExpected |
随请求提供的资源指定了 contentDetails.channels[] 属性的值,但渠道类型并不适用于这类渠道部分。 |
invalidValue (400) |
contentDetailsNeeded |
您要插入的资源必须包含适用于此类频道版块的 contentDetails 对象。 |
invalidValue (400) |
inValidPosition |
snippet.position 属性包含无效值。 |
invalidValue (400) |
maxChannelSectionExceeded |
无法完成该请求,因为频道中的频道版块数量已达到上限。 |
invalidValue (400) |
maxChannelsExceeded |
由于该请求尝试在频道部分包含的频道过多,因此请求失败。 |
invalidValue (400) |
maxPlaylistExceeded |
由于尝试在频道版块中添加过多播放列表,因此请求失败。 |
invalidValue (400) |
onePlaylistNeeded |
如果 snippet.type 属性的值为 singlePlaylist ,则 contentDetails.playlists[] 属性只能指定一个播放列表。 |
invalidValue (400) |
ownChannelInChannels |
您不能将自己的频道添加到显示在该频道中的频道版块中。 |
invalidValue (400) |
playlistIsPrivate |
指定的播放列表中有一个或多个是私享播放列表,因此不能添加到频道版块中。 |
invalidValue (400) |
playlistsDuplicated |
由于指定了重复的播放列表,因此请求失败。 |
invalidValue (400) |
playlistsNeeded |
如果 snippet.type 属性的值为 singlePlaylist 或 multiplePlaylists ,则必须指定 contentDetails.playlists[] 属性。 |
invalidValue (400) |
playlistsNotExpected |
随请求提供的资源指定了 contentDetails.playlists[] 属性的值,但在这种情况下,播放列表的频道类型不是预期的。 |
invalidValue (400) |
snippetNeeded |
您必须指定 snippet 才能创建频道版块。 |
invalidValue (400) |
titleLengthExceeded |
snippet.title 属性的值过长。 |
invalidValue (400) |
titleRequired |
如果 snippet.type 属性的值为 multiplePlaylists 或 multipleChannels ,则您必须通过指定 snippet.title 属性的值来设置该部分的标题。 |
notFound (404) |
channelNotFound |
找不到指定渠道中的一个或多个。 |
notFound (404) |
playlistNotFound |
找不到一个或多个指定的播放列表。 |
试试看!
使用 APIs Explorer 调用此 API,并查看 API 请求和响应。