Crate google_youtube3 [] [src]

This documentation was generated from YouTube crate version 1.0.5+20170130, where 20170130 is the exact revision of the youtube:v3 schema built by the mako code generator v1.0.5.

Everything else about the YouTube v3 API can be found at the official documentation site. The original source code is on github.

Features

Handle the following Resources with ease from the central hub ...

Upload supported by ...

Download supported by ...

Subscription supported by ...

Not what you are looking for ? Find all other Google APIs in their Rust documentation index.

Structure of this Library

The API is structured into the following primary items:

  • Hub
    • a central object to maintain state and allow accessing all Activities
    • creates Method Builders which in turn allow access to individual Call Builders
  • Resources
    • primary types that you can apply Activities to
    • a collection of properties and Parts
    • Parts
      • a collection of properties
      • never directly used in Activities
  • Activities
    • operations to apply to Resources

All structures are marked with applicable traits to further categorize them and ease browsing.

Generally speaking, you can invoke Activities like this:

let r = hub.resource().activity(...).doit()

Or specifically ...

let r = hub.videos().rate(...).doit()
let r = hub.videos().report_abuse(...).doit()
let r = hub.videos().get_rating(...).doit()
let r = hub.videos().list(...).doit()
let r = hub.videos().insert(...).doit()
let r = hub.videos().update(...).doit()
let r = hub.videos().delete(...).doit()

The resource() and activity(...) calls create builders. The second one dealing with Activities supports various methods to configure the impending operation (not shown here). It is made such that all required arguments have to be specified right away (i.e. (...)), whereas all optional ones can be build up as desired. The doit() method performs the actual communication with the server and returns the respective result.

Usage

Setting up your Project

To use this library, you would put the following lines into your Cargo.toml file:

[dependencies]
google-youtube3 = "*"

A complete example

extern crate hyper;
extern crate hyper_rustls;
extern crate yup_oauth2 as oauth2;
extern crate google_youtube3 as youtube3;
use youtube3::{Result, Error};
use std::default::Default;
use oauth2::{Authenticator, DefaultAuthenticatorDelegate, ApplicationSecret, MemoryStorage};
use youtube3::YouTube;
 
// Get an ApplicationSecret instance by some means. It contains the `client_id` and 
// `client_secret`, among other things.
let secret: ApplicationSecret = Default::default();
// Instantiate the authenticator. It will choose a suitable authentication flow for you, 
// unless you replace  `None` with the desired Flow.
// Provide your own `AuthenticatorDelegate` to adjust the way it operates and get feedback about 
// what's going on. You probably want to bring in your own `TokenStorage` to persist tokens and
// retrieve them from storage.
let auth = Authenticator::new(&secret, DefaultAuthenticatorDelegate,
                              hyper::Client::with_connector(hyper::net::HttpsConnector::new(hyper_rustls::TlsClient::new())),
                              <MemoryStorage as Default>::default(), None);
let mut hub = YouTube::new(hyper::Client::with_connector(hyper::net::HttpsConnector::new(hyper_rustls::TlsClient::new())), auth);
// You can configure optional parameters by calling the respective setters at will, and
// execute the final call using `doit()`.
// Values shown here are possibly random and not representative !
let result = hub.videos().list("part")
             .video_category_id("nonumy")
             .region_code("dolores")
             .page_token("gubergren")
             .on_behalf_of_content_owner("sadipscing")
             .my_rating("aliquyam")
             .max_width(35)
             .max_results(40)
             .max_height(80)
             .locale("justo")
             .id("et")
             .hl("et")
             .chart("diam")
             .doit();
 
match result {
    Err(e) => match e {
        // The Error enum provides details about what exactly happened.
        // You can also just use its `Debug`, `Display` or `Error` traits
         Error::HttpError(_)
        |Error::MissingAPIKey
        |Error::MissingToken(_)
        |Error::Cancelled
        |Error::UploadSizeLimitExceeded(_, _)
        |Error::Failure(_)
        |Error::BadRequest(_)
        |Error::FieldClash(_)
        |Error::JsonDecodeError(_, _) => println!("{}", e),
    },
    Ok(res) => println!("Success: {:?}", res),
}

