我们正在更新 Data API,以便与 YouTube 统计 Shorts 短视频观看次数的方式保持一致。
了解详情
Thumbnails: set
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
将自定义视频缩略图上传到 YouTube 并为视频设置该缩略图。
此方法支持媒体上传。上传的文件必须符合以下限制条件:
- 文件大小上限:2MB
- 接受的媒体 MIME 类型:
image/jpeg
、image/png
、application/octet-stream
对配额的影响:调用此方法大约会产生 50 个单元的配额费用。
常见使用场景
请求
HTTP 请求
POST https://www.googleapis.com/upload/youtube/v3/thumbnails/set
授权
此请求需要获得以下至少一个范围的授权(详细了解身份验证和授权)。
范围 |
https://www.googleapis.com/auth/youtubepartner |
https://www.googleapis.com/auth/youtube.upload |
https://www.googleapis.com/auth/youtube |
https://www.googleapis.com/auth/youtube.force-ssl |
参数
下表列出了此查询支持的参数。列出的所有参数都是查询参数。
参数 |
必需参数 |
videoId |
string
videoId 参数用于指定为其提供自定义视频缩略图的 YouTube 视频 ID。 |
可选参数 |
onBehalfOfContentOwner |
string
注意:此参数仅适用于 YouTube 内容合作伙伴。
onBehalfOfContentOwner 参数用于指明该请求的授权凭据会标识代表参数值中指定的内容所有者的 YouTube 内容管理系统用户。此参数适用于拥有和管理众多不同 YouTube 频道的 YouTube 内容合作伙伴。它可让内容所有者在一次身份验证后获得访问其所有视频和频道数据的权限,而无需为每个频道提供身份验证凭据。用户用于进行身份验证的实际 CMS 账号必须与指定的 YouTube 内容所有者相关联。 |
请求正文
请求正文包含您正在上传的缩略图。请求正文未包含 thumbnail
资源。
响应
如果成功,此方法将返回采用以下结构的响应正文:
{
"kind": "youtube#thumbnailSetResponse",
"etag": etag,
"items": [
thumbnail resource
]
}
属性
下表定义了此资源中显示的属性:
属性 |
kind |
string 标识 API 资源的类型。其值为 youtube#thumbnailSetResponse 。 |
etag |
etag
此资源的 Etag。 |
items[] |
list
缩略图列表。 |
错误
下表列出了 API 在响应对此方法的调用时可能会返回的错误消息。如需了解详情,请参阅错误消息文档。
错误类型 |
错误详情 |
说明 |
badRequest (400) |
invalidImage |
提供的图片内容无效。 |
badRequest (400) |
mediaBodyRequired |
请求不包含图片内容。 |
forbidden (403) |
forbidden |
无法为指定视频设置缩略图。请求可能未获得适当授权。 |
forbidden (403) |
forbidden |
经过身份验证的用户无权上传和设置自定义视频缩略图。 |
notFound (404) |
videoNotFound |
找不到你尝试插入缩略图的视频。检查请求的 videoId 参数的值,确保其正确无误。 |
tooManyRequests (429) |
uploadRateLimitExceeded |
频道近期上传的缩略图过多。请稍后再次尝试该请求。 |
试试看!
使用 APIs Explorer 调用此 API 并查看 API 请求和响应。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-04-26。
[null,null,["最后更新时间 (UTC):2024-04-26。"],[],[],null,["# Thumbnails: set\n\nUploads a custom video thumbnail to YouTube and sets it for a video.\n\nThis method supports media upload. Uploaded files must conform to these constraints:\n\n- **Maximum file size:** 2MB\n- **Accepted Media MIME types:** `image/jpeg`, `image/png`, `application/octet-stream`\n\n**Quota impact:** A call to this method has a [quota cost](/youtube/v3/getting-started#quota) of approximately 50 units.\n\nCommon use cases\n----------------\n\nThe list below shows common use cases for this method. Hover over a use case to see its description, or click on a use case to load sample parameter values in the APIs Explorer. You can open the [fullscreen APIs Explorer](#) to see code samples that dynamically update to reflect the parameter values entered in the Explorer.\n\nThe table below shows common use cases for this method. You can click on a use case name to load sample parameter values in the APIs Explorer. Or you can see code samples for a use case in the fullscreen APIs Explorer by clicking on the code icon below a use case name. In the fullscreen UI, you can update parameter and property values and the code samples will dynamically update to reflect the values you enter. \nThis method has one common use case, which is described below. The buttons below the description populate the APIs Explorer with sample values or open the fullscreen APIs Explorer to show code samples that use those values. The code samples also dynamically update if you change the values.\n\n\u003cbr /\u003e\n\nRequest\n-------\n\n### HTTP request\n\n```\nPOST https://www.googleapis.com/upload/youtube/v3/thumbnails/set\n```\n\n### Authorization\n\nThis request requires authorization with at least one of the following scopes ([read more about authentication and authorization](/youtube/v3/guides/authentication)).\n\n| Scope |\n|-----------------------------------------------------|\n| `https://www.googleapis.com/auth/youtubepartner` |\n| `https://www.googleapis.com/auth/youtube.upload` |\n| `https://www.googleapis.com/auth/youtube` |\n| `https://www.googleapis.com/auth/youtube.force-ssl` |\n\n### Parameters\n\nThe following table lists the parameters that this query supports. All of the parameters listed are query parameters.\n\n| Parameters ||\n|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|\n| **Required parameters** |||\n| `videoId` | `string` The **videoId** parameter specifies a YouTube video ID for which the custom video thumbnail is being provided. |\n| **Optional parameters** |||\n| `onBehalfOfContentOwner` | `string` **Note:** This parameter is intended exclusively for YouTube content partners. The **onBehalfOfContentOwner** parameter indicates that the request's authorization credentials identify a YouTube CMS user who is acting on behalf of the content owner specified in the parameter value. This parameter is intended for YouTube content partners that own and manage many different YouTube channels. It allows content owners to authenticate once and get access to all their video and channel data, without having to provide authentication credentials for each individual channel. The actual CMS account that the user authenticates with must be linked to the specified YouTube content owner. |\n\n### Request body\n\nThe body of the request contains the thumbnail image that you are uploading. The request body does not contain a [thumbnail](/youtube/v3/docs/thumbnails#resource-representation) resource.\n\nResponse\n--------\n\nIf successful, this method returns a response body with the following structure: \n\n```objective-c\n{\n \"kind\": \"youtube#thumbnailSetResponse\",\n \"etag\": etag,\n \"items\": [\n thumbnail resource\n ]\n}\n```\n\n### Properties\n\nThe following table defines the properties that appear in this resource:\n\n| Properties ||\n|-----------|------------------------------------------------------------------------------------------------|\n| `kind` | `string` Identifies the API resource's type. The value will be `youtube#thumbnailSetResponse`. |\n| `etag` | `etag` The Etag of this resource. |\n| `items[]` | `list` A list of thumbnails. |\n\nErrors\n------\n\nThe following table identifies error messages that the API could return in response to a call to this method. Please see the [error message](/youtube/v3/docs/errors) documentation for more detail.\n\n| Error type | Error detail | Description |\n|-------------------------|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `badRequest (400)` | `invalidImage` | The provided image content is invalid. |\n| `badRequest (400)` | `mediaBodyRequired` | The request does not include the image content. |\n| `forbidden (403)` | `forbidden` | The thumbnail can't be set for the specified video. The request might not be properly authorized. |\n| `forbidden (403)` | `forbidden` | The authenticated user doesn't have permissions to upload and set custom video thumbnails. |\n| `notFound (404)` | `videoNotFound` | The video that you are trying to insert a thumbnail image for cannot be found. Check the value of the request's `videoId` parameter to ensure that it is correct. |\n| `tooManyRequests (429)` | `uploadRateLimitExceeded` | The channel has uploaded too many thumbnails recently. Please try the request again later. |\n\nTry it!\n-------\n\nUse the APIs Explorer to call this API and see the API request and response."]]