# Copyright 2015 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module YoutubeV3 # YouTube Data API # # Supports core YouTube features, such as uploading videos, creating and # managing playlists, searching for content, and much more. # # @example # require 'google/apis/youtube_v3' # # Youtube = Google::Apis::YoutubeV3 # Alias the module # service = Youtube::YouTubeService.new # # @see https://developers.google.com/youtube/v3 class YouTubeService < Google::Apis::Core::BaseService # @return [String] # API key. Your API key identifies your project and provides you with API access, # quota, and reports. Required unless you provide an OAuth 2.0 token. attr_accessor :key # @return [String] # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. attr_accessor :quota_user # @return [String] # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. attr_accessor :user_ip def initialize super('https://www.googleapis.com/', 'youtube/v3/') @batch_path = 'batch' end # Posts a bulletin for a specific channel. (The user submitting the request must # be authorized to act on the channel's behalf.) # Note: Even though an activity resource can contain information about actions # like a user rating a video or marking a video as a favorite, you need to use # other API methods to generate those activity resources. For example, you would # use the API's videos.rate() method to rate a video and the playlistItems. # insert() method to mark a video as a favorite. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # @param [Google::Apis::YoutubeV3::Activity] activity_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Activity] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Activity] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_activity(part, activity_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'activities', options) command.request_representation = Google::Apis::YoutubeV3::Activity::Representation command.request_object = activity_object command.response_representation = Google::Apis::YoutubeV3::Activity::Representation command.response_class = Google::Apis::YoutubeV3::Activity command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter specifies a comma-separated list of one or more activity # resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in an activity # resource, the snippet property contains other properties that identify the # type of activity, a display title for the activity, and so forth. If you set # part=snippet, the API response will also contain all of those nested # properties. # @param [String] channel_id # The channelId parameter specifies a unique YouTube channel ID. The API will # then return a list of that channel's activities. # @param [Boolean] home # Set this parameter's value to true to retrieve the activity feed that displays # on the YouTube home page for the currently authenticated user. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # Set this parameter's value to true to retrieve a feed of the authenticated # user's activities. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [DateTime] published_after # The publishedAfter parameter specifies the earliest date and time that an # activity could have occurred for that activity to be included in the API # response. If the parameter value specifies a day, but not a time, then any # activities that occurred that day will be included in the result set. The # value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. # @param [DateTime] published_before # The publishedBefore parameter specifies the date and time before which an # activity must have occurred for that activity to be included in the API # response. If the parameter value specifies a day, but not a time, then any # activities that occurred that day will be excluded from the result set. The # value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. # @param [String] region_code # The regionCode parameter instructs the API to return results for the specified # country. The parameter value is an ISO 3166-1 alpha-2 country code. YouTube # uses this value when the authorized user's previous activity on YouTube does # not provide enough information to generate the activity feed. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ActivityListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ActivityListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_activities(part, channel_id: nil, home: nil, max_results: nil, mine: nil, page_token: nil, published_after: nil, published_before: nil, region_code: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'activities', options) command.response_representation = Google::Apis::YoutubeV3::ActivityListResponse::Representation command.response_class = Google::Apis::YoutubeV3::ActivityListResponse command.query['channelId'] = channel_id unless channel_id.nil? command.query['home'] = home unless home.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['publishedAfter'] = published_after unless published_after.nil? command.query['publishedBefore'] = published_before unless published_before.nil? command.query['regionCode'] = region_code unless region_code.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a specified caption track. # @param [String] id # The id parameter identifies the caption track that is being deleted. The value # is a caption track ID as identified by the id property in a caption resource. # @param [String] on_behalf_of # ID of the Google+ Page for the channel that the request is be on behalf of # @param [String] on_behalf_of_content_owner # 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. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_caption(id, on_behalf_of: nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'captions', options) command.query['id'] = id unless id.nil? command.query['onBehalfOf'] = on_behalf_of unless on_behalf_of.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] id # The id parameter identifies the caption track that is being retrieved. The # value is a caption track ID as identified by the id property in a caption # resource. # @param [String] on_behalf_of # ID of the Google+ Page for the channel that the request is be on behalf of # @param [String] on_behalf_of_content_owner # 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. # @param [String] tfmt # The tfmt parameter specifies that the caption track should be returned in a # specific format. If the parameter is not included in the request, the track is # returned in its original format. # @param [String] tlang # The tlang parameter specifies that the API response should return a # translation of the specified caption track. The parameter value is an ISO 639- # 1 two-letter language code that identifies the desired caption language. The # translation is generated by using machine translation, such as Google # Translate. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] download_dest # IO stream or filename to receive content download # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def download_caption(id, on_behalf_of: nil, on_behalf_of_content_owner: nil, tfmt: nil, tlang: nil, fields: nil, quota_user: nil, user_ip: nil, download_dest: nil, options: nil, &block) if download_dest.nil? command = make_simple_command(:get, 'captions/{id}', options) else command = make_download_command(:get, 'captions/{id}', options) command.download_dest = download_dest end command.params['id'] = id unless id.nil? command.query['onBehalfOf'] = on_behalf_of unless on_behalf_of.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['tfmt'] = tfmt unless tfmt.nil? command.query['tlang'] = tlang unless tlang.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Uploads a caption track. # @param [String] part # The part parameter specifies the caption resource parts that the API response # will include. Set the parameter value to snippet. # @param [Google::Apis::YoutubeV3::Caption] caption_object # @param [String] on_behalf_of # ID of the Google+ Page for the channel that the request is be on behalf of # @param [String] on_behalf_of_content_owner # 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. # @param [Boolean] sync # The sync parameter indicates whether YouTube should automatically synchronize # the caption file with the audio track of the video. If you set the value to # true, YouTube will disregard any time codes that are in the uploaded caption # file and generate new time codes for the captions. # You should set the sync parameter to true if you are uploading a transcript, # which has no time codes, or if you suspect the time codes in your file are # incorrect and want YouTube to try to fix them. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Caption] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Caption] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_caption(part, caption_object = nil, on_behalf_of: nil, on_behalf_of_content_owner: nil, sync: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:post, 'captions', options) else command = make_upload_command(:post, 'captions', options) command.upload_source = upload_source command.upload_content_type = content_type end command.request_representation = Google::Apis::YoutubeV3::Caption::Representation command.request_object = caption_object command.response_representation = Google::Apis::YoutubeV3::Caption::Representation command.response_class = Google::Apis::YoutubeV3::Caption command.query['onBehalfOf'] = on_behalf_of unless on_behalf_of.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['sync'] = sync unless sync.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter specifies a comma-separated list of one or more caption # resource parts that the API response will include. The part names that you can # include in the parameter value are id and snippet. # @param [String] video_id # The videoId parameter specifies the YouTube video ID of the video for which # the API should return caption tracks. # @param [String] id # The id parameter specifies a comma-separated list of IDs that identify the # caption resources that should be retrieved. Each ID must identify a caption # track associated with the specified video. # @param [String] on_behalf_of # ID of the Google+ Page for the channel that the request is on behalf of. # @param [String] on_behalf_of_content_owner # 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. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::CaptionListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::CaptionListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_captions(part, video_id, id: nil, on_behalf_of: nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'captions', options) command.response_representation = Google::Apis::YoutubeV3::CaptionListResponse::Representation command.response_class = Google::Apis::YoutubeV3::CaptionListResponse command.query['id'] = id unless id.nil? command.query['onBehalfOf'] = on_behalf_of unless on_behalf_of.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['videoId'] = video_id unless video_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. Set the property value to snippet if you are # updating the track's draft status. Otherwise, set the property value to id. # @param [Google::Apis::YoutubeV3::Caption] caption_object # @param [String] on_behalf_of # ID of the Google+ Page for the channel that the request is be on behalf of # @param [String] on_behalf_of_content_owner # 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. # @param [Boolean] sync # Note: The API server only processes the parameter value if the request # contains an updated caption file. # The sync parameter indicates whether YouTube should automatically synchronize # the caption file with the audio track of the video. If you set the value to # true, YouTube will automatically synchronize the caption track with the audio # track. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Caption] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Caption] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_caption(part, caption_object = nil, on_behalf_of: nil, on_behalf_of_content_owner: nil, sync: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:put, 'captions', options) else command = make_upload_command(:put, 'captions', options) command.upload_source = upload_source command.upload_content_type = content_type end command.request_representation = Google::Apis::YoutubeV3::Caption::Representation command.request_object = caption_object command.response_representation = Google::Apis::YoutubeV3::Caption::Representation command.response_class = Google::Apis::YoutubeV3::Caption command.query['onBehalfOf'] = on_behalf_of unless on_behalf_of.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['sync'] = sync unless sync.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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: # - Call the channelBanners.insert method to upload the binary image data to # YouTube. The image must have a 16:9 aspect ratio and be at least 2120x1192 # pixels. # - Extract the url property's value from the response that the API returns for # step 1. # - Call the channels.update method to update the channel's branding settings. # Set the brandingSettings.image.bannerExternalUrl property's value to the URL # obtained in step 2. # @param [Google::Apis::YoutubeV3::ChannelBannerResource] channel_banner_resource_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ChannelBannerResource] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ChannelBannerResource] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_channel_banner(channel_banner_resource_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:post, 'channelBanners/insert', options) else command = make_upload_command(:post, 'channelBanners/insert', options) command.upload_source = upload_source command.upload_content_type = content_type end command.request_representation = Google::Apis::YoutubeV3::ChannelBannerResource::Representation command.request_object = channel_banner_resource_object command.response_representation = Google::Apis::YoutubeV3::ChannelBannerResource::Representation command.response_class = Google::Apis::YoutubeV3::ChannelBannerResource command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a channelSection. # @param [String] id # The id parameter specifies the YouTube channelSection ID for the resource that # is being deleted. In a channelSection resource, the id property specifies the # YouTube channelSection ID. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_channel_section(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'channelSections', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a channelSection for the authenticated user's channel. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part names that you can include in the parameter value are snippet and # contentDetails. # @param [Google::Apis::YoutubeV3::ChannelSection] channel_section_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ChannelSection] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ChannelSection] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_channel_section(part, channel_section_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'channelSections', options) command.request_representation = Google::Apis::YoutubeV3::ChannelSection::Representation command.request_object = channel_section_object command.response_representation = Google::Apis::YoutubeV3::ChannelSection::Representation command.response_class = Google::Apis::YoutubeV3::ChannelSection command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns channelSection resources that match the API request criteria. # @param [String] part # The part parameter specifies a comma-separated list of one or more # channelSection resource properties that the API response will include. The # part names that you can include in the parameter value are id, snippet, and # contentDetails. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a # channelSection resource, the snippet property contains other properties, such # as a display title for the channelSection. If you set part=snippet, the API # response will also contain all of those nested properties. # @param [String] channel_id # The channelId parameter specifies a YouTube channel ID. The API will only # return that channel's channelSections. # @param [String] hl # The hl parameter indicates that the snippet.localized property values in the # returned channelSection resources should be in the specified language if # localized values for that language are available. For example, if the API # request specifies hl=de, the snippet.localized properties in the API response # will contain German titles if German titles are available. Channel owners can # provide localized channel section titles using either the channelSections. # insert or channelSections.update method. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube # channelSection ID(s) for the resource(s) that are being retrieved. In a # channelSection resource, the id property specifies the YouTube channelSection # ID. # @param [Boolean] mine # Set this parameter's value to true to retrieve a feed of the authenticated # user's channelSections. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ChannelSectionListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ChannelSectionListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_channel_sections(part, channel_id: nil, hl: nil, id: nil, mine: nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'channelSections', options) command.response_representation = Google::Apis::YoutubeV3::ChannelSectionListResponse::Representation command.response_class = Google::Apis::YoutubeV3::ChannelSectionListResponse command.query['channelId'] = channel_id unless channel_id.nil? command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['mine'] = mine unless mine.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Update a channelSection. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part names that you can include in the parameter value are snippet and # contentDetails. # @param [Google::Apis::YoutubeV3::ChannelSection] channel_section_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ChannelSection] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ChannelSection] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_channel_section(part, channel_section_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'channelSections', options) command.request_representation = Google::Apis::YoutubeV3::ChannelSection::Representation command.request_object = channel_section_object command.response_representation = Google::Apis::YoutubeV3::ChannelSection::Representation command.response_class = Google::Apis::YoutubeV3::ChannelSection command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a collection of zero or more channel resources that match the request # criteria. # @param [String] part # The part parameter specifies a comma-separated list of one or more channel # resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a channel # resource, the contentDetails property contains other properties, such as the # uploads properties. As such, if you set part=contentDetails, the API response # will also contain all of those nested properties. # @param [String] category_id # The categoryId parameter specifies a YouTube guide category, thereby # requesting YouTube channels associated with that category. # @param [String] for_username # The forUsername parameter specifies a YouTube username, thereby requesting the # channel associated with that username. # @param [String] hl # The hl parameter should be used for filter out the properties that are not in # the given language. Used for the brandingSettings part. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube channel ID(s) # for the resource(s) that are being retrieved. In a channel resource, the id # property specifies the channel's YouTube channel ID. # @param [Boolean] managed_by_me # Note: This parameter is intended exclusively for YouTube content partners. # Set this parameter's value to true to instruct the API to only return channels # managed by the content owner that the onBehalfOfContentOwner parameter # specifies. The user must be authenticated as a CMS account linked to the # specified content owner and onBehalfOfContentOwner must be provided. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # Set this parameter's value to true to instruct the API to only return channels # owned by the authenticated user. # @param [Boolean] my_subscribers # Use the subscriptions.list method and its mySubscribers parameter to retrieve # a list of subscribers to the authenticated user's channel. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ChannelListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ChannelListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_channels(part, category_id: nil, for_username: nil, hl: nil, id: nil, managed_by_me: nil, max_results: nil, mine: nil, my_subscribers: nil, on_behalf_of_content_owner: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'channels', options) command.response_representation = Google::Apis::YoutubeV3::ChannelListResponse::Representation command.response_class = Google::Apis::YoutubeV3::ChannelListResponse command.query['categoryId'] = category_id unless category_id.nil? command.query['forUsername'] = for_username unless for_username.nil? command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['managedByMe'] = managed_by_me unless managed_by_me.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['mySubscribers'] = my_subscribers unless my_subscribers.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The API currently only allows the parameter value to be set to either # brandingSettings or invideoPromotion. (You cannot update both of those parts # with a single request.) # Note that this method overrides the existing values for all of the mutable # properties that are contained in any parts that the parameter value specifies. # @param [Google::Apis::YoutubeV3::Channel] channel_object # @param [String] on_behalf_of_content_owner # The onBehalfOfContentOwner parameter indicates that the authenticated user 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 needs to be linked to the specified YouTube # content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Channel] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Channel] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_channel(part, channel_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'channels', options) command.request_representation = Google::Apis::YoutubeV3::Channel::Representation command.request_object = channel_object command.response_representation = Google::Apis::YoutubeV3::Channel::Representation command.response_class = Google::Apis::YoutubeV3::Channel command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Creates a new top-level comment. To add a reply to an existing comment, use # the comments.insert method instead. # @param [String] part # The part parameter identifies the properties that the API response will # include. Set the parameter value to snippet. The snippet part has a quota cost # of 2 units. # @param [Google::Apis::YoutubeV3::CommentThread] comment_thread_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::CommentThread] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::CommentThread] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_comment_thread(part, comment_thread_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'commentThreads', options) command.request_representation = Google::Apis::YoutubeV3::CommentThread::Representation command.request_object = comment_thread_object command.response_representation = Google::Apis::YoutubeV3::CommentThread::Representation command.response_class = Google::Apis::YoutubeV3::CommentThread command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of comment threads that match the API request parameters. # @param [String] part # The part parameter specifies a comma-separated list of one or more # commentThread resource properties that the API response will include. # @param [String] all_threads_related_to_channel_id # The allThreadsRelatedToChannelId parameter instructs the API to return all # comment threads associated with the specified channel. The response can # include comments about the channel or about the channel's videos. # @param [String] channel_id # The channelId parameter instructs the API to return comment threads containing # comments about the specified channel. (The response will not include comments # left on videos that the channel uploaded.) # @param [String] id # The id parameter specifies a comma-separated list of comment thread IDs for # the resources that should be retrieved. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] moderation_status # Set this parameter to limit the returned comment threads to a particular # moderation state. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] order # The order parameter specifies the order in which the API response should list # comment threads. Valid values are: # - time - Comment threads are ordered by time. This is the default behavior. # - relevance - Comment threads are ordered by relevance.Note: This parameter is # not supported for use in conjunction with the id parameter. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken property identifies # the next page of the result that can be retrieved. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] search_terms # The searchTerms parameter instructs the API to limit the API response to only # contain comments that contain the specified search terms. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] text_format # Set this parameter's value to html or plainText to instruct the API to return # the comments left by users in html formatted or in plain text. # @param [String] video_id # The videoId parameter instructs the API to return comment threads associated # with the specified video ID. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::CommentThreadListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::CommentThreadListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_comment_threads(part, all_threads_related_to_channel_id: nil, channel_id: nil, id: nil, max_results: nil, moderation_status: nil, order: nil, page_token: nil, search_terms: nil, text_format: nil, video_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'commentThreads', options) command.response_representation = Google::Apis::YoutubeV3::CommentThreadListResponse::Representation command.response_class = Google::Apis::YoutubeV3::CommentThreadListResponse command.query['allThreadsRelatedToChannelId'] = all_threads_related_to_channel_id unless all_threads_related_to_channel_id.nil? command.query['channelId'] = channel_id unless channel_id.nil? command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['moderationStatus'] = moderation_status unless moderation_status.nil? command.query['order'] = order unless order.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['searchTerms'] = search_terms unless search_terms.nil? command.query['textFormat'] = text_format unless text_format.nil? command.query['videoId'] = video_id unless video_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Modifies the top-level comment in a comment thread. # @param [String] part # The part parameter specifies a comma-separated list of commentThread resource # properties that the API response will include. You must at least include the # snippet part in the parameter value since that part contains all of the # properties that the API request can update. # @param [Google::Apis::YoutubeV3::CommentThread] comment_thread_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::CommentThread] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::CommentThread] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_comment_thread(part, comment_thread_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'commentThreads', options) command.request_representation = Google::Apis::YoutubeV3::CommentThread::Representation command.request_object = comment_thread_object command.response_representation = Google::Apis::YoutubeV3::CommentThread::Representation command.response_class = Google::Apis::YoutubeV3::CommentThread command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a comment. # @param [String] id # The id parameter specifies the comment ID for the resource that is being # deleted. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_comment(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'comments', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Creates a reply to an existing comment. Note: To create a top-level comment, # use the commentThreads.insert method. # @param [String] part # The part parameter identifies the properties that the API response will # include. Set the parameter value to snippet. The snippet part has a quota cost # of 2 units. # @param [Google::Apis::YoutubeV3::Comment] comment_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Comment] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Comment] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_comment(part, comment_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'comments', options) command.request_representation = Google::Apis::YoutubeV3::Comment::Representation command.request_object = comment_object command.response_representation = Google::Apis::YoutubeV3::Comment::Representation command.response_class = Google::Apis::YoutubeV3::Comment command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of comments that match the API request parameters. # @param [String] part # The part parameter specifies a comma-separated list of one or more comment # resource properties that the API response will include. # @param [String] id # The id parameter specifies a comma-separated list of comment IDs for the # resources that are being retrieved. In a comment resource, the id property # specifies the comment's ID. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken property identifies # the next page of the result that can be retrieved. # Note: This parameter is not supported for use in conjunction with the id # parameter. # @param [String] parent_id # The parentId parameter specifies the ID of the comment for which replies # should be retrieved. # Note: YouTube currently supports replies only for top-level comments. However, # replies to replies may be supported in the future. # @param [String] text_format # This parameter indicates whether the API should return comments formatted as # HTML or as plain text. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::CommentListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::CommentListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_comments(part, id: nil, max_results: nil, page_token: nil, parent_id: nil, text_format: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'comments', options) command.response_representation = Google::Apis::YoutubeV3::CommentListResponse::Representation command.response_class = Google::Apis::YoutubeV3::CommentListResponse command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['parentId'] = parent_id unless parent_id.nil? command.query['part'] = part unless part.nil? command.query['textFormat'] = text_format unless text_format.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Expresses the caller's opinion that one or more comments should be flagged as # spam. # @param [String] id # The id parameter specifies a comma-separated list of IDs of comments that the # caller believes should be classified as spam. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def mark_comment_as_spam(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'comments/markAsSpam', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] id # The id parameter specifies a comma-separated list of IDs that identify the # comments for which you are updating the moderation status. # @param [String] moderation_status # Identifies the new moderation status of the specified comments. # @param [Boolean] ban_author # The banAuthor parameter lets you indicate that you want to automatically # reject any additional comments written by the comment's author. Set the # parameter value to true to ban the author. # Note: This parameter is only valid if the moderationStatus parameter is also # set to rejected. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def set_comment_moderation_status(id, moderation_status, ban_author: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'comments/setModerationStatus', options) command.query['banAuthor'] = ban_author unless ban_author.nil? command.query['id'] = id unless id.nil? command.query['moderationStatus'] = moderation_status unless moderation_status.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Modifies a comment. # @param [String] part # The part parameter identifies the properties that the API response will # include. You must at least include the snippet part in the parameter value # since that part contains all of the properties that the API request can update. # @param [Google::Apis::YoutubeV3::Comment] comment_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Comment] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Comment] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_comment(part, comment_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'comments', options) command.request_representation = Google::Apis::YoutubeV3::Comment::Representation command.request_object = comment_object command.response_representation = Google::Apis::YoutubeV3::Comment::Representation command.response_class = Google::Apis::YoutubeV3::Comment command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Lists fan funding events for a channel. # @param [String] part # The part parameter specifies the fanFundingEvent resource parts that the API # response will include. Supported values are id and snippet. # @param [String] hl # The hl parameter instructs the API to retrieve localized resource metadata for # a specific application language that the YouTube website supports. The # parameter value must be a language code included in the list returned by the # i18nLanguages.list method. # If localized resource details are available in that language, the resource's # snippet.localized object will contain the localized values. However, if # localized details are not available, the snippet.localized object will contain # resource details in the resource's default language. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::FanFundingEventListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::FanFundingEventListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_fan_funding_events(part, hl: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'fanFundingEvents', options) command.response_representation = Google::Apis::YoutubeV3::FanFundingEventListResponse::Representation command.response_class = Google::Apis::YoutubeV3::FanFundingEventListResponse command.query['hl'] = hl unless hl.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of categories that can be associated with YouTube channels. # @param [String] part # The part parameter specifies the guideCategory resource properties that the # API response will include. Set the parameter value to snippet. # @param [String] hl # The hl parameter specifies the language that will be used for text values in # the API response. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube channel # category ID(s) for the resource(s) that are being retrieved. In a # guideCategory resource, the id property specifies the YouTube channel category # ID. # @param [String] region_code # The regionCode parameter instructs the API to return the list of guide # categories available in the specified country. The parameter value is an ISO # 3166-1 alpha-2 country code. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::GuideCategoryListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::GuideCategoryListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_guide_categories(part, hl: nil, id: nil, region_code: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'guideCategories', options) command.response_representation = Google::Apis::YoutubeV3::GuideCategoryListResponse::Representation command.response_class = Google::Apis::YoutubeV3::GuideCategoryListResponse command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['part'] = part unless part.nil? command.query['regionCode'] = region_code unless region_code.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of application languages that the YouTube website supports. # @param [String] part # The part parameter specifies the i18nLanguage resource properties that the API # response will include. Set the parameter value to snippet. # @param [String] hl # The hl parameter specifies the language that should be used for text values in # the API response. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::I18nLanguageListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::I18nLanguageListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_i18n_languages(part, hl: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'i18nLanguages', options) command.response_representation = Google::Apis::YoutubeV3::I18nLanguageListResponse::Representation command.response_class = Google::Apis::YoutubeV3::I18nLanguageListResponse command.query['hl'] = hl unless hl.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of content regions that the YouTube website supports. # @param [String] part # The part parameter specifies the i18nRegion resource properties that the API # response will include. Set the parameter value to snippet. # @param [String] hl # The hl parameter specifies the language that should be used for text values in # the API response. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::I18nRegionListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::I18nRegionListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_i18n_regions(part, hl: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'i18nRegions', options) command.response_representation = Google::Apis::YoutubeV3::I18nRegionListResponse::Representation command.response_class = Google::Apis::YoutubeV3::I18nRegionListResponse command.query['hl'] = hl unless hl.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] id # The id parameter specifies the unique ID of the broadcast that is being bound # to a video stream. # @param [String] part # The part parameter specifies a comma-separated list of one or more # liveBroadcast resource properties that the API response will include. The part # names that you can include in the parameter value are id, snippet, # contentDetails, and status. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] stream_id # The streamId parameter specifies the unique ID of the video stream that is # being bound to a broadcast. If this parameter is omitted, the API will remove # any existing binding between the broadcast and a video stream. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcast] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcast] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def bind_live_broadcast(id, part, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, stream_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveBroadcasts/bind', options) command.response_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcast command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['streamId'] = stream_id unless stream_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Controls the settings for a slate that can be displayed in the broadcast # stream. # @param [String] id # The id parameter specifies the YouTube live broadcast ID that uniquely # identifies the broadcast in which the slate is being updated. # @param [String] part # The part parameter specifies a comma-separated list of one or more # liveBroadcast resource properties that the API response will include. The part # names that you can include in the parameter value are id, snippet, # contentDetails, and status. # @param [Boolean] display_slate # The displaySlate parameter specifies whether the slate is being enabled or # disabled. # @param [Fixnum] offset_time_ms # The offsetTimeMs parameter specifies a positive time offset when the specified # slate change will occur. The value is measured in milliseconds from the # beginning of the broadcast's monitor stream, which is the time that the # testing phase for the broadcast began. Even though it is specified in # milliseconds, the value is actually an approximation, and YouTube completes # the requested action as closely as possible to that time. # If you do not specify a value for this parameter, then YouTube performs the # action as soon as possible. See the Getting started guide for more details. # Important: You should only specify a value for this parameter if your # broadcast stream is delayed. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [DateTime] walltime # The walltime parameter specifies the wall clock time at which the specified # slate change will occur. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm: # ss.sssZ) format. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcast] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcast] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def control_live_broadcast(id, part, display_slate: nil, offset_time_ms: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, walltime: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveBroadcasts/control', options) command.response_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcast command.query['displaySlate'] = display_slate unless display_slate.nil? command.query['id'] = id unless id.nil? command.query['offsetTimeMs'] = offset_time_ms unless offset_time_ms.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['walltime'] = walltime unless walltime.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a broadcast. # @param [String] id # The id parameter specifies the YouTube live broadcast ID for the resource that # is being deleted. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_live_broadcast(id, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'liveBroadcasts', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Creates a broadcast. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part properties that you can include in the parameter value are id, # snippet, contentDetails, and status. # @param [Google::Apis::YoutubeV3::LiveBroadcast] live_broadcast_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcast] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcast] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_live_broadcast(part, live_broadcast_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveBroadcasts', options) command.request_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.request_object = live_broadcast_object command.response_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcast command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of YouTube broadcasts that match the API request parameters. # @param [String] part # The part parameter specifies a comma-separated list of one or more # liveBroadcast resource properties that the API response will include. The part # names that you can include in the parameter value are id, snippet, # contentDetails, and status. # @param [String] broadcast_status # The broadcastStatus parameter filters the API response to only include # broadcasts with the specified status. # @param [String] broadcast_type # The broadcastType parameter filters the API response to only include # broadcasts with the specified type. This is only compatible with the mine # filter for now. # @param [String] id # The id parameter specifies a comma-separated list of YouTube broadcast IDs # that identify the broadcasts being retrieved. In a liveBroadcast resource, the # id property specifies the broadcast's ID. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # The mine parameter can be used to instruct the API to only return broadcasts # owned by the authenticated user. Set the parameter value to true to only # retrieve your own broadcasts. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcastListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcastListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_live_broadcasts(part, broadcast_status: nil, broadcast_type: nil, id: nil, max_results: nil, mine: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'liveBroadcasts', options) command.response_representation = Google::Apis::YoutubeV3::LiveBroadcastListResponse::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcastListResponse command.query['broadcastStatus'] = broadcast_status unless broadcast_status.nil? command.query['broadcastType'] = broadcast_type unless broadcast_type.nil? command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] broadcast_status # The broadcastStatus parameter identifies the state to which the broadcast is # changing. Note that to transition a broadcast to either the testing or live # state, the status.streamStatus must be active for the stream that the # broadcast is bound to. # @param [String] id # The id parameter specifies the unique ID of the broadcast that is # transitioning to another status. # @param [String] part # The part parameter specifies a comma-separated list of one or more # liveBroadcast resource properties that the API response will include. The part # names that you can include in the parameter value are id, snippet, # contentDetails, and status. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcast] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcast] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def transition_live_broadcast(broadcast_status, id, part, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveBroadcasts/transition', options) command.response_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcast command.query['broadcastStatus'] = broadcast_status unless broadcast_status.nil? command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Updates a broadcast. For example, you could modify the broadcast settings # defined in the liveBroadcast resource's contentDetails object. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part properties that you can include in the parameter value are id, # snippet, contentDetails, and status. # Note that this method will override the existing values for all of the mutable # properties that are contained in any parts that the parameter value specifies. # For example, a broadcast's privacy status is defined in the status part. As # such, if your request is updating a private or unlisted broadcast, and the # request's part parameter value includes the status part, the broadcast's # privacy setting will be updated to whatever value the request body specifies. # If the request body does not specify a value, the existing privacy setting # will be removed and the broadcast will revert to the default privacy setting. # @param [Google::Apis::YoutubeV3::LiveBroadcast] live_broadcast_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveBroadcast] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveBroadcast] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_live_broadcast(part, live_broadcast_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'liveBroadcasts', options) command.request_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.request_object = live_broadcast_object command.response_representation = Google::Apis::YoutubeV3::LiveBroadcast::Representation command.response_class = Google::Apis::YoutubeV3::LiveBroadcast command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Removes a chat ban. # @param [String] id # The id parameter identifies the chat ban to remove. The value uniquely # identifies both the ban and the chat. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_live_chat_ban(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'liveChat/bans', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a new ban to the chat. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response returns. Set the parameter value to snippet. # @param [Google::Apis::YoutubeV3::LiveChatBan] live_chat_ban_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveChatBan] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveChatBan] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_live_chat_ban(part, live_chat_ban_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveChat/bans', options) command.request_representation = Google::Apis::YoutubeV3::LiveChatBan::Representation command.request_object = live_chat_ban_object command.response_representation = Google::Apis::YoutubeV3::LiveChatBan::Representation command.response_class = Google::Apis::YoutubeV3::LiveChatBan command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a chat message. # @param [String] id # The id parameter specifies the YouTube chat message ID of the resource that is # being deleted. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_live_chat_message(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'liveChat/messages', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a message to a live chat. # @param [String] part # The part parameter serves two purposes. It identifies the properties that the # write operation will set as well as the properties that the API response will # include. Set the parameter value to snippet. # @param [Google::Apis::YoutubeV3::LiveChatMessage] live_chat_message_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveChatMessage] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveChatMessage] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_live_chat_message(part, live_chat_message_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveChat/messages', options) command.request_representation = Google::Apis::YoutubeV3::LiveChatMessage::Representation command.request_object = live_chat_message_object command.response_representation = Google::Apis::YoutubeV3::LiveChatMessage::Representation command.response_class = Google::Apis::YoutubeV3::LiveChatMessage command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Lists live chat messages for a specific chat. # @param [String] live_chat_id # The liveChatId parameter specifies the ID of the chat whose messages will be # returned. # @param [String] part # The part parameter specifies the liveChatComment resource parts that the API # response will include. Supported values are id and snippet. # @param [String] hl # The hl parameter instructs the API to retrieve localized resource metadata for # a specific application language that the YouTube website supports. The # parameter value must be a language code included in the list returned by the # i18nLanguages.list method. # If localized resource details are available in that language, the resource's # snippet.localized object will contain the localized values. However, if # localized details are not available, the snippet.localized object will contain # resource details in the resource's default language. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of messages that should # be returned in the result set. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken property identify # other pages that could be retrieved. # @param [Fixnum] profile_image_size # The profileImageSize parameter specifies the size of the user profile pictures # that should be returned in the result set. Default: 88. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveChatMessageListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveChatMessageListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_live_chat_messages(live_chat_id, part, hl: nil, max_results: nil, page_token: nil, profile_image_size: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'liveChat/messages', options) command.response_representation = Google::Apis::YoutubeV3::LiveChatMessageListResponse::Representation command.response_class = Google::Apis::YoutubeV3::LiveChatMessageListResponse command.query['hl'] = hl unless hl.nil? command.query['liveChatId'] = live_chat_id unless live_chat_id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['profileImageSize'] = profile_image_size unless profile_image_size.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Removes a chat moderator. # @param [String] id # The id parameter identifies the chat moderator to remove. The value uniquely # identifies both the moderator and the chat. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_live_chat_moderator(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'liveChat/moderators', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a new moderator for the chat. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response returns. Set the parameter value to snippet. # @param [Google::Apis::YoutubeV3::LiveChatModerator] live_chat_moderator_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveChatModerator] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveChatModerator] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_live_chat_moderator(part, live_chat_moderator_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveChat/moderators', options) command.request_representation = Google::Apis::YoutubeV3::LiveChatModerator::Representation command.request_object = live_chat_moderator_object command.response_representation = Google::Apis::YoutubeV3::LiveChatModerator::Representation command.response_class = Google::Apis::YoutubeV3::LiveChatModerator command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Lists moderators for a live chat. # @param [String] live_chat_id # The liveChatId parameter specifies the YouTube live chat for which the API # should return moderators. # @param [String] part # The part parameter specifies the liveChatModerator resource parts that the API # response will include. Supported values are id and snippet. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveChatModeratorListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveChatModeratorListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_live_chat_moderators(live_chat_id, part, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'liveChat/moderators', options) command.response_representation = Google::Apis::YoutubeV3::LiveChatModeratorListResponse::Representation command.response_class = Google::Apis::YoutubeV3::LiveChatModeratorListResponse command.query['liveChatId'] = live_chat_id unless live_chat_id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a video stream. # @param [String] id # The id parameter specifies the YouTube live stream ID for the resource that is # being deleted. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_live_stream(id, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'liveStreams', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Creates a video stream. The stream enables you to send your video to YouTube, # which can then broadcast the video to your audience. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part properties that you can include in the parameter value are id, # snippet, cdn, and status. # @param [Google::Apis::YoutubeV3::LiveStream] live_stream_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveStream] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveStream] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_live_stream(part, live_stream_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'liveStreams', options) command.request_representation = Google::Apis::YoutubeV3::LiveStream::Representation command.request_object = live_stream_object command.response_representation = Google::Apis::YoutubeV3::LiveStream::Representation command.response_class = Google::Apis::YoutubeV3::LiveStream command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of video streams that match the API request parameters. # @param [String] part # The part parameter specifies a comma-separated list of one or more liveStream # resource properties that the API response will include. The part names that # you can include in the parameter value are id, snippet, cdn, and status. # @param [String] id # The id parameter specifies a comma-separated list of YouTube stream IDs that # identify the streams being retrieved. In a liveStream resource, the id # property specifies the stream's ID. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # The mine parameter can be used to instruct the API to only return streams # owned by the authenticated user. Set the parameter value to true to only # retrieve your own streams. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveStreamListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveStreamListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_live_streams(part, id: nil, max_results: nil, mine: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'liveStreams', options) command.response_representation = Google::Apis::YoutubeV3::LiveStreamListResponse::Representation command.response_class = Google::Apis::YoutubeV3::LiveStreamListResponse command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # The part properties that you can include in the parameter value are id, # snippet, cdn, and status. # Note that this method will override the existing values for all of the mutable # properties that are contained in any parts that the parameter value specifies. # If the request body does not specify a value for a mutable property, the # existing value for that property will be removed. # @param [Google::Apis::YoutubeV3::LiveStream] live_stream_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::LiveStream] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::LiveStream] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_live_stream(part, live_stream_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'liveStreams', options) command.request_representation = Google::Apis::YoutubeV3::LiveStream::Representation command.request_object = live_stream_object command.response_representation = Google::Apis::YoutubeV3::LiveStream::Representation command.response_class = Google::Apis::YoutubeV3::LiveStream command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a playlist item. # @param [String] id # The id parameter specifies the YouTube playlist item ID for the playlist item # that is being deleted. In a playlistItem resource, the id property specifies # the playlist item's ID. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_playlist_item(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'playlistItems', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a resource to a playlist. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # @param [Google::Apis::YoutubeV3::PlaylistItem] playlist_item_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::PlaylistItem] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::PlaylistItem] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_playlist_item(part, playlist_item_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'playlistItems', options) command.request_representation = Google::Apis::YoutubeV3::PlaylistItem::Representation command.request_object = playlist_item_object command.response_representation = Google::Apis::YoutubeV3::PlaylistItem::Representation command.response_class = Google::Apis::YoutubeV3::PlaylistItem command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter specifies a comma-separated list of one or more # playlistItem resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a # playlistItem resource, the snippet property contains numerous fields, # including the title, description, position, and resourceId properties. As such, # if you set part=snippet, the API response will contain all of those # properties. # @param [String] id # The id parameter specifies a comma-separated list of one or more unique # playlist item IDs. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] playlist_id # The playlistId parameter specifies the unique ID of the playlist for which you # want to retrieve playlist items. Note that even though this is an optional # parameter, every request to retrieve playlist items must specify a value for # either the id parameter or the playlistId parameter. # @param [String] video_id # The videoId parameter specifies that the request should return only the # playlist items that contain the specified video. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::PlaylistItemListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::PlaylistItemListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_playlist_items(part, id: nil, max_results: nil, on_behalf_of_content_owner: nil, page_token: nil, playlist_id: nil, video_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'playlistItems', options) command.response_representation = Google::Apis::YoutubeV3::PlaylistItemListResponse::Representation command.response_class = Google::Apis::YoutubeV3::PlaylistItemListResponse command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['playlistId'] = playlist_id unless playlist_id.nil? command.query['videoId'] = video_id unless video_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Modifies a playlist item. For example, you could update the item's position in # the playlist. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # Note that this method will override the existing values for all of the mutable # properties that are contained in any parts that the parameter value specifies. # For example, a playlist item can specify a start time and end time, which # identify the times portion of the video that should play when users watch the # video in the playlist. If your request is updating a playlist item that sets # these values, and the request's part parameter value includes the # contentDetails part, the playlist item's start and end times will be updated # to whatever value the request body specifies. If the request body does not # specify values, the existing start and end times will be removed and replaced # with the default settings. # @param [Google::Apis::YoutubeV3::PlaylistItem] playlist_item_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::PlaylistItem] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::PlaylistItem] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_playlist_item(part, playlist_item_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'playlistItems', options) command.request_representation = Google::Apis::YoutubeV3::PlaylistItem::Representation command.request_object = playlist_item_object command.response_representation = Google::Apis::YoutubeV3::PlaylistItem::Representation command.response_class = Google::Apis::YoutubeV3::PlaylistItem command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a playlist. # @param [String] id # The id parameter specifies the YouTube playlist ID for the playlist that is # being deleted. In a playlist resource, the id property specifies the playlist' # s ID. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_playlist(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'playlists', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Creates a playlist. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # @param [Google::Apis::YoutubeV3::Playlist] playlist_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Playlist] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Playlist] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_playlist(part, playlist_object = nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'playlists', options) command.request_representation = Google::Apis::YoutubeV3::Playlist::Representation command.request_object = playlist_object command.response_representation = Google::Apis::YoutubeV3::Playlist::Representation command.response_class = Google::Apis::YoutubeV3::Playlist command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter specifies a comma-separated list of one or more playlist # resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a playlist # resource, the snippet property contains properties like author, title, # description, tags, and timeCreated. As such, if you set part=snippet, the API # response will contain all of those properties. # @param [String] channel_id # This value indicates that the API should only return the specified channel's # playlists. # @param [String] hl # The hl parameter should be used for filter out the properties that are not in # the given language. Used for the snippet part. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube playlist ID(s) # for the resource(s) that are being retrieved. In a playlist resource, the id # property specifies the playlist's YouTube playlist ID. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # Set this parameter's value to true to instruct the API to only return # playlists owned by the authenticated user. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::PlaylistListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::PlaylistListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_playlists(part, channel_id: nil, hl: nil, id: nil, max_results: nil, mine: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'playlists', options) command.response_representation = Google::Apis::YoutubeV3::PlaylistListResponse::Representation command.response_class = Google::Apis::YoutubeV3::PlaylistListResponse command.query['channelId'] = channel_id unless channel_id.nil? command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Modifies a playlist. For example, you could change a playlist's title, # description, or privacy status. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # Note that this method will override the existing values for mutable properties # that are contained in any parts that the request body specifies. For example, # a playlist's description is contained in the snippet part, which must be # included in the request body. If the request does not specify a value for the # snippet.description property, the playlist's existing description will be # deleted. # @param [Google::Apis::YoutubeV3::Playlist] playlist_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Playlist] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Playlist] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_playlist(part, playlist_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'playlists', options) command.request_representation = Google::Apis::YoutubeV3::Playlist::Representation command.request_object = playlist_object command.response_representation = Google::Apis::YoutubeV3::Playlist::Representation command.response_class = Google::Apis::YoutubeV3::Playlist command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # 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. # @param [String] part # The part parameter specifies a comma-separated list of one or more search # resource properties that the API response will include. Set the parameter # value to snippet. # @param [String] channel_id # The channelId parameter indicates that the API response should only contain # resources created by the channel # @param [String] channel_type # The channelType parameter lets you restrict a search to a particular type of # channel. # @param [String] event_type # The eventType parameter restricts a search to broadcast events. If you specify # a value for this parameter, you must also set the type parameter's value to # video. # @param [Boolean] for_content_owner # Note: This parameter is intended exclusively for YouTube content partners. # The forContentOwner parameter restricts the search to only retrieve resources # owned by the content owner specified by the onBehalfOfContentOwner parameter. # The user must be authenticated using a CMS account linked to the specified # content owner and onBehalfOfContentOwner must be provided. # @param [Boolean] for_developer # The forDeveloper parameter restricts the search to only retrieve videos # uploaded via the developer's application or website. The API server uses the # request's authorization credentials to identify the developer. Therefore, a # developer can restrict results to videos uploaded through the developer's own # app or website but not to videos uploaded through other apps or sites. # @param [Boolean] for_mine # The forMine parameter restricts the search to only retrieve videos owned by # the authenticated user. If you set this parameter to true, then the type # parameter's value must also be set to video. # @param [String] location # The location parameter, in conjunction with the locationRadius parameter, # defines a circular geographic area and also restricts a search to videos that # specify, in their metadata, a geographic location that falls within that area. # The parameter value is a string that specifies latitude/longitude coordinates # e.g. (37.42307,-122.08427). # - The location parameter value identifies the point at the center of the area. # - The locationRadius parameter specifies the maximum distance that the # location associated with a video can be from that point for the video to still # be included in the search results.The API returns an error if your request # specifies a value for the location parameter but does not also specify a value # for the locationRadius parameter. # @param [String] location_radius # The locationRadius parameter, in conjunction with the location parameter, # defines a circular geographic area. # The parameter value must be a floating point number followed by a measurement # unit. Valid measurement units are m, km, ft, and mi. For example, valid # parameter values include 1500m, 5km, 10000ft, and 0.75mi. The API does not # support locationRadius parameter values larger than 1000 kilometers. # Note: See the definition of the location parameter for more information. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] order # The order parameter specifies the method that will be used to order resources # in the API response. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [DateTime] published_after # The publishedAfter parameter indicates that the API response should only # contain resources created after the specified time. The value is an RFC 3339 # formatted date-time value (1970-01-01T00:00:00Z). # @param [DateTime] published_before # The publishedBefore parameter indicates that the API response should only # contain resources created before the specified time. The value is an RFC 3339 # formatted date-time value (1970-01-01T00:00:00Z). # @param [String] q # The q parameter specifies the query term to search for. # Your request can also use the Boolean NOT (-) and OR (|) operators to exclude # videos or to find videos that are associated with one of several search terms. # For example, to search for videos matching either "boating" or "sailing", set # the q parameter value to boating|sailing. Similarly, to search for videos # matching either "boating" or "sailing" but not "fishing", set the q parameter # value to boating|sailing -fishing. Note that the pipe character must be URL- # escaped when it is sent in your API request. The URL-escaped value for the # pipe character is %7C. # @param [String] region_code # The regionCode parameter instructs the API to return search results for the # specified country. The parameter value is an ISO 3166-1 alpha-2 country code. # @param [String] related_to_video_id # The relatedToVideoId parameter retrieves a list of videos that are related to # the video that the parameter value identifies. The parameter value must be set # to a YouTube video ID and, if you are using this parameter, the type parameter # must be set to video. # @param [String] relevance_language # The relevanceLanguage parameter instructs the API to return search results # that are most relevant to the specified language. The parameter value is # typically an ISO 639-1 two-letter language code. However, you should use the # values zh-Hans for simplified Chinese and zh-Hant for traditional Chinese. # Please note that results in other languages will still be returned if they are # highly relevant to the search query term. # @param [String] safe_search # The safeSearch parameter indicates whether the search results should include # restricted content as well as standard content. # @param [String] topic_id # The topicId parameter indicates that the API response should only contain # resources associated with the specified topic. The value identifies a Freebase # topic ID. # @param [String] type # The type parameter restricts a search query to only retrieve a particular type # of resource. The value is a comma-separated list of resource types. # @param [String] video_caption # The videoCaption parameter indicates whether the API should filter video # search results based on whether they have captions. If you specify a value for # this parameter, you must also set the type parameter's value to video. # @param [String] video_category_id # The videoCategoryId parameter filters video search results based on their # category. If you specify a value for this parameter, you must also set the # type parameter's value to video. # @param [String] video_definition # The videoDefinition parameter lets you restrict a search to only include # either high definition (HD) or standard definition (SD) videos. HD videos are # available for playback in at least 720p, though higher resolutions, like 1080p, # might also be available. If you specify a value for this parameter, you must # also set the type parameter's value to video. # @param [String] video_dimension # The videoDimension parameter lets you restrict a search to only retrieve 2D or # 3D videos. If you specify a value for this parameter, you must also set the # type parameter's value to video. # @param [String] video_duration # The videoDuration parameter filters video search results based on their # duration. If you specify a value for this parameter, you must also set the # type parameter's value to video. # @param [String] video_embeddable # The videoEmbeddable parameter lets you to restrict a search to only videos # that can be embedded into a webpage. If you specify a value for this parameter, # you must also set the type parameter's value to video. # @param [String] video_license # The videoLicense parameter filters search results to only include videos with # a particular license. YouTube lets video uploaders choose to attach either the # Creative Commons license or the standard YouTube license to each of their # videos. If you specify a value for this parameter, you must also set the type # parameter's value to video. # @param [String] video_syndicated # The videoSyndicated parameter lets you to restrict a search to only videos # that can be played outside youtube.com. If you specify a value for this # parameter, you must also set the type parameter's value to video. # @param [String] video_type # The videoType parameter lets you restrict a search to a particular type of # videos. If you specify a value for this parameter, you must also set the type # parameter's value to video. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::SearchListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::SearchListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_searches(part, channel_id: nil, channel_type: nil, event_type: nil, for_content_owner: nil, for_developer: nil, for_mine: nil, location: nil, location_radius: nil, max_results: nil, on_behalf_of_content_owner: nil, order: nil, page_token: nil, published_after: nil, published_before: nil, q: nil, region_code: nil, related_to_video_id: nil, relevance_language: nil, safe_search: nil, topic_id: nil, type: nil, video_caption: nil, video_category_id: nil, video_definition: nil, video_dimension: nil, video_duration: nil, video_embeddable: nil, video_license: nil, video_syndicated: nil, video_type: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'search', options) command.response_representation = Google::Apis::YoutubeV3::SearchListResponse::Representation command.response_class = Google::Apis::YoutubeV3::SearchListResponse command.query['channelId'] = channel_id unless channel_id.nil? command.query['channelType'] = channel_type unless channel_type.nil? command.query['eventType'] = event_type unless event_type.nil? command.query['forContentOwner'] = for_content_owner unless for_content_owner.nil? command.query['forDeveloper'] = for_developer unless for_developer.nil? command.query['forMine'] = for_mine unless for_mine.nil? command.query['location'] = location unless location.nil? command.query['locationRadius'] = location_radius unless location_radius.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['order'] = order unless order.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['publishedAfter'] = published_after unless published_after.nil? command.query['publishedBefore'] = published_before unless published_before.nil? command.query['q'] = q unless q.nil? command.query['regionCode'] = region_code unless region_code.nil? command.query['relatedToVideoId'] = related_to_video_id unless related_to_video_id.nil? command.query['relevanceLanguage'] = relevance_language unless relevance_language.nil? command.query['safeSearch'] = safe_search unless safe_search.nil? command.query['topicId'] = topic_id unless topic_id.nil? command.query['type'] = type unless type.nil? command.query['videoCaption'] = video_caption unless video_caption.nil? command.query['videoCategoryId'] = video_category_id unless video_category_id.nil? command.query['videoDefinition'] = video_definition unless video_definition.nil? command.query['videoDimension'] = video_dimension unless video_dimension.nil? command.query['videoDuration'] = video_duration unless video_duration.nil? command.query['videoEmbeddable'] = video_embeddable unless video_embeddable.nil? command.query['videoLicense'] = video_license unless video_license.nil? command.query['videoSyndicated'] = video_syndicated unless video_syndicated.nil? command.query['videoType'] = video_type unless video_type.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Lists sponsors for a channel. # @param [String] part # The part parameter specifies the sponsor resource parts that the API response # will include. Supported values are id and snippet. # @param [String] filter # The filter parameter specifies which channel sponsors to return. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::SponsorListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::SponsorListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_sponsors(part, filter: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'sponsors', options) command.response_representation = Google::Apis::YoutubeV3::SponsorListResponse::Representation command.response_class = Google::Apis::YoutubeV3::SponsorListResponse command.query['filter'] = filter unless filter.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a subscription. # @param [String] id # The id parameter specifies the YouTube subscription ID for the resource that # is being deleted. In a subscription resource, the id property specifies the # YouTube subscription ID. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_subscription(id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'subscriptions', options) command.query['id'] = id unless id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Adds a subscription for the authenticated user's channel. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # @param [Google::Apis::YoutubeV3::Subscription] subscription_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Subscription] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Subscription] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_subscription(part, subscription_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'subscriptions', options) command.request_representation = Google::Apis::YoutubeV3::Subscription::Representation command.request_object = subscription_object command.response_representation = Google::Apis::YoutubeV3::Subscription::Representation command.response_class = Google::Apis::YoutubeV3::Subscription command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns subscription resources that match the API request criteria. # @param [String] part # The part parameter specifies a comma-separated list of one or more # subscription resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a # subscription resource, the snippet property contains other properties, such as # a display title for the subscription. If you set part=snippet, the API # response will also contain all of those nested properties. # @param [String] channel_id # The channelId parameter specifies a YouTube channel ID. The API will only # return that channel's subscriptions. # @param [String] for_channel_id # The forChannelId parameter specifies a comma-separated list of channel IDs. # The API response will then only contain subscriptions matching those channels. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube subscription # ID(s) for the resource(s) that are being retrieved. In a subscription resource, # the id property specifies the YouTube subscription ID. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [Boolean] mine # Set this parameter's value to true to retrieve a feed of the authenticated # user's subscriptions. # @param [Boolean] my_recent_subscribers # Set this parameter's value to true to retrieve a feed of the subscribers of # the authenticated user in reverse chronological order (newest first). # @param [Boolean] my_subscribers # Set this parameter's value to true to retrieve a feed of the subscribers of # the authenticated user in no particular order. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [String] order # The order parameter specifies the method that will be used to sort resources # in the API response. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::SubscriptionListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::SubscriptionListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_subscriptions(part, channel_id: nil, for_channel_id: nil, id: nil, max_results: nil, mine: nil, my_recent_subscribers: nil, my_subscribers: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, order: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'subscriptions', options) command.response_representation = Google::Apis::YoutubeV3::SubscriptionListResponse::Representation command.response_class = Google::Apis::YoutubeV3::SubscriptionListResponse command.query['channelId'] = channel_id unless channel_id.nil? command.query['forChannelId'] = for_channel_id unless for_channel_id.nil? command.query['id'] = id unless id.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['mine'] = mine unless mine.nil? command.query['myRecentSubscribers'] = my_recent_subscribers unless my_recent_subscribers.nil? command.query['mySubscribers'] = my_subscribers unless my_subscribers.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['order'] = order unless order.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Lists Super Chat events for a channel. # @param [String] part # The part parameter specifies the superChatEvent resource parts that the API # response will include. Supported values are id and snippet. # @param [String] hl # The hl parameter instructs the API to retrieve localized resource metadata for # a specific application language that the YouTube website supports. The # parameter value must be a language code included in the list returned by the # i18nLanguages.list method. # If localized resource details are available in that language, the resource's # snippet.localized object will contain the localized values. However, if # localized details are not available, the snippet.localized object will contain # resource details in the resource's default language. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::SuperChatEventListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::SuperChatEventListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_super_chat_events(part, hl: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'superChatEvents', options) command.response_representation = Google::Apis::YoutubeV3::SuperChatEventListResponse::Representation command.response_class = Google::Apis::YoutubeV3::SuperChatEventListResponse command.query['hl'] = hl unless hl.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Uploads a custom video thumbnail to YouTube and sets it for a video. # @param [String] video_id # The videoId parameter specifies a YouTube video ID for which the custom video # thumbnail is being provided. # @param [String] on_behalf_of_content_owner # 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. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::ThumbnailSetResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::ThumbnailSetResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def set_thumbnail(video_id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:post, 'thumbnails/set', options) else command = make_upload_command(:post, 'thumbnails/set', options) command.upload_source = upload_source command.upload_content_type = content_type end command.response_representation = Google::Apis::YoutubeV3::ThumbnailSetResponse::Representation command.response_class = Google::Apis::YoutubeV3::ThumbnailSetResponse command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['videoId'] = video_id unless video_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of abuse reasons that can be used for reporting abusive videos. # @param [String] part # The part parameter specifies the videoCategory resource parts that the API # response will include. Supported values are id and snippet. # @param [String] hl # The hl parameter specifies the language that should be used for text values in # the API response. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::VideoAbuseReportReasonListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::VideoAbuseReportReasonListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_video_abuse_report_reasons(part, hl: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'videoAbuseReportReasons', options) command.response_representation = Google::Apis::YoutubeV3::VideoAbuseReportReasonListResponse::Representation command.response_class = Google::Apis::YoutubeV3::VideoAbuseReportReasonListResponse command.query['hl'] = hl unless hl.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of categories that can be associated with YouTube videos. # @param [String] part # The part parameter specifies the videoCategory resource properties that the # API response will include. Set the parameter value to snippet. # @param [String] hl # The hl parameter specifies the language that should be used for text values in # the API response. # @param [String] id # The id parameter specifies a comma-separated list of video category IDs for # the resources that you are retrieving. # @param [String] region_code # The regionCode parameter instructs the API to return the list of video # categories available in the specified country. The parameter value is an ISO # 3166-1 alpha-2 country code. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::VideoCategoryListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::VideoCategoryListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_video_categories(part, hl: nil, id: nil, region_code: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'videoCategories', options) command.response_representation = Google::Apis::YoutubeV3::VideoCategoryListResponse::Representation command.response_class = Google::Apis::YoutubeV3::VideoCategoryListResponse command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['part'] = part unless part.nil? command.query['regionCode'] = region_code unless region_code.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a YouTube video. # @param [String] id # The id parameter specifies the YouTube video ID for the resource that is being # deleted. In a video resource, the id property specifies the video's ID. # @param [String] on_behalf_of_content_owner # 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. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def delete_video(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, 'videos', options) command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Retrieves the ratings that the authorized user gave to a list of specified # videos. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube video ID(s) # for the resource(s) for which you are retrieving rating data. In a video # resource, the id property specifies the video's ID. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::VideoGetRatingResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::VideoGetRatingResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def get_video_rating(id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'videos/getRating', options) command.response_representation = Google::Apis::YoutubeV3::VideoGetRatingResponse::Representation command.response_class = Google::Apis::YoutubeV3::VideoGetRatingResponse command.query['id'] = id unless id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Uploads a video to YouTube and optionally sets the video's metadata. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # Note that not all parts contain properties that can be set when inserting or # updating a video. For example, the statistics object encapsulates statistics # that YouTube calculates for a video and does not contain values that you can # set or modify. If the parameter value specifies a part that does not contain # mutable values, that part will still be included in the API response. # @param [Google::Apis::YoutubeV3::Video] video_object # @param [Boolean] auto_levels # The autoLevels parameter indicates whether YouTube should automatically # enhance the video's lighting and color. # @param [Boolean] notify_subscribers # The notifySubscribers parameter indicates whether YouTube should send a # notification about the new video to users who subscribe to the video's channel. # A parameter value of True indicates that subscribers will be notified of # newly uploaded videos. However, a channel owner who is uploading many videos # might prefer to set the value to False to avoid sending a notification about # each new video to the channel's subscribers. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] on_behalf_of_content_owner_channel # This parameter can only be used in a properly authorized request. Note: This # parameter is intended exclusively for YouTube content partners. # The onBehalfOfContentOwnerChannel parameter specifies the YouTube channel ID # of the channel to which a video is being added. This parameter is required # when a request specifies a value for the onBehalfOfContentOwner parameter, and # it can only be used in conjunction with that parameter. In addition, the # request must be authorized using a CMS account that is linked to the content # owner that the onBehalfOfContentOwner parameter specifies. Finally, the # channel that the onBehalfOfContentOwnerChannel parameter value specifies must # be linked to the content owner that the onBehalfOfContentOwner parameter # specifies. # This parameter is intended for YouTube content partners that own and manage # many different YouTube channels. It allows content owners to authenticate once # and perform actions on behalf of the channel specified in the parameter value, # without having to provide authentication credentials for each separate channel. # @param [Boolean] stabilize # The stabilize parameter indicates whether YouTube should adjust the video to # remove shaky camera motions. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Video] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Video] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def insert_video(part, video_object = nil, auto_levels: nil, notify_subscribers: nil, on_behalf_of_content_owner: nil, on_behalf_of_content_owner_channel: nil, stabilize: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:post, 'videos', options) else command = make_upload_command(:post, 'videos', options) command.upload_source = upload_source command.upload_content_type = content_type end command.request_representation = Google::Apis::YoutubeV3::Video::Representation command.request_object = video_object command.response_representation = Google::Apis::YoutubeV3::Video::Representation command.response_class = Google::Apis::YoutubeV3::Video command.query['autoLevels'] = auto_levels unless auto_levels.nil? command.query['notifySubscribers'] = notify_subscribers unless notify_subscribers.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['onBehalfOfContentOwnerChannel'] = on_behalf_of_content_owner_channel unless on_behalf_of_content_owner_channel.nil? command.query['part'] = part unless part.nil? command.query['stabilize'] = stabilize unless stabilize.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Returns a list of videos that match the API request parameters. # @param [String] part # The part parameter specifies a comma-separated list of one or more video # resource properties that the API response will include. # If the parameter identifies a property that contains child properties, the # child properties will be included in the response. For example, in a video # resource, the snippet property contains the channelId, title, description, # tags, and categoryId properties. As such, if you set part=snippet, the API # response will contain all of those properties. # @param [String] chart # The chart parameter identifies the chart that you want to retrieve. # @param [String] hl # The hl parameter instructs the API to retrieve localized resource metadata for # a specific application language that the YouTube website supports. The # parameter value must be a language code included in the list returned by the # i18nLanguages.list method. # If localized resource details are available in that language, the resource's # snippet.localized object will contain the localized values. However, if # localized details are not available, the snippet.localized object will contain # resource details in the resource's default language. # @param [String] id # The id parameter specifies a comma-separated list of the YouTube video ID(s) # for the resource(s) that are being retrieved. In a video resource, the id # property specifies the video's ID. # @param [String] locale # DEPRECATED # @param [Fixnum] max_height # The maxHeight parameter specifies a maximum height of the embedded player. If # maxWidth is provided, maxHeight may not be reached in order to not violate the # width request. # @param [Fixnum] max_results # The maxResults parameter specifies the maximum number of items that should be # returned in the result set. # Note: This parameter is supported for use in conjunction with the myRating and # chart parameters, but it is not supported for use in conjunction with the id # parameter. # @param [Fixnum] max_width # The maxWidth parameter specifies a maximum width of the embedded player. If # maxHeight is provided, maxWidth may not be reached in order to not violate the # height request. # @param [String] my_rating # Set this parameter's value to like or dislike to instruct the API to only # return videos liked or disliked by the authenticated user. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] page_token # The pageToken parameter identifies a specific page in the result set that # should be returned. In an API response, the nextPageToken and prevPageToken # properties identify other pages that could be retrieved. # Note: This parameter is supported for use in conjunction with the myRating and # chart parameters, but it is not supported for use in conjunction with the id # parameter. # @param [String] region_code # The regionCode parameter instructs the API to select a video chart available # in the specified region. This parameter can only be used in conjunction with # the chart parameter. The parameter value is an ISO 3166-1 alpha-2 country code. # @param [String] video_category_id # The videoCategoryId parameter identifies the video category for which the # chart should be retrieved. This parameter can only be used in conjunction with # the chart parameter. By default, charts are not restricted to a particular # category. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::VideoListResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::VideoListResponse] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def list_videos(part, chart: nil, hl: nil, id: nil, locale: nil, max_height: nil, max_results: nil, max_width: nil, my_rating: nil, on_behalf_of_content_owner: nil, page_token: nil, region_code: nil, video_category_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, 'videos', options) command.response_representation = Google::Apis::YoutubeV3::VideoListResponse::Representation command.response_class = Google::Apis::YoutubeV3::VideoListResponse command.query['chart'] = chart unless chart.nil? command.query['hl'] = hl unless hl.nil? command.query['id'] = id unless id.nil? command.query['locale'] = locale unless locale.nil? command.query['maxHeight'] = max_height unless max_height.nil? command.query['maxResults'] = max_results unless max_results.nil? command.query['maxWidth'] = max_width unless max_width.nil? command.query['myRating'] = my_rating unless my_rating.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['pageToken'] = page_token unless page_token.nil? command.query['part'] = part unless part.nil? command.query['regionCode'] = region_code unless region_code.nil? command.query['videoCategoryId'] = video_category_id unless video_category_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Add a like or dislike rating to a video or remove a rating from a video. # @param [String] id # The id parameter specifies the YouTube video ID of the video that is being # rated or having its rating removed. # @param [String] rating # Specifies the rating to record. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def rate_video(id, rating, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'videos/rate', options) command.query['id'] = id unless id.nil? command.query['rating'] = rating unless rating.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Report abuse for a video. # @param [Google::Apis::YoutubeV3::VideoAbuseReport] video_abuse_report_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def report_video_abuse(video_abuse_report_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'videos/reportAbuse', options) command.request_representation = Google::Apis::YoutubeV3::VideoAbuseReport::Representation command.request_object = video_abuse_report_object command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Updates a video's metadata. # @param [String] part # The part parameter serves two purposes in this operation. It identifies the # properties that the write operation will set as well as the properties that # the API response will include. # Note that this method will override the existing values for all of the mutable # properties that are contained in any parts that the parameter value specifies. # For example, a video's privacy setting is contained in the status part. As # such, if your request is updating a private video, and the request's part # parameter value includes the status part, the video's privacy setting will be # updated to whatever value the request body specifies. If the request body does # not specify a value, the existing privacy setting will be removed and the # video will revert to the default privacy setting. # In addition, not all parts contain properties that can be set when inserting # or updating a video. For example, the statistics object encapsulates # statistics that YouTube calculates for a video and does not contain values # that you can set or modify. If the parameter value specifies a part that does # not contain mutable values, that part will still be included in the API # response. # @param [Google::Apis::YoutubeV3::Video] video_object # @param [String] on_behalf_of_content_owner # 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. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [Google::Apis::YoutubeV3::Video] parsed result object # @yieldparam err [StandardError] error object if request failed # # @return [Google::Apis::YoutubeV3::Video] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def update_video(part, video_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:put, 'videos', options) command.request_representation = Google::Apis::YoutubeV3::Video::Representation command.request_object = video_object command.response_representation = Google::Apis::YoutubeV3::Video::Representation command.response_class = Google::Apis::YoutubeV3::Video command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['part'] = part unless part.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Uploads a watermark image to YouTube and sets it for a channel. # @param [String] channel_id # The channelId parameter specifies the YouTube channel ID for which the # watermark is being provided. # @param [Google::Apis::YoutubeV3::InvideoBranding] invideo_branding_object # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [IO, String] upload_source # IO stream or filename containing content to upload # @param [String] content_type # Content type of the uploaded content. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def set_watermark(channel_id, invideo_branding_object = nil, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, upload_source: nil, content_type: nil, options: nil, &block) if upload_source.nil? command = make_simple_command(:post, 'watermarks/set', options) else command = make_upload_command(:post, 'watermarks/set', options) command.upload_source = upload_source command.upload_content_type = content_type end command.request_representation = Google::Apis::YoutubeV3::InvideoBranding::Representation command.request_object = invideo_branding_object command.query['channelId'] = channel_id unless channel_id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end # Deletes a channel's watermark image. # @param [String] channel_id # The channelId parameter specifies the YouTube channel ID for which the # watermark is being unset. # @param [String] on_behalf_of_content_owner # 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 CMS account that the user # authenticates with must be linked to the specified YouTube content owner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any # arbitrary string assigned to a user, but should not exceed 40 characters. # Overrides userIp if both are provided. # @param [String] user_ip # IP address of the site where the request originates. Use this if you want to # enforce per-user limits. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied # @yieldparam result [NilClass] No result returned for this method # @yieldparam err [StandardError] error object if request failed # # @return [void] # # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required def unset_watermark(channel_id, on_behalf_of_content_owner: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, 'watermarks/unset', options) command.query['channelId'] = channel_id unless channel_id.nil? command.query['onBehalfOfContentOwner'] = on_behalf_of_content_owner unless on_behalf_of_content_owner.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? execute_or_queue_command(command, &block) end protected def apply_command_defaults(command) command.query['key'] = key unless key.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? end end end end end