Handling Errors

All errors produced by the system are provided either as Result enumeration as return value of the doit() methods, or handed as possibly intermediate results to either the Hub Delegate, or the Authenticator Delegate.

When delegates handle errors or intermediate values, they may have a chance to instruct the system to retry. This makes the system potentially resilient to all kinds of errors.

Uploads and Downloads

If a method supports downloads, the response body, which is part of the Result, should be read by you to obtain the media. If such a method also supports a Response Result, it will return that by default. You can see it as meta-data for the actual media. To trigger a media download, you will have to set up the builder by making this call: .param("alt", "media").

Methods supporting uploads can do so using up to 2 different protocols: simple and resumable. The distinctiveness of each is represented by customized doit(...) methods, which are then named upload(...) and upload_resumable(...) respectively.

Customization and Callbacks

You may alter the way an doit() method is called by providing a delegate to the Method Builder before making the final doit() call. Respective methods will be called to provide progress information, as well as determine whether the system should retry on failure.

The delegate trait is default-implemented, allowing you to customize it with minimal effort.

Optional Parts in Server-Requests

All structures provided by this library are made to be enocodable and decodable via json. Optionals are used to indicate that partial requests are responses are valid. Most optionals are are considered Parts which are identifiable by name, which will be sent to the server to indicate either the set parts of the request or the desired parts in the response.

Builder Arguments

Using method builders, you are able to prepare an action call by repeatedly calling it's methods. These will always take a single argument, for which the following statements are true.

Arguments will always be copied or cloned into the builder, to make them independent of their original life times.

Structs

AccessPolicy

Rights management policy for YouTube resources.

Activity

An activity resource contains information about an action that a particular channel, or user, has taken on YouTube.The actions reported in activity feeds include rating a video, sharing a video, marking a video as a favorite, commenting on a video, uploading a video, and so forth. Each activity resource identifies the type of action, the channel associated with the action, and the resource(s) associated with the action, such as the video that was rated or uploaded.

ActivityContentDetails

Details about the content of an activity: the video that was shared, the channel that was subscribed to, etc.

ActivityContentDetailsBulletin

Details about a channel bulletin post.

ActivityContentDetailsChannelItem

Details about a resource which was added to a channel.

ActivityContentDetailsComment

Information about a resource that received a comment.

ActivityContentDetailsFavorite

Information about a video that was marked as a favorite video.

ActivityContentDetailsLike

Information about a resource that received a positive (like) rating.

ActivityContentDetailsPlaylistItem

Information about a new playlist item.

ActivityContentDetailsPromotedItem

Details about a resource which is being promoted.

ActivityContentDetailsRecommendation

Information that identifies the recommended resource.

ActivityContentDetailsSocial

Details about a social network post.

ActivityContentDetailsSubscription

Information about a channel that a user subscribed to.

ActivityContentDetailsUpload

Information about the uploaded video.

ActivityInsertCall

