Google 会使用 AI 技术将内容翻译成您偏好的语言。AI 翻译可能包含错误。
YouTube Data API - Errors
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
本文档介绍了 YouTube Data API 操作可能返回的不同类型的错误。您还可以在相应方法的参考文档中找到任何单个方法的错误列表。
一般错误
下表列出了并非特定于某个 API 方法的 API 出错提示。
Core API errors
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
已禁止访问。相应请求可能未获得适当的授权。 |
quotaExceeded (403) |
quotaExceeded |
由于您已超出配额,因此无法完成请求。 |
Common request errors
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
incompatibleParameters |
请求指定了两个或更多不能在同一请求中使用的参数。 |
badRequest (400) |
invalidFilters |
请求指定了无效的过滤条件参数。 |
badRequest (400) |
invalidPageToken |
请求指定了无效的页面令牌。 |
badRequest (400) |
missingRequiredParameter |
相应请求缺少必需的参数。 |
badRequest (400) |
unexpectedParameter |
请求指定了非预期参数。 |
forbidden (403) |
accountDelegationForbidden |
经过身份验证的用户无法代表指定的 Google 账号执行操作。 |
forbidden (403) |
authenticatedUserAccountClosed |
经过身份验证的用户的 YouTube 账号已关闭。如果经过身份验证的用户代表另一个 Google 账号行事,则此错误是指后者。 |
forbidden (403) |
authenticatedUserAccountSuspended |
经过身份验证的用户的 YouTube 账号已被中止。如果经过身份验证的用户代表另一个 Google 账号行事,则此错误是指后者。 |
forbidden (403) |
authenticatedUserNotChannel |
对于此请求,经过身份验证的用户必须解析为频道,但实际情况并非如此。如果您的请求经过身份验证并使用 onBehalfOfContentOwner 委托参数,则您还应设置 onBehalfOfContentOwnerChannel 参数。 |
forbidden (403) |
channelClosed |
请求中标识的渠道已关闭。 |
forbidden (403) |
channelNotFound |
找不到请求中指定的频道。 |
forbidden (403) |
channelSuspended |
请求中指定的频道已被中止。 |
forbidden (403) |
cmsUserAccountNotFound |
CMS 用户无权代表指定的内容所有者执行操作。 |
forbidden (403) |
insufficientCapabilities |
CMS 用户权限不足。 |
forbidden (403) |
insufficientPermissions |
为请求提供的 OAuth 2.0 令牌指定的范围不足以访问所请求的数据。 |
notFound (404) |
contentOwnerAccountNotFound |
找不到指定的内容所有者账号。 |
Request context errors
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidLanguage |
hl 参数值未指定有效的语言代码。 |
badRequest (400) |
invalidMine |
请求对 mine 参数的使用不受支持。 |
badRequest (400) |
invalidMine |
如果经过身份验证的用户是 YouTube 合作伙伴,则无法在请求中使用 mine 参数。您应移除 mine 参数,通过移除 onBehalfOfContentOwner 参数以 YouTube 用户身份进行身份验证,或通过提供 onBehalfOfContentOwnerChannel 参数(如果可用于所调用的方法)以合作伙伴的某个频道身份执行操作。 |
badRequest (400) |
invalidPart |
请求的 part 参数指定了一些无法同时写入的部分。 |
badRequest (400) |
invalidRegionCode |
regionCode 参数指定了无效的地区代码。 |
badRequest (400) |
unexpectedPart |
请求的 part 参数指定了非预期值。 |
badRequest (400) |
unknownPart |
请求的 part 参数指定了一个未知值。 |
badRequest (400) |
unsupportedLanguageCode |
hl 参数值未指定受支持的语言代码。 |
badRequest (400) |
unsupportedRegionCode |
regionCode 参数指定了不受支持的地区代码。 |
unauthorized (401) |
authorizationRequired |
请求使用了 mine 参数,但未获得适当授权。 |
unauthorized (401) |
youtubeSignupRequired |
此错误表示用户拥有未关联的 Google 账号,即用户拥有 Google 账号,但没有 YouTube 频道。此类用户可以访问许多需要用户授权的功能,例如对视频进行评分或将视频添加到 watch_later 播放列表。不过,举例来说,用户需要有 YouTube 频道才能上传视频。拥有 Gmail 账号或 Android 设备的用户肯定拥有 Google 账号,但可能尚未将该 Google 账号与 YouTube 频道相关联。
如果您尝试使用 OAuth 2.0 服务账号流程,则通常会看到此错误。YouTube 不支持服务账号,如果您尝试使用服务账号进行身份验证,就会收到此错误。
介绍 Google 账号支持的 YouTube API 博文还更详细地讨论了 youtubeSignupRequired 错误。虽然该博文解释的是 API 2.1 版的错误,但该错误的含义仍然适用。 |
活动
下表列出了 API 在响应与 activities 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
activities.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
homeParameterDeprecated |
无法通过此 API 获取用户的首页活动数据。如果您在未经授权的请求中将 home 参数设置为 true,则可能会出现此错误。 |
forbidden (403) |
forbidden |
请求未获得适当授权。 |
notFound (404) |
channelNotFound |
找不到请求的 channelId 参数标识的频道 ID。 |
notFound (404) |
homeChannelNotFound |
找不到当前已通过身份验证的用户的 YouTube 首页 Feed。 |
unauthorized (401) |
authorizationRequired |
请求使用了 home 参数,但未获得适当授权。 |
字幕
下表列出了 API 在响应与 captions 资源相关的调用时返回的出错提示。这些方法还可能会返回常见请求错误部分中列出的错误。
captions.delete
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
与请求关联的权限不足,无法删除字幕轨道。相应请求可能未获适当授权。 |
notFound (404) |
captionNotFound |
找不到字幕轨道。检查请求的 id 参数的值,确保其正确无误。 |
captions.download
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
与请求关联的权限不足,无法下载字幕轨道。请求可能未获得适当授权。 |
invalidValue (400) |
couldNotConvert |
字幕轨道数据无法转换为所请求的语言和/或格式。确保请求的 tfmt 和 tlang 值有效,并且请求的字幕轨道的 snippet.status 不是 failed。 |
notFound (404) |
captionNotFound |
找不到字幕轨道。请检查请求的 id 参数值,确保其正确无误。 |
captions.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
contentRequired |
请求不包含字幕轨道内容。 |
conflict (409) |
captionExists |
指定视频已包含具有指定 snippet.language 和 snippet.name 的字幕轨道。一个视频可以有多个相同语言的音轨,但每个音轨必须有不同的名称。
您可以通过多种方式解决此错误。您可以删除现有轨道,然后插入新轨道,也可以在插入新轨道之前更改其名称。 |
forbidden (403) |
forbidden |
与请求关联的权限不足,无法上传字幕轨道。请求可能未获得适当授权。 |
invalidValue (400) |
invalidMetadata |
请求包含无效的元数据值,导致无法创建曲目。确认请求为 snippet.language、snippet.name 和 snippet.videoId 属性指定了有效值。snippet.isDraft 属性也可以包含在内,但不是必需的。 |
notFound (404) |
videoNotFound |
找不到 videoId 参数标识的视频。 |
invalidValue (400) |
nameTooLong |
请求中指定的 snippet.name 过长。支持的最大长度为 150 个字符。 |
captions.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
由于与请求关联的权限不足以检索所请求的资源,因此无法检索一个或多个字幕轨道。相应请求可能未获适当授权。 |
notFound (404) |
captionNotFound |
找不到一个或多个指定的字幕轨道。如果 videoId 参数标识了实际视频,但 id 参数标识了不存在的字幕轨道 ID 或与其他视频关联的轨道 ID,则会出现此错误。检查请求的 id 和 videoId 参数的值,确保它们正确无误。 |
notFound (404) |
videoNotFound |
找不到 videoId 参数标识的视频。 |
captions.update
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
contentRequired |
相应请求未上传更新后的字幕文件。如果 sync 参数设置为 true,则必须提供实际曲目内容。 |
forbidden (403) |
forbidden |
与请求关联的权限不足,无法更新字幕轨道。请求可能未获得适当授权。 |
notFound (404) |
captionNotFound |
找不到指定的字幕轨道。请检查请求的 id 参数值,确保其正确无误。 |
channelBanners
下表列出了 API 在响应与 channelBanners 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
channelBanners.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
bannerAlbumFull |
您的 YouTube 频道图片影集中的图片过多。请前往 http://photos.google.com,找到相册页面,然后从该相册中移除一些图片。 |
badRequest (400) |
mediaBodyRequired |
请求不包含图片内容。 |
channelSections
下表列出了 API 在响应与 channelSections 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
channelSections.delete
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
notEditable |
无法删除此频道版块。 |
forbidden (403) |
channelSectionForbidden |
相应请求未经过适当的身份验证,或者此渠道不支持相应请求。 |
invalidValue (400) |
idInvalid |
id 属性指定了无效的频道版块 ID。 |
invalidValue (400) |
idRequired |
id 属性必须指定一个值,用于标识要删除的频道版块。 |
notFound (404) |
channelNotFound |
找不到频道。 |
notFound (404) |
channelSectionNotFound |
找不到您尝试更新的频道版块。 |
channelSections.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSetError |
必须设置 channelSection 资源的 snippet.defaultLanguage 属性,才能成功插入或更新相应资源的 localizations 对象。 |
badRequest (400) |
invalidLanguage |
localizations 对象的其中一个语言键未能通过验证。请使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南进行更新。 |
badRequest (400) |
notEditable |
无法创建此频道版块。 |
badRequest (400) |
styleRequired |
channelSection 资源必须为 snippet.style 字段指定值。 |
badRequest (400) |
targetInvalidCountry |
targeting.countries 列表中的一个值未通过验证。请使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南进行更新。 |
badRequest (400) |
targetInvalidLanguage |
targeting.languages 列表中的一个值未通过验证。使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南更新这些值。 |
badRequest (400) |
targetInvalidRegion |
targeting.regions 列表中的一个值未通过验证。使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南更新这些值。 |
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 |
找不到一个或多个指定的播放列表。 |
channelSections.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
channelSectionForbidden |
请求者无权访问所请求的频道版块。 |
invalidValue (400) |
idInvalid |
请求指定了无效的频道版块 ID。 |
invalidValue (400) |
invalidCriteria |
由于过滤条件无效,因此无法完成请求。 |
notFound (404) |
channelNotFound |
找不到与该请求关联的频道。 |
notFound (404) |
channelSectionNotFound |
找不到与请求关联的频道版块。 |
channelSections.update
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSetError |
必须设置 channelSection 资源的 snippet.defaultLanguage 属性,才能成功插入或更新相应资源的 localizations 对象。 |
badRequest (400) |
invalidLanguage |
localizations 对象的其中一个语言键未能通过验证。请使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南进行更新。 |
badRequest (400) |
notEditable |
此频道版块无法修改。 |
badRequest (400) |
styleRequired |
channelSection 资源必须为 snippet.style 字段指定值。 |
badRequest (400) |
targetInvalidCountry |
targeting.countries 列表中的一个值未通过验证。使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南更新这些值。 |
badRequest (400) |
targetInvalidLanguage |
targeting.languages 列表中的某个值未通过验证。使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南更新这些值。 |
badRequest (400) |
targetInvalidRegion |
targeting.regions 列表中的一个值未通过验证。请使用 channelSections.list 方法检索有效值,并按照 channelSections 资源文档中的指南进行更新。 |
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) |
idInvalid |
id 属性指定了无效的频道版块 ID。 |
invalidValue (400) |
idRequired |
id 属性必须指定一个用于标识要更新的频道版块的值。 |
invalidValue (400) |
inValidPosition |
snippet.position 属性包含无效值。 |
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) |
channelSectionNotFound |
找不到您尝试更新的频道版块。 |
notFound (404) |
playlistNotFound |
找不到一个或多个指定的播放列表。 |
频道
下表列出了 API 在响应与 channels 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
channels.list
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidCriteria |
最多可以指定以下过滤器之一:id、mySubscribers、categoryId、mine、managedByMe、forUsername。如果使用 onBehalfOfContentOwner 参数进行内容所有者身份验证,则只能指定 id 或 managedByMe。 |
forbidden (403) |
channelForbidden |
id 参数指定的渠道不支持相应请求,或者相应请求未获得适当的授权。 |
notFound (404) |
categoryNotFound |
找不到 categoryId 参数所标识的类别。 |
notFound (404) |
channelNotFound |
找不到 id 参数中指定的频道。 |
channels.update
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
brandingValidationError |
brandingSettings 对象中的一个值未通过验证。使用 channels.list 方法检索频道的现有设置,并按照 channels 资源文档中的指南更新属性值。 |
badRequest (400) |
channelTitleUpdateForbidden |
更新频道的 brandingSettings part 时,您必须将 brandingSettings.channel.title 属性的值设置为频道的当前标题,或者省略该属性。如果您更改该属性的值,API 会返回错误。 |
badRequest (400) |
defaultLanguageNotSetError |
必须设置 defaultLanguage 才能更新 localizations。 |
badRequest (400) |
invalidBrandingOption |
您指定的某个品牌设置不存在。使用 channels.list 方法检索有效值,并确保按照 channels 资源文档中的指南进行更新。 |
badRequest (400) |
invalidCustomMessage |
请求元数据指定了无效的自定义消息。检查请求发送的资源中 invideoPromotion.items[].customMessage 属性的值。 |
badRequest (400) |
invalidDuration |
请求元数据在 invideoPromotion 部分中指定了无效的时长。 |
badRequest (400) |
invalidDuration |
请求元数据指定了无效的位置类型,用于确定如何在视频播放器中放置推广的商品。检查请求发送的资源中 invideoPromotion.position.type 属性的值。 |
badRequest (400) |
invalidRecentlyUploadedBy |
请求元数据指定了无效的渠道 ID。检查请求发送的资源中 invideoPromotion.items[].id.recentlyUploadedBy 属性的值。 |
badRequest (400) |
invalidTimingOffset |
请求元数据在 invideoPromotion 部分中指定了无效的时间偏移值。 |
badRequest (400) |
invalidTimingOffset |
请求元数据指定了无效的时间偏移值,该值用于确定何时在视频播放器中显示宣传的内容。检查请求发送的资源中 invideoPromotion.timing.offsetMs 属性的值。 |
badRequest (400) |
invalidTimingType |
请求元数据指定了无效的时间设置方法,无法确定何时应在视频播放器中显示宣传的内容。检查请求发送的资源中 invideoPromotion.timing.type 属性的值。 |
badRequest (400) |
localizationValidationError |
本地化对象中的某个值未能通过验证。使用 channels.list 方法检索有效值,并务必按照渠道资源文档中的指南更新这些值。 |
badRequest (400) |
tooManyPromotedItems |
invideoPromotion 部分中允许的宣传商品数量超出了上限。 |
forbidden (403) |
channelForbidden |
id 参数中指定的频道不支持该请求,或者该请求未获得适当授权。 |
forbidden (403) |
promotedVideoNotAllowed |
找不到 API 请求尝试更新的频道。检查请求发送到的 channel 资源中的 id 属性值,确保频道 ID 正确无误。 |
forbidden (403) |
websiteLinkNotAllowed |
不允许使用指定的网站网址。 |
notFound (404) |
channelNotFound |
找不到 id 参数指定的频道,或者该频道没有品牌推广选项。 |
notFound (404) |
channelNotFound |
找不到 id 参数中指定的渠道。 |
notFound (404) |
unknownChannelId |
找不到指定的频道 ID。 |
notFound (404) |
unknownChannelId |
找不到指定的 recentlyUploadedBy 频道 ID。 |
notFound (404) |
unknownVideoId |
找不到指定为宣传内容的视频 ID。 |
required (400) |
requiredItemIdType |
请求元数据必须在 invideoPromotion 部分中指定商品种类。 |
required (400) |
requiredItemId |
请求元数据必须在 invideoPromotion 部分中指定一个项。 |
required (400) |
requiredTimingOffset |
请求元数据必须指定默认时间偏移值,以便 YouTube 确定何时显示推广的商品。在请求发送的资源中设置 invideoPromotion.defaultTiming.offsetMs 属性的值。 |
required (400) |
requiredTimingOffset |
请求元数据必须指定时间偏移值,以便 YouTube 确定何时显示宣传的内容。在请求发送的资源中设置 invideoPromotion.timing.offsetMs 属性的值。 |
required (400) |
requiredTimingType |
请求元数据必须指定时间设置方法,以便 YouTube 确定何时展示宣传的内容。在请求发送的资源中设置 invideoPromotion.defaultTiming.type 属性的值。 |
required (400) |
requiredTimingType |
请求元数据必须指定时间设置方法,以便 YouTube 确定何时展示宣传的内容。在请求发送的资源中设置 invideoPromotion.timing.type 属性的值。 |
required (400) |
requiredTiming |
请求元数据必须为 invideoPromotion 部分中的每个项指定时间。 |
required (400) |
requiredVideoId |
请求元数据必须指定视频 ID,以标识宣传的商品。 |
required (400) |
requiredWebsiteUrl |
请求元数据必须在 invideoPromotion 部分中指定网站网址。在请求发送的资源中设置 invideoPromotion.items[].id.websiteUrl 属性的值。 |
成员
下表列出了 API 在响应与 members 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
members.list
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
channelMembershipsNotEnabled |
授权请求的创作者频道未启用频道会员功能。 |
badRequest (400) |
invalidMode |
mode 参数值无效。
如果 pageToken 参数指定的令牌是使用与指定模式不同的模式检索的,则可能会发生此错误。 |
badRequest (400) |
invalidPageToken |
pageToken 参数值无效。如果请求中使用的网页令牌已过期,就会发生此错误。 |
badRequest (400) |
invalidHasAccessToLevel |
hasAccessToLevel 参数值无效。没有具有指定 id 的级别。 |
badRequest (400) |
invalidFilterByMemberChannelId |
filterByMemberChannelId 参数值无效。如果 filterByMemberChannelId 参数值指定了超过 100 个频道,就会出现此错误。 |
membershipsLevels
下表列出了 API 在响应与 members 资源相关的调用时返回的出错提示。这些方法还可能会返回常见请求错误部分中列出的错误。
membershipsLevels.list
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
channelMembershipsNotEnabled |
授权请求的创作者频道未启用频道会员功能。 |
playlistItems
下表列出了 API 在响应与 playlistItems 资源相关的调用时返回的出错提示。这些方法还可能会返回常见请求错误部分中列出的错误。
playlistItems.delete
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
playlistItemsNotAccessible |
请求未获得适当授权,无法删除指定的播放列表内容。 |
notFound (404) |
playlistItemNotFound |
找不到请求的 id 参数标识的播放列表内容。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持从指定播放列表中删除视频。例如,您无法从“上传的视频”播放列表中删除视频。 |
playlistItems.insert
| 错误类型 |
错误详情 |
说明 |
duplicate |
videoAlreadyInPlaylist |
您尝试添加到播放列表中的视频已在播放列表中。 |
forbidden (403) |
playlistContainsMaximumNumberOfVideos |
此播放列表包含的内容数量已达到允许的上限。 |
forbidden (403) |
playlistItemsNotAccessible |
请求未获得适当授权,无法插入指定的播放列表项。 |
invalidValue (400) |
invalidContentDetails |
请求中的 contentDetails 属性无效。可能的原因是 contentDetails.note 字段的长度超过了 280 个字符。 |
invalidValue (400) |
invalidPlaylistItemPosition |
请求尝试将播放列表项的位置设置为无效或不受支持的值。检查资源的 snippet 中 position 属性的值。 |
invalidValue (400) |
invalidResourceType |
此操作不支持为资源 ID 指定的 type。资源 ID 用于标识要添加到播放列表中的内容,例如 youtube#video。 |
invalidValue (400) |
manualSortRequired |
请求尝试设置播放列表项的位置,但播放列表不使用手动排序。(例如,播放列表内容可能会按日期或热度排序。)您可以通过从请求要插入的资源中移除 snippet.position 元素来解决此错误。如果您希望播放列表内容在列表中具有特定位置,则需要先在播放列表设置中将播放列表的排序选项更新为手动。您可以在 YouTube 视频管理器中调整此设置。 |
invalidValue (400) |
videoAlreadyInAnotherSeriesPlaylist |
您尝试添加到播放列表中的视频已在另一个系列播放列表中。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持将视频插入到指定播放列表。例如,您无法将视频插入到“上传的视频”播放列表中。 |
notFound (404) |
playlistNotFound |
找不到请求的 playlistId 参数标识的播放列表。 |
notFound (404) |
videoNotFound |
找不到您尝试添加到播放列表中的视频。检查 videoId 属性的值,确保其正确无误。 |
required (400) |
channelIdRequired |
相应请求未为必需的 channelId 属性指定值。 |
required (400) |
playlistIdRequired |
请求未指定必需的 playlistId 属性的值。 |
required (400) |
resourceIdRequired |
请求必须包含一个资源,其中 snippet 对象指定了 resourceId。 |
playlistItems.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
playlistItemsNotAccessible |
相应请求未获得适当授权,无法检索指定播放列表。 |
notFound (404) |
playlistNotFound |
找不到请求的 playlistId 参数标识的播放列表。 |
notFound (404) |
videoNotFound |
找不到请求的 videoId 参数标识的视频。 |
required (400) |
playlistIdRequired |
订阅请求未指定必需的 playlistId 属性的值。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持列出指定播放列表中的视频。例如,您无法在“稍后观看”播放列表中列出视频。 |
playlistItems.update
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
playlistItemsNotAccessible |
请求未获得适当授权,无法更新指定的播放列表项。 |
invalidValue (400) |
invalidPlaylistItemPosition |
相应请求尝试将播放列表项的位置设置为无效值或不支持的值。检查资源的 snippet 中 position 属性的值。 |
invalidValue (400) |
invalidResourceType |
此操作不支持为资源 ID 指定的 type。资源 ID 用于标识要添加到播放列表中的项目,例如 youtube#video。 |
invalidValue (400) |
invalidSnippet |
请求未指定有效的 snippet 属性。 |
invalidValue (400) |
manualSortRequired |
请求尝试设置播放列表项的位置,但播放列表不使用手动排序。(例如,播放列表中的项目可以按日期或热门程度排序。)您可以通过从请求要插入的资源中移除 snippet.position 元素来解决此错误。如果您希望播放列表项在列表中具有特定位置,则需要在播放列表的设置中先将播放列表的排序选项更新为手动。您可以在 YouTube 视频管理器中调整此设置。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持更新指定播放列表中的视频。例如,您无法更新“上传的视频”播放列表中的视频。 |
notFound (404) |
playlistItemNotFound |
找不到请求的 id 属性标识的播放列表项。 |
notFound (404) |
playlistNotFound |
找不到请求的 playlistId 参数标识的播放列表。 |
required (400) |
channelIdRequired |
请求未指定必需的 channelId 属性的值。 |
required (400) |
playlistIdRequired |
请求未指定必需的 playlistId 属性的值。 |
required (400) |
playlistItemIdRequired |
请求中指定的播放列表项资源必须使用 id 属性来标识要更新的播放列表项。 |
播放列表
下表列出了 API 在响应与 playlists 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
playlists.delete
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
playlistForbidden |
此操作被禁止,或请求未获得适当授权。 |
notFound (404) |
playlistNotFound |
找不到请求的 id 参数所标识的播放列表。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持删除指定播放列表。例如,您无法删除“已上传的视频”播放列表。 |
playlists.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
channelClosed |
channelId 参数中指定的渠道已关闭。 |
forbidden (403) |
channelSuspended |
channelId 参数中指定的频道已被中止。 |
forbidden (403) |
playlistForbidden |
请求的 id 参数标识的播放列表不支持该请求,或者该请求未获得适当授权。 |
notFound (404) |
channelNotFound |
找不到 channelId 参数中指定的渠道。 |
notFound (404) |
playlistNotFound |
找不到请求的 id 参数标识的播放列表。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持列出指定播放列表的功能。例如,您无法列出“稍后观看”播放列表。 |
playlists.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSetError |
defaultLanguage 必须设置为更新 localizations。 |
badRequest (400) |
localizationValidationError |
localizations 对象中的一个值未通过验证。使用 playlists.list 方法检索有效值,并确保按照播放列表资源文档中的指南更新这些值。 |
badRequest (400) |
maxPlaylistExceeded |
无法创建播放列表,因为相应频道所含的播放列表数量已达上限。 |
forbidden (403) |
playlistForbidden |
此操作被禁止,或请求未获得适当授权。 |
invalidValue (400) |
invalidPlaylistSnippet |
请求提供了无效的播放列表代码段。 |
required (400) |
playlistTitleRequired |
请求中必须指定播放列表标题。 |
playlists.update
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSetError |
defaultLanguage 必须设置为更新 localizations。 |
badRequest (400) |
localizationValidationError |
localizations 对象中的一个值未通过验证。使用 playlists.list 方法检索有效值,并确保按照播放列表资源文档中的指南更新这些值。 |
forbidden (403) |
playlistForbidden |
此操作被禁止,或请求未获得适当授权。 |
invalidValue (400) |
invalidPlaylistSnippet |
请求提供了无效的播放列表代码段。 |
invalidValue (400) |
playlistOperationUnsupported |
该 API 不支持更新指定播放列表。例如,您无法更新已上传视频的播放列表的属性。 |
notFound (404) |
playlistNotFound |
找不到请求的 id 参数所标识的播放列表。 |
required (400) |
playlistTitleRequired |
请求中必须指定播放列表标题。 |
搜索
下表列出了 API 在响应与 search 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
search.list
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidChannelId |
channelId 参数指定的频道 ID 无效。 |
badRequest (400) |
invalidLocation |
location 和/或 locationRadius 参数值的格式不正确。 |
badRequest (400) |
invalidRelevanceLanguage |
relevanceLanguage 参数值的格式不正确。 |
badRequest (400) |
invalidSearchFilter |
相应请求包含无效的搜索过滤条件和/或限制条件组合。如果您为 eventType、videoCaption、videoCategoryId、videoDefinition、videoDimension、videoDuration、videoEmbeddable、videoLicense、videoSyndicated 或 videoType 参数设置了值,则必须将 type 参数设置为 video。 |
订阅
下表列出了 API 在响应与 subscriptions 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
subscriptions.delete
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
subscriptionForbidden |
请求未正确通过身份验证,或此渠道不支持该请求。 |
notFound (404) |
subscriptionNotFound |
找不到您要删除的订阅。检查请求的 id 参数的值,确保其正确无误。 |
subscriptions.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
subscriptionDuplicate |
您尝试创建的订阅已存在。 |
badRequest (400) |
subscriptionForbidden |
您的订阅数量已达上限。 |
badRequest (400) |
subscriptionForbidden |
短时间内的订阅太多,请过几个小时后再试。 |
badRequest (400) |
subscriptionForbidden |
不支持订阅自己的频道。 |
forbidden (403) |
subscriptionForbidden |
请求未正确通过身份验证,或此渠道不支持该请求。 |
notFound (404) |
publisherNotFound |
找不到请求的 snippet.resourceId 属性指定的资源。 |
notFound (404) |
subscriberNotFound |
找不到与请求关联的订阅者。 |
required (400) |
publisherRequired |
请求中指定的订阅资源必须使用 snippet.resourceId 属性来标识要订阅的频道。 |
subscriptions.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
accountClosed |
由于订阅者的账号已关闭,因此无法检索订阅。 |
forbidden (403) |
accountSuspended |
由于订阅者的账号已被中止,因此无法检索订阅。 |
forbidden (403) |
subscriptionForbidden |
请求者无权访问所请求的订阅。 |
notFound (404) |
subscriberNotFound |
找不到与请求关联的订阅者。 |
缩略图
下表列出了 API 在响应与 thumbnails 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
thumbnails.set
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidImage |
所提供的图片内容无效。 |
badRequest (400) |
mediaBodyRequired |
请求不包含图片内容。 |
forbidden (403) |
forbidden |
无法为指定视频设置缩略图。请求可能未获得适当授权。 |
forbidden (403) |
forbidden |
经过身份验证的用户无权上传和设置自定义视频缩略图。 |
notFound (404) |
videoNotFound |
找不到您要为其插入缩略图的视频。请检查请求的 videoId 参数值,确保其正确无误。 |
tooManyRequests (429) |
uploadRateLimitExceeded |
该频道最近上传了过多缩略图。请稍后重试请求。 |
videoAbuseReportReasons
下表列出了 API 在响应与 videoAbuseReportReasons 资源相关的调用时返回的出错提示。这些方法还可能会返回常见请求错误部分中列出的错误。
videoAbuseReportReasons.list
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
已禁止访问。请求可能未获得适当授权。 |
videoCategories
下表列出了 API 在响应与 videoCategories 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
videoCategories.list
| 错误类型 |
错误详情 |
说明 |
notFound (404) |
videoCategoryNotFound |
找不到 id 参数所标识的视频类别。使用 videoCategories.list 方法检索有效值列表。 |
视频
下表列出了 API 在响应与 videos 资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。
videos.insert
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSet |
请求尝试添加本地化的视频详细信息,但未指定视频详细信息的默认语言。 |
badRequest (400) |
invalidCategoryId |
snippet.categoryId 属性指定的类别 ID 无效。使用 videoCategories.list 方法检索支持的类别。 |
badRequest (400) |
invalidDescription |
请求元数据指定了无效的视频说明。 |
badRequest (400) |
invalidFilename |
Slug 标头中指定的视频文件名无效。 |
badRequest (400) |
invalidPublishAt |
请求元数据指定的预定发布时间无效。 |
badRequest (400) |
invalidRecordingDetails |
请求元数据中的 recordingDetails 对象指定了无效的录制详细信息。 |
badRequest (400) |
invalidTags |
请求元数据指定了无效的视频关键字。 |
badRequest (400) |
invalidTitle |
请求元数据指定了无效或空的视频标题。 |
badRequest (400) |
invalidVideoGameRating |
请求元数据指定了无效的电子游戏分级。 |
badRequest (400) |
invalidVideoMetadata |
请求元数据无效。如果请求更新了 video 资源的 snippet 部分,但未同时为 snippet.title 和 snippet.categoryId 属性设置值,则会发生此错误。 |
badRequest (400) |
mediaBodyRequired |
请求不包含视频内容。 |
badRequest (400) |
uploadLimitExceeded |
该频道的每日视频上传数量上限已达到。这是 YouTube 平台限制,与 Google Cloud 项目的 API 配额完全无关。 |
forbidden (403) |
forbidden |
|
forbidden (403) |
forbiddenLicenseSetting |
相应请求尝试为视频设置无效许可。 |
forbidden (403) |
forbiddenPrivacySetting |
该请求尝试为视频设置无效的隐私设置。 |
videos.list
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
videoChartNotFound |
所请求的视频排行榜不受支持或不可用。 |
forbidden (403) |
forbidden |
请求未获得适当授权,无法访问视频文件或处理信息。fileDetails、processingDetails 和 suggestions 部分仅对相应视频的所有者可见。 |
forbidden (403) |
forbidden |
相应请求无法访问用户评分信息。发生此错误的原因可能是请求未获得使用 myRating 参数的适当授权。 |
notFound (404) |
videoNotFound |
找不到您尝试检索的视频。检查请求的 id 参数的值,确保其正确无误。 |
videos.delete
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
您尝试删除的视频无法删除。请求可能未获得适当授权。 |
notFound (404) |
videoNotFound |
找不到您要删除的视频。请检查请求的 id 参数值,确保其正确无误。 |
videos.update
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
defaultLanguageNotSet |
API 请求尝试添加本地化的视频详细信息,但未指定视频详细信息的默认语言。 |
badRequest (400) |
invalidCategoryId |
snippet.categoryId 属性指定了无效的类别 ID。使用 videoCategories.list 方法检索支持的类别。 |
badRequest (400) |
invalidDefaultBroadcastPrivacySetting |
请求尝试为默认直播设置无效的隐私设置。 |
badRequest (400) |
invalidDescription |
请求元数据指定了无效的视频说明。 |
badRequest (400) |
invalidPublishAt |
请求元数据指定的预定发布时间无效。 |
badRequest (400) |
invalidRecordingDetails |
请求元数据中的 recordingDetails 对象指定了无效的录制详细信息。 |
badRequest (400) |
invalidTags |
请求元数据指定了无效的视频关键字。 |
badRequest (400) |
invalidTitle |
请求元数据指定了无效或空的视频标题。 |
badRequest (400) |
invalidVideoMetadata |
请求元数据无效。如果请求更新了 video 资源的 snippet 部分,但未同时为 snippet.title 和 snippet.categoryId 属性设置值,则会发生此错误。 |
forbidden (403) |
forbidden |
已禁止访问。请求可能未获得适当授权。 |
forbidden (403) |
forbiddenEmbedSetting |
相应请求尝试为视频设置无效的嵌入设置。部分频道可能无权为直播提供嵌入式播放器。如需了解详情,请访问 YouTube 帮助中心。 |
forbidden (403) |
forbiddenLicenseSetting |
请求尝试为视频设置无效的许可。 |
forbidden (403) |
forbiddenPrivacySetting |
相应请求尝试为视频设置无效的隐私设置。 |
notFound (404) |
videoNotFound |
找不到您尝试要更新的视频。检查请求正文中 id 字段的值,确保其正确无误。 |
videos.rate
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
emailNotVerified |
用户必须先验证其电子邮件地址,然后才能评分。 |
badRequest (400) |
invalidRating |
请求中包含 rating 参数的非预期值。 |
badRequest (400) |
videoPurchaseRequired |
只有租借了视频的用户才能对租借视频进行评分。 |
forbidden (403) |
forbidden |
您尝试评分的视频无法评分。请求可能未获得适当授权。 |
forbidden (403) |
videoRatingDisabled |
您尝试评分的视频的所有者已停用该视频的评分功能。 |
notFound (404) |
videoNotFound |
找不到您要评价的视频。请检查请求的 id 参数值,确保其正确无误。 |
videos.reportAbuse
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidAbuseReason |
请求中包含 reason_id 字段或 reason_id 和 secondary_reason_id 字段组合的非预期值。 |
badRequest (400) |
rateLimitExceeded |
用户在指定时间范围内发送的请求过多。 |
forbidden (403) |
forbidden |
|
notFound (404) |
videoNotFound |
找不到您尝试举报滥用行为的视频。 |
水印
下表列出了 API 在响应与 watermarks 资源相关的调用时返回的出错提示。这些方法还可能会返回常见请求错误部分中列出的错误。
watermarks.set
| 错误类型 |
错误详情 |
说明 |
badRequest (400) |
imageFormatUnsupported |
您提供的图片格式不受支持。 |
badRequest (400) |
imageTooTall |
您提供的图片过高。 |
badRequest (400) |
imageTooWide |
您提供的图片过宽。 |
badRequest (400) |
mediaBodyRequired |
请求不包含图片内容。 |
forbidden (403) |
forbidden |
无法为指定频道设置水印。请求可能未获得适当的授权,或者 channelId 参数设置的值无效。 |
watermarks.unset
| 错误类型 |
错误详情 |
说明 |
forbidden (403) |
forbidden |
无法为指定渠道取消设置水印。请求可能未获得适当的授权,或者 channelId 参数设置的值无效。 |
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2026-10-15。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2026-10-15。"],[],[]]
comments
下表列出了 API 在响应与
comments资源相关的调用时返回的出错提示。这些方法还可能返回常见请求错误部分中列出的错误。comments.listbadRequest (400)operationNotSupportedforbidden (403)forbiddennotFound (404)commentNotFoundid和parentId参数的值,确保其正确无误。comments.setModerationStatusbadRequest (400)banWithoutRejectmoderationStatus参数值为rejected时,才能使用banAuthor参数。badRequest (400)operationNotSupportedbadRequest (400)processingFailureforbidden (403)forbiddennotFound (404)commentNotFoundid参数的值,确保其正确无误。comments.insertbadRequest (400)commentTextRequiredcomment资源必须为snippet.textOriginal属性指定一个值。评论不能为空。badRequest (400)commentTextTooLongcomment资源的snippet.textOriginal属性包含过多字符。badRequest (400)invalidCommentMetadatabadRequest (400)operationNotSupportedsnippet.parentId属性标识的顶层评论。在commentThread资源中,snippet.canReply属性表示当前观看者是否可以回复会话。badRequest (400)parentCommentIsPrivatebadRequest (400)parentIdMissingcomment资源未指定snippet.parentId属性的值。badRequest (400)processingFailurecomment资源的结构,确保其有效。forbidden (403)forbiddenforbidden (403)ineligibleAccountnotFound (404)parentCommentNotFoundsnippet.parentId属性的值,确保其正确无误。comments.deletebadRequest (400)processingFailureforbidden (403)forbiddennotFound (404)commentNotFoundid参数的值,确保其正确无误。comments.updatebadRequest (400)commentTextTooLongcomment资源中的snippet.textOriginal属性包含的字符过多。badRequest (400)invalidCommentMetadatabadRequest (400)operationNotSupportedbadRequest (400)processingFailurecomment资源的结构,确保其有效。forbidden (403)forbiddenforbidden (403)ineligibleAccountnotFound (404)commentNotFoundid属性值,确保其正确无误。