UNPKG

googleapis

Version:
1,659 lines 322 kB
/** * Copyright 2015 Google Inc. All Rights Reserved. * * 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. */ import { AxiosPromise } from 'axios'; import { GoogleApis } from '../..'; import { BodyResponseCallback, GlobalOptions, MethodOptions } from '../../lib/api'; /** * YouTube Data API * * Supports core YouTube features, such as uploading videos, creating and * managing playlists, searching for content, and much more. * * @example * const google = require('googleapis'); * const youtube = google.youtube('v3'); * * @namespace youtube * @type {Function} * @version v3 * @variation v3 * @param {object=} options Options for Youtube */ export declare class Youtube { _options: GlobalOptions; google: GoogleApis; root: this; activities: Resource$Activities; captions: Resource$Captions; channelBanners: Resource$Channelbanners; channels: Resource$Channels; channelSections: Resource$Channelsections; comments: Resource$Comments; commentThreads: Resource$Commentthreads; fanFundingEvents: Resource$Fanfundingevents; guideCategories: Resource$Guidecategories; i18nLanguages: Resource$I18nlanguages; i18nRegions: Resource$I18nregions; liveBroadcasts: Resource$Livebroadcasts; liveChatBans: Resource$Livechatbans; liveChatMessages: Resource$Livechatmessages; liveChatModerators: Resource$Livechatmoderators; liveStreams: Resource$Livestreams; playlistItems: Resource$Playlistitems; playlists: Resource$Playlists; search: Resource$Search; sponsors: Resource$Sponsors; subscriptions: Resource$Subscriptions; superChatEvents: Resource$Superchatevents; thumbnails: Resource$Thumbnails; videoAbuseReportReasons: Resource$Videoabusereportreasons; videoCategories: Resource$Videocategories; videos: Resource$Videos; watermarks: Resource$Watermarks; constructor(options: GlobalOptions, google: GoogleApis); getRoot(): this; } /** * Rights management policy for YouTube resources. */ export interface Schema$AccessPolicy { /** * The value of allowed indicates whether the access to the policy is allowed * or denied by default. */ allowed: boolean; /** * A list of region codes that identify countries where the default policy do * not apply. */ exception: string[]; } /** * An activity resource contains information about an action that a particular * channel, or user, has taken on YouTube.The actions reported in activity feeds * include rating a video, sharing a video, marking a video as a favorite, * commenting on a video, uploading a video, and so forth. Each activity * resource identifies the type of action, the channel associated with the * action, and the resource(s) associated with the action, such as the video * that was rated or uploaded. */ export interface Schema$Activity { /** * The contentDetails object contains information about the content associated * with the activity. For example, if the snippet.type value is videoRated, * then the contentDetails object's content identifies the rated video. */ contentDetails: Schema$ActivityContentDetails; /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the activity. */ id: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#activity". */ kind: string; /** * The snippet object contains basic details about the activity, including the * activity's type and group ID. */ snippet: Schema$ActivitySnippet; } /** * Details about the content of an activity: the video that was shared, the * channel that was subscribed to, etc. */ export interface Schema$ActivityContentDetails { /** * The bulletin object contains details about a channel bulletin post. This * object is only present if the snippet.type is bulletin. */ bulletin: Schema$ActivityContentDetailsBulletin; /** * The channelItem object contains details about a resource which was added to * a channel. This property is only present if the snippet.type is * channelItem. */ channelItem: Schema$ActivityContentDetailsChannelItem; /** * The comment object contains information about a resource that received a * comment. This property is only present if the snippet.type is comment. */ comment: Schema$ActivityContentDetailsComment; /** * The favorite object contains information about a video that was marked as a * favorite video. This property is only present if the snippet.type is * favorite. */ favorite: Schema$ActivityContentDetailsFavorite; /** * The like object contains information about a resource that received a * positive (like) rating. This property is only present if the snippet.type * is like. */ like: Schema$ActivityContentDetailsLike; /** * The playlistItem object contains information about a new playlist item. * This property is only present if the snippet.type is playlistItem. */ playlistItem: Schema$ActivityContentDetailsPlaylistItem; /** * The promotedItem object contains details about a resource which is being * promoted. This property is only present if the snippet.type is * promotedItem. */ promotedItem: Schema$ActivityContentDetailsPromotedItem; /** * The recommendation object contains information about a recommended * resource. This property is only present if the snippet.type is * recommendation. */ recommendation: Schema$ActivityContentDetailsRecommendation; /** * The social object contains details about a social network post. This * property is only present if the snippet.type is social. */ social: Schema$ActivityContentDetailsSocial; /** * The subscription object contains information about a channel that a user * subscribed to. This property is only present if the snippet.type is * subscription. */ subscription: Schema$ActivityContentDetailsSubscription; /** * The upload object contains information about the uploaded video. This * property is only present if the snippet.type is upload. */ upload: Schema$ActivityContentDetailsUpload; } /** * Details about a channel bulletin post. */ export interface Schema$ActivityContentDetailsBulletin { /** * The resourceId object contains information that identifies the resource * associated with a bulletin post. */ resourceId: Schema$ResourceId; } /** * Details about a resource which was added to a channel. */ export interface Schema$ActivityContentDetailsChannelItem { /** * The resourceId object contains information that identifies the resource * that was added to the channel. */ resourceId: Schema$ResourceId; } /** * Information about a resource that received a comment. */ export interface Schema$ActivityContentDetailsComment { /** * The resourceId object contains information that identifies the resource * associated with the comment. */ resourceId: Schema$ResourceId; } /** * Information about a video that was marked as a favorite video. */ export interface Schema$ActivityContentDetailsFavorite { /** * The resourceId object contains information that identifies the resource * that was marked as a favorite. */ resourceId: Schema$ResourceId; } /** * Information about a resource that received a positive (like) rating. */ export interface Schema$ActivityContentDetailsLike { /** * The resourceId object contains information that identifies the rated * resource. */ resourceId: Schema$ResourceId; } /** * Information about a new playlist item. */ export interface Schema$ActivityContentDetailsPlaylistItem { /** * The value that YouTube uses to uniquely identify the playlist. */ playlistId: string; /** * ID of the item within the playlist. */ playlistItemId: string; /** * The resourceId object contains information about the resource that was * added to the playlist. */ resourceId: Schema$ResourceId; } /** * Details about a resource which is being promoted. */ export interface Schema$ActivityContentDetailsPromotedItem { /** * The URL the client should fetch to request a promoted item. */ adTag: string; /** * The URL the client should ping to indicate that the user clicked through on * this promoted item. */ clickTrackingUrl: string; /** * The URL the client should ping to indicate that the user was shown this * promoted item. */ creativeViewUrl: string; /** * The type of call-to-action, a message to the user indicating action that * can be taken. */ ctaType: string; /** * The custom call-to-action button text. If specified, it will override the * default button text for the cta_type. */ customCtaButtonText: string; /** * The text description to accompany the promoted item. */ descriptionText: string; /** * The URL the client should direct the user to, if the user chooses to visit * the advertiser's website. */ destinationUrl: string; /** * The list of forecasting URLs. The client should ping all of these URLs when * a promoted item is not available, to indicate that a promoted item could * have been shown. */ forecastingUrl: string[]; /** * The list of impression URLs. The client should ping all of these URLs to * indicate that the user was shown this promoted item. */ impressionUrl: string[]; /** * The ID that YouTube uses to uniquely identify the promoted video. */ videoId: string; } /** * Information that identifies the recommended resource. */ export interface Schema$ActivityContentDetailsRecommendation { /** * The reason that the resource is recommended to the user. */ reason: string; /** * The resourceId object contains information that identifies the recommended * resource. */ resourceId: Schema$ResourceId; /** * The seedResourceId object contains information about the resource that * caused the recommendation. */ seedResourceId: Schema$ResourceId; } /** * Details about a social network post. */ export interface Schema$ActivityContentDetailsSocial { /** * The author of the social network post. */ author: string; /** * An image of the post's author. */ imageUrl: string; /** * The URL of the social network post. */ referenceUrl: string; /** * The resourceId object encapsulates information that identifies the resource * associated with a social network post. */ resourceId: Schema$ResourceId; /** * The name of the social network. */ type: string; } /** * Information about a channel that a user subscribed to. */ export interface Schema$ActivityContentDetailsSubscription { /** * The resourceId object contains information that identifies the resource * that the user subscribed to. */ resourceId: Schema$ResourceId; } /** * Information about the uploaded video. */ export interface Schema$ActivityContentDetailsUpload { /** * The ID that YouTube uses to uniquely identify the uploaded video. */ videoId: string; } export interface Schema$ActivityListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of activities, or events, that match the request criteria. */ items: Schema$Activity[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#activityListResponse". */ kind: string; /** * The token that can be used as the value of the pageToken parameter to * retrieve the next page in the result set. */ nextPageToken: string; pageInfo: Schema$PageInfo; /** * The token that can be used as the value of the pageToken parameter to * retrieve the previous page in the result set. */ prevPageToken: string; tokenPagination: Schema$TokenPagination; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * Basic details about an activity, including title, description, thumbnails, * activity type and group. */ export interface Schema$ActivitySnippet { /** * The ID that YouTube uses to uniquely identify the channel associated with * the activity. */ channelId: string; /** * Channel title for the channel responsible for this activity */ channelTitle: string; /** * The description of the resource primarily associated with the activity. */ description: string; /** * The group ID associated with the activity. A group ID identifies user * events that are associated with the same user and resource. For example, if * a user rates a video and marks the same video as a favorite, the entries * for those events would have the same group ID in the user's activity * feed. In your user interface, you can avoid repetition by grouping events * with the same groupId value. */ groupId: string; /** * The date and time that the video was uploaded. The value is specified in * ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ publishedAt: string; /** * A map of thumbnail images associated with the resource that is primarily * associated with the activity. For each object in the map, the key is the * name of the thumbnail image, and the value is an object that contains other * information about the thumbnail. */ thumbnails: Schema$ThumbnailDetails; /** * The title of the resource primarily associated with the activity. */ title: string; /** * The type of activity that the resource describes. */ type: string; } /** * A caption resource represents a YouTube caption track. A caption track is * associated with exactly one YouTube video. */ export interface Schema$Caption { /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the caption track. */ id: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#caption". */ kind: string; /** * The snippet object contains basic details about the caption. */ snippet: Schema$CaptionSnippet; } export interface Schema$CaptionListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of captions that match the request criteria. */ items: Schema$Caption[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#captionListResponse". */ kind: string; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * Basic details about a caption track, such as its language and name. */ export interface Schema$CaptionSnippet { /** * The type of audio track associated with the caption track. */ audioTrackType: string; /** * The reason that YouTube failed to process the caption track. This property * is only present if the state property's value is failed. */ failureReason: string; /** * Indicates whether YouTube synchronized the caption track to the audio track * in the video. The value will be true if a sync was explicitly requested * when the caption track was uploaded. For example, when calling the * captions.insert or captions.update methods, you can set the sync parameter * to true to instruct YouTube to sync the uploaded track to the video. If the * value is false, YouTube uses the time codes in the uploaded caption track * to determine when to display captions. */ isAutoSynced: boolean; /** * Indicates whether the track contains closed captions for the deaf and hard * of hearing. The default value is false. */ isCC: boolean; /** * Indicates whether the caption track is a draft. If the value is true, then * the track is not publicly visible. The default value is false. */ isDraft: boolean; /** * Indicates whether caption track is formatted for "easy reader," * meaning it is at a third-grade level for language learners. The default * value is false. */ isEasyReader: boolean; /** * Indicates whether the caption track uses large text for the * vision-impaired. The default value is false. */ isLarge: boolean; /** * The language of the caption track. The property value is a BCP-47 language * tag. */ language: string; /** * The date and time when the caption track was last updated. The value is * specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ lastUpdated: string; /** * The name of the caption track. The name is intended to be visible to the * user as an option during playback. */ name: string; /** * The caption track's status. */ status: string; /** * The caption track's type. */ trackKind: string; /** * The ID that YouTube uses to uniquely identify the video associated with the * caption track. */ videoId: string; } /** * Brief description of the live stream cdn settings. */ export interface Schema$CdnSettings { /** * The format of the video stream that you are sending to Youtube. */ format: string; /** * The frame rate of the inbound video data. */ frameRate: string; /** * The ingestionInfo object contains information that YouTube provides that * you need to transmit your RTMP or HTTP stream to YouTube. */ ingestionInfo: Schema$IngestionInfo; /** * The method or protocol used to transmit the video stream. */ ingestionType: string; /** * The resolution of the inbound video data. */ resolution: string; } /** * A channel resource contains information about a YouTube channel. */ export interface Schema$Channel { /** * The auditionDetails object encapsulates channel data that is relevant for * YouTube Partners during the audition process. */ auditDetails: Schema$ChannelAuditDetails; /** * The brandingSettings object encapsulates information about the branding of * the channel. */ brandingSettings: Schema$ChannelBrandingSettings; /** * The contentDetails object encapsulates information about the channel's * content. */ contentDetails: Schema$ChannelContentDetails; /** * The contentOwnerDetails object encapsulates channel data that is relevant * for YouTube Partners linked with the channel. */ contentOwnerDetails: Schema$ChannelContentOwnerDetails; /** * The conversionPings object encapsulates information about conversion pings * that need to be respected by the channel. */ conversionPings: Schema$ChannelConversionPings; /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the channel. */ id: string; /** * The invideoPromotion object encapsulates information about promotion * campaign associated with the channel. */ invideoPromotion: Schema$InvideoPromotion; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#channel". */ kind: string; /** * Localizations for different languages */ localizations: any; /** * The snippet object contains basic details about the channel, such as its * title, description, and thumbnail images. */ snippet: Schema$ChannelSnippet; /** * The statistics object encapsulates statistics for the channel. */ statistics: Schema$ChannelStatistics; /** * The status object encapsulates information about the privacy status of the * channel. */ status: Schema$ChannelStatus; /** * The topicDetails object encapsulates information about Freebase topics * associated with the channel. */ topicDetails: Schema$ChannelTopicDetails; } /** * The auditDetails object encapsulates channel data that is relevant for * YouTube Partners during the audit process. */ export interface Schema$ChannelAuditDetails { /** * Whether or not the channel respects the community guidelines. */ communityGuidelinesGoodStanding: boolean; /** * Whether or not the channel has any unresolved claims. */ contentIdClaimsGoodStanding: boolean; /** * Whether or not the channel has any copyright strikes. */ copyrightStrikesGoodStanding: boolean; /** * Describes the general state of the channel. This field will always show if * there are any issues whatsoever with the channel. Currently this field * represents the result of the logical and operation over the community * guidelines good standing, the copyright strikes good standing and the * content ID claims good standing, but this may change in the future. */ overallGoodStanding: boolean; } /** * A channel banner returned as the response to a channel_banner.insert call. */ export interface Schema$ChannelBannerResource { /** * Etag of this resource. */ etag: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#channelBannerResource". */ kind: string; /** * The URL of this banner image. */ url: string; } /** * Branding properties of a YouTube channel. */ export interface Schema$ChannelBrandingSettings { /** * Branding properties for the channel view. */ channel: Schema$ChannelSettings; /** * Additional experimental branding properties. */ hints: Schema$PropertyValue[]; /** * Branding properties for branding images. */ image: Schema$ImageSettings; /** * Branding properties for the watch page. */ watch: Schema$WatchSettings; } /** * Details about the content of a channel. */ export interface Schema$ChannelContentDetails { relatedPlaylists: any; } /** * The contentOwnerDetails object encapsulates channel data that is relevant for * YouTube Partners linked with the channel. */ export interface Schema$ChannelContentOwnerDetails { /** * The ID of the content owner linked to the channel. */ contentOwner: string; /** * The date and time of when the channel was linked to the content owner. The * value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ timeLinked: string; } /** * Pings that the app shall fire (authenticated by biscotti cookie). Each ping * has a context, in which the app must fire the ping, and a url identifying the * ping. */ export interface Schema$ChannelConversionPing { /** * Defines the context of the ping. */ context: string; /** * The url (without the schema) that the player shall send the ping to. * It's at caller's descretion to decide which schema to use (http vs * https) Example of a returned url: //googleads.g.doubleclick.net/pagead/ * viewthroughconversion/962985656/?data=path%3DtHe_path%3Btype%3D * cview%3Butuid%3DGISQtTNGYqaYl4sKxoVvKA&labe=default The caller must * append biscotti authentication (ms param in case of mobile, for example) to * this ping. */ conversionUrl: string; } /** * The conversionPings object encapsulates information about conversion pings * that need to be respected by the channel. */ export interface Schema$ChannelConversionPings { /** * Pings that the app shall fire (authenticated by biscotti cookie). Each ping * has a context, in which the app must fire the ping, and a url identifying * the ping. */ pings: Schema$ChannelConversionPing[]; } export interface Schema$ChannelListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of channels that match the request criteria. */ items: Schema$Channel[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#channelListResponse". */ kind: string; /** * The token that can be used as the value of the pageToken parameter to * retrieve the next page in the result set. */ nextPageToken: string; pageInfo: Schema$PageInfo; /** * The token that can be used as the value of the pageToken parameter to * retrieve the previous page in the result set. */ prevPageToken: string; tokenPagination: Schema$TokenPagination; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * Channel localization setting */ export interface Schema$ChannelLocalization { /** * The localized strings for channel's description. */ description: string; /** * The localized strings for channel's title. */ title: string; } export interface Schema$ChannelProfileDetails { /** * The YouTube channel ID. */ channelId: string; /** * The channel's URL. */ channelUrl: string; /** * The channel's display name. */ displayName: string; /** * The channels's avatar URL. */ profileImageUrl: string; } export interface Schema$ChannelSection { /** * The contentDetails object contains details about the channel section * content, such as a list of playlists or channels featured in the section. */ contentDetails: Schema$ChannelSectionContentDetails; /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the channel section. */ id: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#channelSection". */ kind: string; /** * Localizations for different languages */ localizations: any; /** * The snippet object contains basic details about the channel section, such * as its type, style and title. */ snippet: Schema$ChannelSectionSnippet; /** * The targeting object contains basic targeting settings about the channel * section. */ targeting: Schema$ChannelSectionTargeting; } /** * Details about a channelsection, including playlists and channels. */ export interface Schema$ChannelSectionContentDetails { /** * The channel ids for type multiple_channels. */ channels: string[]; /** * The playlist ids for type single_playlist and multiple_playlists. For * singlePlaylist, only one playlistId is allowed. */ playlists: string[]; } export interface Schema$ChannelSectionListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of ChannelSections that match the request criteria. */ items: Schema$ChannelSection[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#channelSectionListResponse". */ kind: string; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * ChannelSection localization setting */ export interface Schema$ChannelSectionLocalization { /** * The localized strings for channel section's title. */ title: string; } /** * Basic details about a channel section, including title, style and position. */ export interface Schema$ChannelSectionSnippet { /** * The ID that YouTube uses to uniquely identify the channel that published * the channel section. */ channelId: string; /** * The language of the channel section's default title and description. */ defaultLanguage: string; /** * Localized title, read-only. */ localized: Schema$ChannelSectionLocalization; /** * The position of the channel section in the channel. */ position: number; /** * The style of the channel section. */ style: string; /** * The channel section's title for multiple_playlists and * multiple_channels. */ title: string; /** * The type of the channel section. */ type: string; } /** * ChannelSection targeting setting. */ export interface Schema$ChannelSectionTargeting { /** * The country the channel section is targeting. */ countries: string[]; /** * The language the channel section is targeting. */ languages: string[]; /** * The region the channel section is targeting. */ regions: string[]; } /** * Branding properties for the channel view. */ export interface Schema$ChannelSettings { /** * The country of the channel. */ country: string; defaultLanguage: string; /** * Which content tab users should see when viewing the channel. */ defaultTab: string; /** * Specifies the channel description. */ description: string; /** * Title for the featured channels tab. */ featuredChannelsTitle: string; /** * The list of featured channels. */ featuredChannelsUrls: string[]; /** * Lists keywords associated with the channel, comma-separated. */ keywords: string; /** * Whether user-submitted comments left on the channel page need to be * approved by the channel owner to be publicly visible. */ moderateComments: boolean; /** * A prominent color that can be rendered on this channel page. */ profileColor: string; /** * Whether the tab to browse the videos should be displayed. */ showBrowseView: boolean; /** * Whether related channels should be proposed. */ showRelatedChannels: boolean; /** * Specifies the channel title. */ title: string; /** * The ID for a Google Analytics account to track and measure traffic to the * channels. */ trackingAnalyticsAccountId: string; /** * The trailer of the channel, for users that are not subscribers. */ unsubscribedTrailer: string; } /** * Basic details about a channel, including title, description and thumbnails. */ export interface Schema$ChannelSnippet { /** * The country of the channel. */ country: string; /** * The custom url of the channel. */ customUrl: string; /** * The language of the channel's default title and description. */ defaultLanguage: string; /** * The description of the channel. */ description: string; /** * Localized title and description, read-only. */ localized: Schema$ChannelLocalization; /** * The date and time that the channel was created. The value is specified in * ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ publishedAt: string; /** * A map of thumbnail images associated with the channel. For each object in * the map, the key is the name of the thumbnail image, and the value is an * object that contains other information about the thumbnail. */ thumbnails: Schema$ThumbnailDetails; /** * The channel's title. */ title: string; } /** * Statistics about a channel: number of subscribers, number of videos in the * channel, etc. */ export interface Schema$ChannelStatistics { /** * The number of comments for the channel. */ commentCount: string; /** * Whether or not the number of subscribers is shown for this user. */ hiddenSubscriberCount: boolean; /** * The number of subscribers that the channel has. */ subscriberCount: string; /** * The number of videos uploaded to the channel. */ videoCount: string; /** * The number of times the channel has been viewed. */ viewCount: string; } /** * JSON template for the status part of a channel. */ export interface Schema$ChannelStatus { /** * If true, then the user is linked to either a YouTube username or G+ * account. Otherwise, the user doesn't have a public YouTube identity. */ isLinked: boolean; /** * The long uploads status of this channel. See */ longUploadsStatus: string; /** * Privacy status of the channel. */ privacyStatus: string; } /** * Freebase topic information related to the channel. */ export interface Schema$ChannelTopicDetails { /** * A list of Wikipedia URLs that describe the channel's content. */ topicCategories: string[]; /** * A list of Freebase topic IDs associated with the channel. You can retrieve * information about each topic using the Freebase Topic API. */ topicIds: string[]; } /** * A comment represents a single YouTube comment. */ export interface Schema$Comment { /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the comment. */ id: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#comment". */ kind: string; /** * The snippet object contains basic details about the comment. */ snippet: Schema$CommentSnippet; } export interface Schema$CommentListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of comments that match the request criteria. */ items: Schema$Comment[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#commentListResponse". */ kind: string; /** * The token that can be used as the value of the pageToken parameter to * retrieve the next page in the result set. */ nextPageToken: string; pageInfo: Schema$PageInfo; tokenPagination: Schema$TokenPagination; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * Basic details about a comment, such as its author and text. */ export interface Schema$CommentSnippet { /** * The id of the author's YouTube channel, if any. */ authorChannelId: any; /** * Link to the author's YouTube channel, if any. */ authorChannelUrl: string; /** * The name of the user who posted the comment. */ authorDisplayName: string; /** * The URL for the avatar of the user who posted the comment. */ authorProfileImageUrl: string; /** * Whether the current viewer can rate this comment. */ canRate: boolean; /** * The id of the corresponding YouTube channel. In case of a channel comment * this is the channel the comment refers to. In case of a video comment * it's the video's channel. */ channelId: string; /** * The total number of likes this comment has received. */ likeCount: number; /** * The comment's moderation status. Will not be set if the comments were * requested through the id filter. */ moderationStatus: string; /** * The unique id of the parent comment, only set for replies. */ parentId: string; /** * The date and time when the comment was orignally published. The value is * specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ publishedAt: string; /** * The comment's text. The format is either plain text or HTML dependent * on what has been requested. Even the plain text representation may differ * from the text originally posted in that it may replace video links with * video titles etc. */ textDisplay: string; /** * The comment's original raw text as initially posted or last updated. * The original text will only be returned if it is accessible to the viewer, * which is only guaranteed if the viewer is the comment's author. */ textOriginal: string; /** * The date and time when was last updated . The value is specified in ISO * 8601 (YYYY-MM-DDThh:mm:ss.sZ) format. */ updatedAt: string; /** * The ID of the video the comment refers to, if any. */ videoId: string; /** * The rating the viewer has given to this comment. For the time being this * will never return RATE_TYPE_DISLIKE and instead return RATE_TYPE_NONE. This * may change in the future. */ viewerRating: string; } /** * A comment thread represents information that applies to a top level comment * and all its replies. It can also include the top level comment itself and * some of the replies. */ export interface Schema$CommentThread { /** * Etag of this resource. */ etag: string; /** * The ID that YouTube uses to uniquely identify the comment thread. */ id: string; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#commentThread". */ kind: string; /** * The replies object contains a limited number of replies (if any) to the top * level comment found in the snippet. */ replies: Schema$CommentThreadReplies; /** * The snippet object contains basic details about the comment thread and also * the top level comment. */ snippet: Schema$CommentThreadSnippet; } export interface Schema$CommentThreadListResponse { /** * Etag of this resource. */ etag: string; /** * Serialized EventId of the request which produced this response. */ eventId: string; /** * A list of comment threads that match the request criteria. */ items: Schema$CommentThread[]; /** * Identifies what kind of resource this is. Value: the fixed string * "youtube#commentThreadListResponse". */ kind: string; /** * The token that can be used as the value of the pageToken parameter to * retrieve the next page in the result set. */ nextPageToken: string; pageInfo: Schema$PageInfo; tokenPagination: Schema$TokenPagination; /** * The visitorId identifies the visitor. */ visitorId: string; } /** * Comments written in (direct or indirect) reply to the top level comment. */ export interface Schema$CommentThreadReplies { /** * A limited number of replies. Unless the number of replies returned equals * total_reply_count in the snippet the returned replies are only a subset of * the total number of replies. */ comments: Schema$Comment[]; } /** * Basic details about a comment thread. */ export interface Schema$CommentThreadSnippet { /** * Whether the current viewer of the thread can reply to it. This is viewer * specific - other viewers may see a different value for this field. */ canReply: boolean; /** * The YouTube channel the comments in the thread refer to or the channel with * the video the comments refer to. If video_id isn't set the comments * refer to the channel itself. */ channelId: string; /** * Whether the thread (and therefore all its comments) is visible to all * YouTube users. */ isPublic: boolean; /** * The top level comment of this thread. */ topLevelComment: Schema$Comment; /** * The total number of replies (not including the top level comment). */ totalReplyCount: number; /** * The ID of the video the comments refer to, if any. No video_id implies a * channel discussion comment. */ videoId: string; } /** * Ratings schemes. The country-specific ratings are mostly for movies and * shows. NEXT_ID: 71 */ export interface Schema$ContentRating { /** * The video's Australian Classification Board (ACB) or Australian * Communications and Media Authority (ACMA) rating. ACMA ratings are used to * classify children's television programming. */ acbRating: string; /** * The video's rating from Italy's Autorità per le Garanzie nelle * Comunicazioni (AGCOM). */ agcomRating: string; /** * The video's Anatel (Asociación Nacional de Televisión) rating for * Chilean television. */ anatelRating: string; /** * The video's British Board of Film Classification (BBFC) rating. */ bbfcRating: string; /** * The video's rating from Thailand's Board of Film and Video Censors. */ bfvcRating: string; /** * The video's rating from the Austrian Board of Media Classification * (Bundesministerium für Unterricht, Kunst und Kultur). */ bmukkRating: string; /** * The video's rating from the Canadian Radio-Television and * Telecommunications Commission (CRTC) for Canadian French-language * broadcasts. For more information, see the Canadian Broadcast Standards * Council website. */ catvfrRating: string; /** * Rating system for Canadian TV - Canadian TV Classification System The * video's rating from the Canadian Radio-Television and * Telecommunications Commission (CRTC) for Canadian English-language * broadcasts. For more information, see the Canadian Broadcast Standards * Council website. */ catvRating: string; /** * The video's Central Board of Film Certification (CBFC - India) rating. */ cbfcRating: string; /** * The video's Consejo de Calificación Cinematográfica (Chile) rating. */ cccRating: string; /** * The video's rating from Portugal's Comissão de Classificação de * Espect´culos. */ cceRating: string; /** * The video's rating in Switzerland. */ chfilmRating: string; /** * The video's Canadian Home Video Rating System (CHVRS) rating. */ chvrsRating: string; /** * The video's rating from the Commission de Contrôle des Films (Belgium). */ cicfRating: string; /** * The video's rating from Romania's CONSILIUL NATIONAL AL * AUDIOVIZUALULUI (CNA). */ cnaRating: string; /** * Rating system in France - Commission de classification cinematographique */ cncRating: string; /** * The video's rating from France's Conseil supérieur de * l?audiovisuel, which rates broadcast content. */ csaRating: string; /** * The video's rating from Luxembourg's Commission de surveillance de * la classification des films (CSCF). */ cscfRating: string; /** * The video's rating in the Czech Republic. */ czfilmRating: string; /** * The video's Departamento de Justiça, Classificação, Qualificação e * Títulos (DJCQT - Brazil) rating. */ djctqRating: string; /** * Reasons that explain why the video received its DJCQT (Brazil) rating. */ djctqRatingReasons: string[]; /** * Rating system in Turkey - Evaluation and Classification Board of the * Ministry of Culture and Tourism */ ecbmctRating: string; /** * The video's rating in Estonia. */ eefilmRating: string; /** * The video's rating in Egypt. */ egfilmRating: string; /** * The video's Eirin (映倫) rating. Eirin is the Japanese rating system. */ eirinRating: string; /** * The video's rating from Malaysia's Film Censorship Board. */ fcbmRating: string; /** * The video's rating from Hong Kong's Office for Film, Newspaper and * Article Administration. */ fcoRating: string; /** * This property has been deprecated. Use the * contentDetails.contentRating.cncRating instead. */ fmocRating: string; /** * The video's rating from South Africa's Film and Publication Board. */ fpbRating: string; /** * Reasons that explain why the video received its FPB (South Africa) rating. */ fpbRatingReasons: string[]; /** * The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - * Germany) rating. */ fskRating: string; /** * The video's rating in Greece. */ grfilmRating: string; /** * The video's Instituto de la Cinematografía y de las Artes Audiovisuales * (ICAA - Spain) rating. */ icaaRating: string; /** * The video's Irish Film Classification Office (IFCO - Ireland) rating. * See the IFCO website for more information. */ ifcoRating: string; /** * The video's rating in Israel. */ ilfilmRating: string; /** * The video's INCAA (Instituto Nacional de Cine y Artes Audiovisuales - * Argentina) rating. */ incaaRating: string; /** * The video's rating from the Kenya Film Classification Board. */ kfcbRating: string; /** * voor de Classificatie van Audiovisuele Media (Netherlands). */ kijkwijzerRating: string; /** * The video's Korea Media Rating Board (영상물등급위원회) rating. The * KMRB rates videos in South Korea. */ kmrbRating: string; /** * The video's rating from Indonesia's Lembaga Sensor Film. */ lsfRating: string; /** * The video's rating from Malta's Film Age-Classification Board. */ mccaaRating: string; /** * The video's rating from the Danish Film Institute's (Det Danske * Filminstitut) Media Council for Children and Young People. */ mccypRating: string; /** * The video's rating system for Vietnam - MCST */ mcstRating: string; /** * The video's rating from Singapore's Media Development Authority * (MDA) and, specifically, it's Board of Film Censors (BFC). */ mdaRating: string; /** * The video's rating from Medietilsynet, the Norwegian Media Authority. */ medietilsynetRating: string; /** * The video's rating from Finland's Kansallinen Audiovisuaalinen * Instituutti (National Audiovisual Institute). */ mekuRating: string; /** * The rating system for MENA countries, a clone of MPAA. It is needed to */ menaMpaaRating: string; /** * The video's rating from the Ministero dei Beni e delle Attività * Culturali e del Turismo (Italy). */ mibacRating: string; /** * The video's Ministerio de Cultura (Colombia) rating. */ mocRating: string; /** * The video's rating from Taiwan's Ministry of Culture (文化部). */ moctwRating: string; /** * The video's Motion Picture Association of America (MPAA) rating. */ mpaaRating: string; /** * The rating system for trailer, DVD, and Ad in the US. See * http://movielabs.com/md/ratings/v2.3/html/US_MPAAT_Ratings.html. */ mpaatRating: string; /** * The video's rating from the Movie and Television Review and * Classification Board (Philippines). */ mtrcbRating: string; /** * The video's rating in Poland. */ nbcplRating: string; /** * The video's rating from the Maldives National Bureau of Classification. */ nbcRating: string; /** * The video's rating from the Bulgarian National Film Center. */ nfrcRating: string; /** * The video's rating from Nigeria's National Film and Video Censors * Board. */ nfvcbRating: string; /** * The video's rating from the Nacionãlais Kino centrs (National Film * Centre of Latvia). */ nkclvRating: string; /** * The video's Office of Film and Literature Classification (OFLC - New * Zealand) rating. */ oflcRating: string; /** * The video's rating in Peru. */ pefilmRating: string; /** * The video's rating from the Hungarian Nemzeti Filmiroda, t