Posts a bulletin for a specific channel. (The user submitting the request must be authorized to act on the channel's behalf.)

ActivityListCall

Returns a list of channel activity events that match the request criteria. For example, you can retrieve events associated with a particular channel, events associated with the user's subscriptions and Google+ friends, or the YouTube home page feed, which is customized for each user.

ActivityListResponse

There is no detailed description.

ActivityMethods

A builder providing access to all methods supported on activity resources. It is not used directly, but through the YouTube hub.

ActivitySnippet

Basic details about an activity, including title, description, thumbnails, activity type and group.

Caption

A caption resource represents a YouTube caption track. A caption track is associated with exactly one YouTube video.

CaptionDeleteCall

Deletes a specified caption track.

CaptionDownloadCall

Downloads a caption track. The caption track is returned in its original format unless the request specifies a value for the tfmt parameter and in its original language unless the request specifies a value for the tlang parameter.

CaptionInsertCall

Uploads a caption track.

CaptionListCall

Returns a list of caption tracks that are associated with a specified video. Note that the API response does not contain the actual captions and that the captions.download method provides the ability to retrieve a caption track.

CaptionListResponse

There is no detailed description.

CaptionMethods

A builder providing access to all methods supported on caption resources. It is not used directly, but through the YouTube hub.

CaptionSnippet

Basic details about a caption track, such as its language and name.

CaptionUpdateCall

Updates a caption track. When updating a caption track, you can change the track's draft status, upload a new caption file for the track, or both.

CdnSettings

Brief description of the live stream cdn settings.

Channel

A channel resource contains information about a YouTube channel.

ChannelAuditDetails

The auditDetails object encapsulates channel data that is relevant for YouTube Partners during the audit process.

ChannelBannerInsertCall

Uploads a channel banner image to YouTube. This method represents the first two steps in a three-step process to update the banner image for a channel:

ChannelBannerMethods

A builder providing access to all methods supported on channelBanner resources. It is not used directly, but through the YouTube hub.

ChannelBannerResource

A channel banner returned as the response to a channel_banner.insert call.

ChannelBrandingSettings

Branding properties of a YouTube channel.

ChannelContentDetails

Details about the content of a channel.

ChannelContentDetailsRelatedPlaylists

There is no detailed description.

ChannelContentOwnerDetails

The contentOwnerDetails object encapsulates channel data that is relevant for YouTube Partners linked with the channel.

ChannelConversionPing

Pings that the app shall fire (authenticated by biscotti cookie). Each ping has a context, in which the app must fire the ping, and a url identifying the ping.

ChannelConversionPings

The conversionPings object encapsulates information about conversion pings that need to be respected by the channel.

ChannelListCall

Returns a collection of zero or more channel resources that match the request criteria.

ChannelListResponse

There is no detailed description.

ChannelLocalization

Channel localization setting

ChannelMethods

A builder providing access to all methods supported on channel resources. It is not used directly, but through the YouTube hub.

ChannelProfileDetails

There is no detailed description.

ChannelSection

There is no detailed description.

ChannelSectionContentDetails

Details about a channelsection, including playlists and channels.

ChannelSectionDeleteCall

Deletes a channelSection.

ChannelSectionInsertCall

Adds a channelSection for the authenticated user's channel.

ChannelSectionListCall

Returns channelSection resources that match the API request criteria.

ChannelSectionListResponse

There is no detailed description.

ChannelSectionLocalization

ChannelSection localization setting

ChannelSectionMethods

A builder providing access to all methods supported on channelSection resources. It is not used directly, but through the YouTube hub.

ChannelSectionSnippet

Basic details about a channel section, including title, style and position.

ChannelSectionTargeting

ChannelSection targeting setting.

ChannelSectionUpdateCall

Update a channelSection.

ChannelSettings

Branding properties for the channel view.

ChannelSnippet

Basic details about a channel, including title, description and thumbnails. Next available id: 15.

ChannelStatistics

Statistics about a channel: number of subscribers, number of videos in the channel, etc.

ChannelStatus

JSON template for the status part of a channel.

ChannelTopicDetails

Freebase topic information related to the channel.

ChannelUpdateCall

Updates a channel's metadata. Note that this method currently only supports updates to the channel resource's brandingSettings and invideoPromotion objects and their child properties.

Comment

A comment represents a single YouTube comment.

CommentDeleteCall

Deletes a comment.

CommentInsertCall

Creates a reply to an existing comment. Note: To create a top-level comment, use the commentThreads.insert method.

CommentListCall

Returns a list of comments that match the API request parameters.

CommentListResponse

There is no detailed description.

CommentMarkAsSpamCall

Expresses the caller's opinion that one or more comments should be flagged as spam.

CommentMethods

A builder providing access to all methods supported on comment resources. It is not used directly, but through the YouTube hub.

CommentSetModerationStatuCall

Sets the moderation status of one or more comments. The API request must be authorized by the owner of the channel or video associated with the comments.

CommentSnippet

Basic details about a comment, such as its author and text.

CommentThread

A comment thread represents information that applies to a top level comment and all its replies. It can also include the top level comment itself and some of the replies.

CommentThreadInsertCall

Creates a new top-level comment. To add a reply to an existing comment, use the comments.insert method instead.

CommentThreadListCall

Returns a list of comment threads that match the API request parameters.

CommentThreadListResponse

There is no detailed description.

CommentThreadMethods

A builder providing access to all methods supported on commentThread resources. It is not used directly, but through the YouTube hub.

CommentThreadReplies

Comments written in (direct or indirect) reply to the top level comment.

CommentThreadSnippet

Basic details about a comment thread.

CommentThreadUpdateCall

Modifies the top-level comment in a comment thread.

CommentUpdateCall

Modifies a comment.

ContentRating

Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 69

DefaultDelegate

A delegate with a conservative default implementation, which is used if no other delegate is set.

ErrorResponse

A utility to represent detailed errors we might see in case there are BadRequests. The latter happen if the sent parameters or request structures are unsound

FanFundingEvent

A fanFundingEvent resource represents a fan funding event on a YouTube channel. Fan funding events occur when a user gives one-time monetary support to the channel owner.

FanFundingEventListCall

Lists fan funding events for a channel.

FanFundingEventListResponse

There is no detailed description.

FanFundingEventMethods

A builder providing access to all methods supported on fanFundingEvent resources. It is not used directly, but through the YouTube hub.

FanFundingEventSnippet

There is no detailed description.

GeoPoint

Geographical coordinates of a point, in WGS84.

GuideCategory

A guideCategory resource identifies a category that YouTube algorithmically assigns based on a channel's content or other indicators, such as the channel's popularity. The list is similar to video categories, with the difference being that a video's uploader can assign a video category but only YouTube can assign a channel category.

GuideCategoryListCall

Returns a list of categories that can be associated with YouTube channels.

GuideCategoryListResponse

There is no detailed description.

GuideCategoryMethods

A builder providing access to all methods supported on guideCategory resources. It is not used directly, but through the YouTube hub.

GuideCategorySnippet

Basic details about a guide category.

I18nLanguage

An i18nLanguage resource identifies a UI language currently supported by YouTube.

I18nLanguageListCall

Returns a list of application languages that the YouTube website supports.

I18nLanguageListResponse

There is no detailed description.

I18nLanguageMethods

A builder providing access to all methods supported on i18nLanguage resources. It is not used directly, but through the YouTube hub.

I18nLanguageSnippet

Basic details about an i18n language, such as language code and human-readable name.

I18nRegion

A i18nRegion resource identifies a region where YouTube is available.

I18nRegionListCall

Returns a list of content regions that the YouTube website supports.

I18nRegionListResponse

There is no detailed description.

I18nRegionMethods

A builder providing access to all methods supported on i18nRegion resources. It is not used directly, but through the YouTube hub.

I18nRegionSnippet

Basic details about an i18n region, such as region code and human-readable name.

ImageSettings

Branding properties for images associated with the channel.

IngestionInfo

Describes information necessary for ingesting an RTMP or an HTTP stream.

InvideoBranding

There is no detailed description.

InvideoPosition

Describes the spatial position of a visual widget inside a video. It is a union of various position types, out of which only will be set one.

InvideoPromotion

Describes an invideo promotion campaign consisting of multiple promoted items. A campaign belongs to a single channel_id.

InvideoTiming

Describes a temporal position of a visual widget inside a video.

LanguageTag

There is no detailed description.

LiveBroadcast

A liveBroadcast resource represents an event that will be streamed, via live video, on YouTube.

LiveBroadcastBindCall

Binds a YouTube broadcast to a stream or removes an existing binding between a broadcast and a stream. A broadcast can only be bound to one video stream, though a video stream may be bound to more than one broadcast.

LiveBroadcastContentDetails

Detailed settings of a broadcast.

LiveBroadcastControlCall

Controls the settings for a slate that can be displayed in the broadcast stream.

LiveBroadcastDeleteCall

Deletes a broadcast.

LiveBroadcastInsertCall

Creates a broadcast.

LiveBroadcastListCall

Returns a list of YouTube broadcasts that match the API request parameters.

LiveBroadcastListResponse

There is no detailed description.

LiveBroadcastMethods

A builder providing access to all methods supported on liveBroadcast resources. It is not used directly, but through the YouTube hub.

LiveBroadcastSnippet

There is no detailed description.

LiveBroadcastStatistics

Statistics about the live broadcast. These represent a snapshot of the values at the time of the request. Statistics are only returned for live broadcasts.

LiveBroadcastStatus

There is no detailed description.

LiveBroadcastTopic

There is no detailed description.

LiveBroadcastTopicDetails

There is no detailed description.

LiveBroadcastTopicSnippet

There is no detailed description.

LiveBroadcastTransitionCall

Changes the status of a YouTube live broadcast and initiates any processes associated with the new status. For example, when you transition a broadcast's status to testing, YouTube starts to transmit video to that broadcast's monitor stream. Before calling this method, you should confirm that the value of the status.streamStatus property for the stream bound to your broadcast is active.

LiveBroadcastUpdateCall

Updates a broadcast. For example, you could modify the broadcast settings defined in the liveBroadcast resource's contentDetails object.

LiveChatBan

A liveChatBan resource represents a ban for a YouTube live chat.

LiveChatBanDeleteCall

Removes a chat ban.

LiveChatBanInsertCall

Adds a new ban to the chat.

LiveChatBanMethods

A builder providing access to all methods supported on liveChatBan resources. It is not used directly, but through the YouTube hub.

LiveChatBanSnippet

There is no detailed description.

LiveChatFanFundingEventDetails

There is no detailed description.

LiveChatMessage

A liveChatMessage resource represents a chat message in a YouTube Live Chat.

LiveChatMessageAuthorDetails

There is no detailed description.

LiveChatMessageDeleteCall

Deletes a chat message.

LiveChatMessageDeletedDetails

There is no detailed description.

LiveChatMessageInsertCall

Adds a message to a live chat.

LiveChatMessageListCall

Lists live chat messages for a specific chat.

LiveChatMessageListResponse

There is no detailed description.

LiveChatMessageMethods

A builder providing access to all methods supported on liveChatMessage resources. It is not used directly, but through the YouTube hub.

LiveChatMessageRetractedDetails

There is no detailed description.

LiveChatMessageSnippet

There is no detailed description.

LiveChatModerator

A liveChatModerator resource represents a moderator for a YouTube live chat. A chat moderator has the ability to ban/unban users from a chat, remove message, etc.

LiveChatModeratorDeleteCall

Removes a chat moderator.

LiveChatModeratorInsertCall

Adds a new moderator for the chat.

LiveChatModeratorListCall

Lists moderators for a live chat.

LiveChatModeratorListResponse

There is no detailed description.

LiveChatModeratorMethods

A builder providing access to all methods supported on liveChatModerator resources. It is not used directly, but through the YouTube hub.

LiveChatModeratorSnippet

There is no detailed description.

LiveChatPollClosedDetails

There is no detailed description.

LiveChatPollEditedDetails

There is no detailed description.

LiveChatPollItem

There is no detailed description.

LiveChatPollOpenedDetails

There is no detailed description.

LiveChatPollVotedDetails

There is no detailed description.

LiveChatSuperChatDetails

There is no detailed description.

LiveChatTextMessageDetails

There is no detailed description.

LiveChatUserBannedMessageDetails

There is no detailed description.

LiveStream

A live stream describes a live ingestion point.

LiveStreamConfigurationIssue

There is no detailed description.

LiveStreamContentDetails

Detailed settings of a stream.

LiveStreamDeleteCall

Deletes a video stream.

LiveStreamHealthStatus

There is no detailed description.

LiveStreamInsertCall

Creates a video stream. The stream enables you to send your video to YouTube, which can then broadcast the video to your audience.

LiveStreamListCall

Returns a list of video streams that match the API request parameters.

LiveStreamListResponse

There is no detailed description.

LiveStreamMethods

A builder providing access to all methods supported on liveStream resources. It is not used directly, but through the YouTube hub.

LiveStreamSnippet

There is no detailed description.

LiveStreamStatus

Brief description of the live stream status.

LiveStreamUpdateCall

Updates a video stream. If the properties that you want to change cannot be updated, then you need to create a new stream with the proper settings.

LocalizedProperty

There is no detailed description.

LocalizedString

There is no detailed description.

MethodInfo

Contains information about an API request.

MonitorStreamInfo

Settings and Info of the monitor stream

MultiPartReader

Provides a Read interface that converts multiple parts into the protocol identified by RFC2387. Note: This implementation is just as rich as it needs to be to perform uploads to google APIs, and might not be a fully-featured implementation.

PageInfo

Paging details for lists of resources, including total number of items available and number of resources returned in a single page.

Playlist

A playlist resource represents a YouTube playlist. A playlist is a collection of videos that can be viewed sequentially and shared with other users. A playlist can contain up to 200 videos, and YouTube does not limit the number of playlists that each user creates. By default, playlists are publicly visible to other users, but playlists can be public or private.

PlaylistContentDetails

There is no detailed description.

PlaylistDeleteCall

Deletes a playlist.

PlaylistInsertCall

Creates a playlist.

PlaylistItem

A playlistItem resource identifies another resource, such as a video, that is included in a playlist. In addition, the playlistItem resource contains details about the included resource that pertain specifically to how that resource is used in that playlist.

PlaylistItemContentDetails

There is no detailed description.

PlaylistItemDeleteCall

Deletes a playlist item.

PlaylistItemInsertCall

Adds a resource to a playlist.

PlaylistItemListCall

Returns a collection of playlist items that match the API request parameters. You can retrieve all of the playlist items in a specified playlist or retrieve one or more playlist items by their unique IDs.

PlaylistItemListResponse

There is no detailed description.

PlaylistItemMethods

A builder providing access to all methods supported on playlistItem resources. It is not used directly, but through the YouTube hub.

PlaylistItemSnippet

Basic details about a playlist, including title, description and thumbnails.

PlaylistItemStatus

Information about the playlist item's privacy status.

PlaylistItemUpdateCall

Modifies a playlist item. For example, you could update the item's position in the playlist.

PlaylistListCall

Returns a collection of playlists that match the API request parameters. For example, you can retrieve all playlists that the authenticated user owns, or you can retrieve one or more playlists by their unique IDs.

PlaylistListResponse

There is no detailed description.

PlaylistLocalization

Playlist localization setting

PlaylistMethods

A builder providing access to all methods supported on playlist resources. It is not used directly, but through the YouTube hub.

PlaylistPlayer

There is no detailed description.

PlaylistSnippet

Basic details about a playlist, including title, description and thumbnails.

PlaylistStatus

There is no detailed description.

PlaylistUpdateCall

Modifies a playlist. For example, you could change a playlist's title, description, or privacy status.

PromotedItem

Describes a single promoted item.

PromotedItemId

Describes a single promoted item id. It is a union of various possible types.

PropertyValue

A pair Property / Value.

ResourceId

A resource id is a generic reference that points to another YouTube resource.

SearchListCall

Returns a collection of search results that match the query parameters specified in the API request. By default, a search result set identifies matching video, channel, and playlist resources, but you can also configure queries to only retrieve a specific type of resource.

SearchListResponse

There is no detailed description.

SearchMethods

A builder providing access to all methods supported on search resources. It is not used directly, but through the YouTube hub.

SearchResult

A search result contains information about a YouTube video, channel, or playlist that matches the search parameters specified in an API request. While a search result points to a uniquely identifiable resource, like a video, it does not have its own persistent data.

SearchResultSnippet

Basic details about a search result, including title, description and thumbnails of the item referenced by the search result.

Sponsor

A sponsor resource represents a sponsor for a YouTube channel. A sponsor provides recurring monetary support to a creator and receives special benefits.

SponsorListCall

Lists sponsors for a channel.

SponsorListResponse

There is no detailed description.

SponsorMethods

A builder providing access to all methods supported on sponsor resources. It is not used directly, but through the YouTube hub.

SponsorSnippet

There is no detailed description.

Subscription

A subscription resource contains information about a YouTube user subscription. A subscription notifies a user when new videos are added to a channel or when another user takes one of several actions on YouTube, such as uploading a video, rating a video, or commenting on a video.

SubscriptionContentDetails

Details about the content to witch a subscription refers.

SubscriptionDeleteCall

Deletes a subscription.

SubscriptionInsertCall

Adds a subscription for the authenticated user's channel.

SubscriptionListCall

Returns subscription resources that match the API request criteria.

SubscriptionListResponse

There is no detailed description.

SubscriptionMethods

A builder providing access to all methods supported on subscription resources. It is not used directly, but through the YouTube hub.

SubscriptionSnippet

Basic details about a subscription, including title, description and thumbnails of the subscribed item.

SubscriptionSubscriberSnippet

Basic details about a subscription's subscriber including title, description, channel ID and thumbnails.

SuperChatEvent

A superChatEvent resource represents a Super Chat purchase on a YouTube channel.

SuperChatEventListCall

Lists Super Chat events for a channel.

SuperChatEventListResponse

There is no detailed description.

SuperChatEventMethods

A builder providing access to all methods supported on superChatEvent resources. It is not used directly, but through the YouTube hub.

SuperChatEventSnippet

There is no detailed description.

Thumbnail

A thumbnail is an image representing a YouTube resource.

ThumbnailDetails

Internal representation of thumbnails for a YouTube resource.

ThumbnailMethods

A builder providing access to all methods supported on thumbnail resources. It is not used directly, but through the YouTube hub.

ThumbnailSetCall

Uploads a custom video thumbnail to YouTube and sets it for a video.

ThumbnailSetResponse

There is no detailed description.

TokenPagination

Stub token pagination template to suppress results.

Video

A video resource represents a YouTube video.

VideoAbuseReport

There is no detailed description.

VideoAbuseReportReason

A videoAbuseReportReason resource identifies a reason that a video could be reported as abusive. Video abuse report reasons are used with video.ReportAbuse.

VideoAbuseReportReasonListCall

Returns a list of abuse reasons that can be used for reporting abusive videos.

VideoAbuseReportReasonListResponse

There is no detailed description.

VideoAbuseReportReasonMethods

A builder providing access to all methods supported on videoAbuseReportReason resources. It is not used directly, but through the YouTube hub.

VideoAbuseReportReasonSnippet

Basic details about a video category, such as its localized title.

VideoAbuseReportSecondaryReason

There is no detailed description.

VideoAgeGating

There is no detailed description.

VideoCategory

A videoCategory resource identifies a category that has been or could be associated with uploaded videos.

VideoCategoryListCall

Returns a list of categories that can be associated with YouTube videos.

VideoCategoryListResponse

There is no detailed description.

VideoCategoryMethods

A builder providing access to all methods supported on videoCategory resources. It is not used directly, but through the YouTube hub.

VideoCategorySnippet

Basic details about a video category, such as its localized title.

VideoContentDetails

Details about the content of a YouTube Video.

VideoContentDetailsRegionRestriction

DEPRECATED Region restriction of the video.

VideoDeleteCall

Deletes a YouTube video.

VideoFileDetails

Describes original video file properties, including technical details about audio and video streams, but also metadata information like content length, digitization time, or geotagging information.

VideoFileDetailsAudioStream

Information about an audio stream.

VideoFileDetailsVideoStream

Information about a video stream.

VideoGetRatingCall

Retrieves the ratings that the authorized user gave to a list of specified videos.

VideoGetRatingResponse

There is no detailed description.

VideoInsertCall

Uploads a video to YouTube and optionally sets the video's metadata.

VideoListCall

Returns a list of videos that match the API request parameters.

VideoListResponse

There is no detailed description.

VideoLiveStreamingDetails

Details about the live streaming metadata.

VideoLocalization

Localized versions of certain video properties (e.g. title).

VideoMethods

A builder providing access to all methods supported on video resources. It is not used directly, but through the YouTube hub.

VideoMonetizationDetails

Details about monetization of a YouTube Video.

VideoPlayer

Player to be used for a video playback.

VideoProcessingDetails

Describes processing status and progress and availability of some other Video resource parts.

VideoProcessingDetailsProcessingProgress

Video processing progress and completion time estimate.

VideoProjectDetails

Project specific details about the content of a YouTube Video.

VideoRateCall

Add a like or dislike rating to a video or remove a rating from a video.

VideoRating

There is no detailed description.

VideoRecordingDetails

Recording information associated with the video.

VideoReportAbuseCall

Report abuse for a video.

VideoSnippet

Basic details about a video, including title, description, uploader, thumbnails and category.

VideoStatistics

Statistics about the video, such as the number of times the video was viewed or liked.

VideoStatus

Basic details about a video category, such as its localized title.

VideoSuggestions

Specifies suggestions on how to improve video content, including encoding hints, tag suggestions, and editor suggestions.

VideoSuggestionsTagSuggestion

A single tag suggestion with it's relevance information.

VideoTopicDetails

Freebase topic information related to the video.

VideoUpdateCall

Updates a video's metadata.

WatchSettings

Branding properties for the watch. All deprecated.

WatermarkMethods

A builder providing access to all methods supported on watermark resources. It is not used directly, but through the YouTube hub.

WatermarkSetCall

Uploads a watermark image to YouTube and sets it for a channel.

WatermarkUnsetCall

Deletes a channel's watermark image.

YouTube

Central instance to access all YouTube related resource activities

Enums

Error
Scope

Identifies the an OAuth2 authorization scope. A scope is needed when requesting an authorization token.

Traits

CallBuilder

Identifies types which represent builders for a particular resource method

Delegate

A trait specifying functionality to help controlling any request performed by the API. The trait has a conservative default implementation.

Hub

Identifies the Hub. There is only one per library, this trait is supposed to make intended use more explicit. The hub allows to access all resource methods more easily.

MethodsBuilder

Identifies types for building methods of a particular resource type

NestedType

Identifies types which are only used by other types internally. They have no special meaning, this trait just marks them for completeness.

Part

Identifies types which are only used as part of other types, which usually are carrying the Resource trait.

ReadSeek

A utility to specify reader types which provide seeking capabilities too

RequestValue

Identifies types which are used in API requests.

Resource

Identifies types which can be inserted and deleted. Types with this trait are most commonly used by clients of this API.

ResponseResult

Identifies types which are used in API responses.

ToParts

A trait for all types that can convert themselves into a parts string

Functions

remove_json_null_values

Type Definitions

Result

A universal result type used as return for all calls.