Video API, gRPC: VideoService.PerformAction
Performs a specific action on a video, such as publishing or unpublishing.
gRPC request
rpc PerformAction (PerformVideoActionRequest) returns (operation.Operation)
PerformVideoActionRequest
{
"video_id": "string",
// Includes only one of the fields `publish`, `unpublish`
"publish": "PublishVideoAction",
"unpublish": "UnpublishVideoAction"
// end of the list of possible fields
}
|
Field |
Description |
|
video_id |
string Required field. ID of the video on which to perform the action. The maximum string length in characters is 50. |
|
publish |
Publish the video, making it available for watching. Includes only one of the fields Specifies the action to perform on the video (exactly one must be chosen). |
|
unpublish |
Unpublish the video, making it unavailable for watching. Includes only one of the fields Specifies the action to perform on the video (exactly one must be chosen). |
PublishVideoAction
Parameters for the publish action.
|
Field |
Description |
|
Empty |
|
UnpublishVideoAction
Parameters for the unpublish action.
|
Field |
Description |
|
Empty |
|
operation.Operation
{
"id": "string",
"description": "string",
"created_at": "google.protobuf.Timestamp",
"created_by": "string",
"modified_at": "google.protobuf.Timestamp",
"done": "bool",
"metadata": {
"video_id": "string"
},
// Includes only one of the fields `error`, `response`
"error": "google.rpc.Status",
"response": {
"id": "string",
"channel_id": "string",
"title": "string",
"description": "string",
"thumbnail_id": "string",
"status": "VideoStatus",
"error_message": "string",
"visibility_status": "VisibilityStatus",
"duration": "google.protobuf.Duration",
"auto_transcode": "AutoTranscode",
"style_preset_id": "string",
"enable_ad": "google.protobuf.BoolValue",
"subtitle_ids": [
"string"
],
"features": {
"summary": {
"result": "FeatureResult",
"urls": [
{
"url": "string",
"track_index": "int64",
"src_lang": "string"
}
]
}
},
// Includes only one of the fields `tusd`
"tusd": {
"url": "string",
"file_size": "int64"
},
// end of the list of possible fields
// Includes only one of the fields `public_access`, `sign_url_access`
"public_access": "VideoPublicAccessRights",
"sign_url_access": "VideoSignURLAccessRights",
// end of the list of possible fields
"created_at": "google.protobuf.Timestamp",
"updated_at": "google.protobuf.Timestamp",
"labels": "map<string, string>"
}
// end of the list of possible fields
}
An Operation resource. For more information, see Operation.
|
Field |
Description |
|
id |
string ID of the operation. |
|
description |
string Description of the operation. 0-256 characters long. |
|
created_at |
Creation timestamp. |
|
created_by |
string ID of the user or service account who initiated the operation. |
|
modified_at |
The time when the Operation resource was last modified. |
|
done |
bool If the value is |
|
metadata |
Service-specific metadata associated with the operation. |
|
error |
The error result of the operation in case of failure or cancellation. Includes only one of the fields The operation result. |
|
response |
The normal response of the operation in case of success. Includes only one of the fields The operation result. |
PerformVideoActionMetadata
|
Field |
Description |
|
video_id |
string ID of the video on which the action is being performed. |
Video
Main entity representing a video in the platform.
|
Field |
Description |
|
id |
string Unique identifier of the video. |
|
channel_id |
string Identifier of the channel where the video is created and managed. |
|
title |
string Title of the video displayed to users in interfaces and players. |
|
description |
string Detailed description of the video content and context. |
|
thumbnail_id |
string Identifier of the thumbnail image used to represent the video visually. |
|
status |
enum VideoStatus Current processing status of the video.
|
|
error_message |
string Error message describing the reason for video processing failure, if any. |
|
visibility_status |
enum VisibilityStatus Current visibility status controlling whether the video is publicly available.
|
|
duration |
Total duration of the video. |
|
auto_transcode |
enum AutoTranscode Auto-transcoding setting that controls the video processing workflow.
|
|
style_preset_id |
string Identifier of the style preset applied to the video during processing. |
|
enable_ad |
Controls the ability to display advertisements for this video. |
|
subtitle_ids[] |
string List of identifiers defining the active subtitles available for the video. |
|
features |
Additional video processing features and their results, such as summarization. |
|
tusd |
Upload video using the TUS (Tus Resumable Upload Protocol) protocol. Includes only one of the fields Specifies the video upload source method (one source variant must be chosen). |
|
public_access |
Allows unrestricted public access to the video via direct link. Includes only one of the fields Specifies the video access permission settings. |
|
sign_url_access |
Restricts video access using URL signatures for secure time-limited access. Includes only one of the fields Specifies the video access permission settings. |
|
created_at |
Timestamp when the video was initially created in the system. |
|
updated_at |
Timestamp of the last modification to the video or its metadata. |
|
labels |
object (map<string, string>) Custom user-defined labels as |
VideoFeatures
Contains additional processing features and their results for the video.
|
Field |
Description |
|
summary |
Results of the video content summarization process. |
Summary
Contains the results of video summarization.
|
Field |
Description |
|
result |
enum FeatureResult Current status of the summarization process.
|
|
urls[] |
List of URLs to summarization results for different audio tracks. |
SummaryURL
Contains a URL to a summarization result for a specific audio track.
|
Field |
Description |
|
url |
string URL to the summarization result file. |
|
track_index |
int64 Input audio track index (one-based) that was summarized. |
|
src_lang |
string Source track language represented as a three-letter code according to ISO 639-2/T. |
VideoTUSDSource
Represents a video upload source using the TUS (Tus Resumable Upload Protocol) protocol.
This is a push-based upload method where the client pushes data to the server.
@see https://tus.io/
|
Field |
Description |
|
url |
string URL endpoint for uploading the video via the TUS protocol. |
|
file_size |
int64 Total size of the uploaded file, in bytes. |
VideoPublicAccessRights
Represents public access rights for a video.
When this access type is set, the video is publicly accessible via direct link.
|
Field |
Description |
|
Empty |
|
VideoSignURLAccessRights
Represents access rights controlled by URL signatures.
When this access type is set, the video is accessible only via properly signed temporary link.
|
Field |
Description |
|
Empty |
|